Перейти к содержанию

Тестирование советников - тема для программистов


Рекомендуемые сообщения

Тестирование советников - тема для программистов Опубликовано



FFcal работает только на сейчас. Для тестера не подходит.


FFcal работает в тестере с историей, это точно b-)
Раньше тестил несколько сов.
Ему нужны данные за период.
Обычно такие файлы называют "Calendar".
Проблема была лишь в том, где их взять,
т.к. в автоматическом режиме на сайте в нужном формате
не формируются и кто-нибудь их доводил вручную.

У меня завалялся 2007 - 01 Ноября 2013.


Отлично!
Спасибо.
А вот и файлик нашелся по 01,04,2014

Calendar__.rar

  • Лайк 2
Ссылка на сообщение
Поделиться на другие сайты

  • Ответов 274
  • Создано
  • Последний ответ

Популярные авторы

Популярные авторы

Популярные посты

Имхо виноват генетический алгоритм ! Но без него время теста увеличится на порядок... Я тестирую сначала быстро и грубо, но в широком диапазоне с широким шагом, потом смотрю на влияние переменных на

Перейти

Вы хорошие и правильные вопросы задаете, себе и нам. Первое самое Важное оптимизация кода советника, постарайтесь убрать все лишние, графические обьекты, функции комментариев и прочее не относящееся к

Перейти

Rever27 я, например, делаю так: double OnTester() { double ret=0.0; if (TesterStatistics(STAT_EQUITY_DD)>0) ret = TesterStatistics(STAT_PROFIT) / TesterStatistics(STAT_EQUITY_DD); else

Перейти
Тестирование советников - тема для программистов Опубликовано




FFcal работает только на сейчас. Для тестера не подходит.


FFcal работает в тестере с историей, это точно b-)
Раньше тестил несколько сов.
Ему нужны данные за период.
Обычно такие файлы называют "Calendar".
Проблема была лишь в том, где их взять,
т.к. в автоматическом режиме на сайте в нужном формате
не формируются и кто-нибудь их доводил вручную.

У меня завалялся 2007 - 01 Ноября 2013.


Отлично!
Спасибо.
А вот и файлик нашелся по 01,04,2014


Подскажите, пожалуйста, а куда этот файл или его содержание вставить, чтобы индикатор заработал в тестере?
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано


Подскажите, пожалуйста, а куда этот файл или его содержание вставить, чтобы индикатор заработал в тестере?


Я сейчас не помню...
Попробуй везде засунуть, он не мешает.
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано


обновил 1-й пост


Ого, Спасибо =d>
Если запал не угас, то предложил бы посмотреть источником новостей не FF и дейлифх, а этот:
http://www.myfxbook.com/forex-economic-calendar?oid=42567
Приходилось замечать, что иногда часть новостей на FF и дейлифх отсутствует.
Особенно часто это происходит с выступлениями глав ЦБ, которые не являются цикличными и привязанными к определённым датам (типа NFP в первую пятницу месяца).
Для работы на текущем рынке надо ещё сделать регулярную проверку обновления списка новостей на ближайший день. По-моему, FFcal и Urdala качают сразу ньюсы на неделю вперёд, а изменения и добавления могут происходить чаще.
  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано

Как по мне, то нет ничего сложного открыть форексфектори и глянуть календарь с фильтром. На самом деле в последние годы новости оказывают влияние на рынок всё меньше и меньше. Где те старые добрые времена, когда что ни новость, то полет на 100-150 пунктов, а затем назад на половину и снова вперед :( А нынче одно болото. Даже Ролики и те уже совсем не те...

Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано


Как по мне, то нет ничего сложного открыть форексфектори и глянуть календарь с фильтром.

Тема называется: "Практика новости в тестере" :-H.
В остальном согласен.
  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

  • 2 weeks later...
Тестирование советников - тема для программистов Опубликовано

Получаю ошибку OrderModify error 130 при бэктесте потенциально прибыльного советника, прикрепленного ниже. Помогите, пожалуйста, ее устранить.

Vergil_Day_Trader_V1.1_edufixed_error_4051.mq4

Ссылка на сообщение
Поделиться на другие сайты

  • 3 months later...
Тестирование советников - тема для программистов Опубликовано

Кто-нить кодит на джаве?
Хотелось бы внести в EconomicEventsDownloader_v5.1.jar два косметических изменения (исходник в первом посте в архиве)
1. Нужно чтобы окно после окончания загрузки закрывалось через 10 сек, а не через 180 как сейчас
2. Нужно чтобы программа загружала файлы в ту же папку, в которой она находится. На данный момент она загружает файлы в ту папку, где находится программа, которая её запустила.

Ссылка на сообщение
Поделиться на другие сайты

  • 3 months later...
Тестирование советников - тема для программистов Опубликовано (изменено)
Update 13.11.2015

Все что написано ниже потеряло актуальность.
Метаквоты закрыли лазейку с "заглядыванием в будущее".

_http://forum.mql4.com/ru/67751

Цитата
"20. MQL4: В целях предотвращения "заглядывания в будущее" тестируемых экспертов, функция FileOpenHistory запрещена при работе в тестере."





Update 27.01.2015

Простая методика определения манипуляций роботов с hst файлами (в них содержится "будущие котировки" для подглядывания тестером стратегий)

Если после применения методики результаты будут отличаться, то скорее всего робот обманщик. (Могут быть исключения).

Если робот вообще перестает открывать ордера в тестере, (пример нейронет) значит имеет место место потребность в hst файлах, скорее всего в мошеннических целях (Могут быть исключения).

Пожалуйста дайте знать если , по вашему мнению, нормальный бот определяется как робот обманщик.

-----------------------------------------------
Для тестера 99% например tickstory

1- готовим терминал для тестов 99%
2- запускаем делаем тест как обычно (через tickstory) результат сохраняем
3- терминал не перезагружаем, а просто удаляем (переносим) все *.hst файлы
4- делаем еще раз тест и результаты сравниваем

честный бот покажет абсолютно тот же результат, а говно себя проявит

--------------------------------------------

Для обычного тестера 90%

1- готовим чистый терминал

2- как обычно качаем котировки, должны быть сформированы все hst файлы

3- как обычно запускаем тест, результат сохраняем

--- на вшивость
4- включаем визуализацию

5- старт теста, ждем пока не начнет дергаться цена в окне - типа пошел тест

6- жмем паузу

7- удаляем или переносим в другую папку все hst файлы

8- отжимаем паузу и включаем ползунком макс скорость, окно визуализации с графиком можно свернуть, но не закрывать (будет быстрее)

9- сравниваем результаты. Нормальный бот покажет то что и было.

------

Теория обмана
Все очень просто, эти фокусники заглядывают в будущее через hst файлы и рисуют храаль.

П.С.

*.hst файлы расположены пример Демо Альпари

Меню -> Файл -> Открыть каталог данных -> history -> Alpari-Demo

===========================================================

В последнее время стали появляться храали нового типа, это уже не MDP и не XMT скальперы, где тестер показывал чудеса.
Здесь другие подходы, которое очень красиво смотрятся в тестере, и заподозрить обман очень сложно.

Предлагаю коллекционировать, и на алгоритмическом уровне разобрать возможные схемы обмана тестера.

Тенденция в маркете - продавцы граалей имеют портфолио однодневки, продают только один советник и все.

Кандидаты

rcicci magic
_https://www.mql5.com/ru/market/product/7075

neuronet
_https://www.mql5.com/ru/market/product/7637

В черный список пока рано, не пойман не вор.

Добавлено: 22-01-2015 11:13:24

neuronet у меня тестируется почти сутки прошел около года,
родной ТФ Н1

На не родном ТФ М15 имеет сейчас вот такую супер картинку
если не сольется то прогноз 50 - 100 % от депо в МЕСЯЦ ))))


Добавлено: 22-01-2015 11:18:34

А вот и не родной М30 для rcicci magic

neyro2.png
rcicci2000-2010.png
rcicci2010-2014.png

Изменено пользователем dzennn2
  • Лайк 10
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано (изменено)

nixxer
бот рсисси уже тестирован в соседней ветке 1000 раз и на тиках тоже

а неуронет типа сетка без стоплос и тейкпроф, Закрытие по эквити группа ордеров, сделки по несколько часов
тут что 90 что 99 один фиг будет


Добавлено: 23-01-2015 19:35:28

Нейронет

Тестер 99

Тестился более 2-х суток с 2012 дошел до октября 2013 прервал. А просто ничего не происходит, косит бабло, вернее гребет бабло ковшем без ММ фикс лотом.

Предполагаемая продуктивность 70% в месяц от депо. Спред 1,5 пункта

стоял на М15 вместо Н1 как рекомендуют.

Короче наеб высшего пилотажа. Тестеры по сути не дают никакого представления о боте.

Я так думаю, что скоро нарисуют профитной кривой в тестере Джаконду Леонардо да Винчи.

Нужно думать и разрабатывать доступные методики распознавания и выявления гнилых ботов.

--------

П.С.
Вопрос времени, скоро такого дерьма будет вагон и маленькая тележка.

Добавлено: 24-01-2015 03:03:18

------------
П.С. 2

Этот бот совсем не простой.
Пробовал вырезать котировки через 1 минуту после заранее известного входа, так он все таки входит в то же время, на той же цене и в ту же сторону.

Резал так три раза через 1 минуту после известных трех входов. и на удивление бот три раза вошел так же, не зная будущего.

Но один раз все же появился в тесте лишний ордер, совсем неоднозначное определение махинации.

крепкий орешек, что сказать.

Напишите кто нибудь хоть слово, чтоб разделить посты, а то мое лепит в одну кучу. Выложу картинки тестов.

neyronet_99.png
neyronet99.rar

Изменено пользователем dzennn2
  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано (изменено)

По нейронет

В боте присутствуют явно стратегия, и бот входит по сигналам этой стратегии, что то типа усреднение + локи, в принципе это не важно.

Важно, что есть маленький нюанс. Нюанс это фильтр, который и является причиной офигенного профита.

Фильтр смотрит в будущее и решает выпускать ордер от торговой стратегии или не выпускать, принесет он прибыль или не принесет(это очень упрощенно).

Такой подход сложно словить даже если резать котировки. В нейронете Этот фильтр настроен так, что если он не знает что принесет ордер, то он его не фильтрует и выпускает в рынок.

На тестах время обрезанных котировок это время в самом низу, когда позакрывались все ордера.

Если проследить разницу между тестами то можно увидеть, что вдруг появился ордер
7 2014.12.19 18:30 sell 5 0.10 1.22264 0.00000 0.00000

которого не было.

я тестер запускал дважды, чтоб не было глюка, оба раза ордер был.

Фильтр потерял взгляд в будущее и ордер пропустил.

Такие махинации можно ловить только массовыми тестами с обрезанием и сравнениями резов,
НИЧЕГО НЕ ДОЛЖНО ЛИШНЕГО ПОЯВЛЯТЬСЯ!

Ну или на глубоком программном уровне отслеживая поведения бота в среде.


Добавлено: 24-01-2015 12:01:25

-------------------
По рсисси магик

Почти та-же ситуация с фильтром, ребята в соседней ветке повторили входы и выходы бота по не сложной индикаторной стратегии

Но от кучи плохих входов избавиться не удалось

Вот он магический фильтр, пропускает только профитное (для замыливания не только профитное)

И опять же резы с обрезанными котировками начинают отличаться.

Матрица начинает глючить если ей отрезать будущее :p

Добавлено: 24-01-2015 12:08:39

-------------------
Для проверки как работают обрезанные котировки на честные боты был выбран equlibrium

5 раз после обрезания бот успешно входил, ничего не терял и не добавлял.

Добавлено: 24-01-2015 12:25:14

=========================

И еще. В Маркете на форуме создал тему по рсисси, и всеми претензиями, мол разберитесь что за фуфло.

Через 5 минут тема была удалена и в профиль пришло предупреждение

мол нельзя обсуждать комм продукты на форуме, пишите все в маркете под ботами, как на заборе))

Или закрывают глаза или покрывают или поощряют.
Рассчитывают на массовый психоз от тестов и имеют свой процент.

2014.12.24---3.56.png
2014.12.23---3.31.png
2014.12.22---19.10.png
2014.12.22---01.16.png
2014.12.19---10.47.png

Изменено пользователем dzennn2
  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано

Ну или на глубоком программном уровне отслеживая поведения бота в среде.

Просить Никсера дать последовательность байт, которые отвечают за открытие .hst файла, а я могу вкрутить её в скрипт, который будет искать её в любом файле.
  • Лайк 3
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано (изменено)


Ну или на глубоком программном уровне отслеживая поведения бота в среде.

Просить Никсера дать последовательность байт, которые отвечают за открытие .hst файла, а я могу вкрутить её в скрипт, который будет искать её в любом файле.


Мой способ явно громоздкий и трудоемкий, могут быть человеческие ошибки при бесконечных конвертах и прочих манипуляций, тут надо что то более простое и более убедительное.

Добавлено: 24-01-2015 15:14:36


Ну или на глубоком программном уровне отслеживая поведения бота в среде.

Просить Никсера дать последовательность байт, которые отвечают за открытие .hst файла, а я могу вкрутить её в скрипт, который будет искать её в любом файле.


Боюсь такой способ не покатит
============================
Эксперимент

Написал микро советник с одной ф-цией например Alert("Privet");

1-й раз компилим и копируем ex4 в другую папку

2-й раз компилим и опять сохраняем копию ex4

А потом сравниваем компилы одного и того же советника и получаем абсолютно разные компилы, с разной длинной и содержимым
работает защита от декомпиляции.

Надо както перехватывать работу советника и смотреть нет ли повышенного внимания со стороны сова к hst файлам Изменено пользователем dzennn2
  • Лайк 2
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано

Если советник берет данные с других ТФ, он при тестировании не может заглядывать в hst файлы? :-?

Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано


Если советник берет данные с других ТФ, он при тестировании не может заглядывать в hst файлы? :-?



hst файлы тестер будет открывать по любому, по этой истории котировок гонится тест.

Если сова тестится на М15 на всех тиках, то должны открываться М1 М5 М15

Если сова не обращается на старшие ТФ, а для махинации достаточно М15, то с М15 она и будет работать, постоянно смотря а чего там нам М15 в будущем готовит.

Тут именно повышенное внимание не со стороны тестера а со стороны совы, если это вообще возможно разделить.
  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано

Сам МТ, конечно обращается к hst файлам, но здесь речь о другом - есть коды команд, в том числе код открытия файла который будет в советнике. Конечно Никсер лучше знает этот вопрос, я не знаю где он смотрит отладчиком сову. Если он смотрит сам файл совы - это одно, а если смотрит код совы после того, как МТ развернёт его в оперативе, то это другое... Может шифрация какая-то есть - тогда глухо.

  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано

Ну что мужики вакцина на 51% уверенности найдена <:-p>
Один из героев программы рсисси начал ложать, а второй герой нейронет ушел в нирвану и не выдает ни одного ордера)))

РсиСси при обычном тесте

и при тесте на вшивость

rcicci-Do.png
rcicci-Posle.png

  • Лайк 2
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано (изменено)

Немного теории

При прогоне в тестере из hst файлов формируются fxt файлы это когда нажимаем кнопку пуск и типа идет закачка М1 для всех ТФ.

Когда закачка закончилась и сформировались fxt файлы то hst файлы далее не учавствуют.

Вот за эту особенность я и вцепился. Когда уже пошел тест надо тупо удалить hst файлы.

А вот как раз всяким там гнилым ботам hst надо всегда.

===============
Практика

вначале я взял два нормальных бота один BreakoutEa_EURUSD_M5.ex4 а другой мой конкретно индикаторный и прогнал их выше описанным способом и получил абсолютно одинаковые резы.

А потом взял эти боты фокусники и тут картина маслом....
==================

Как это делать

1 готовим чистый терминал

2 как обычно качаем котировки, должны быть сформированы все hst файлы

3 как обычно запускаем тест, рез сохраняем

--- на вшивость
4 включаем визуализацию

5 старт теста, ждем пока не начнет дергаться цена в окне - типа пошел тест

6 жмем паузу

7 удаляем или переносим в другую папку все hst файлы

8 отжимаем паузу и включаем ползунком макс скорость, окно визуализации с графиком можно свернуть, но не закрывать (будет быстрее)

9 сравниваем резы. Нормальный бот покажет то что и было.

------------------------

Так как я проверил только два честных бота, то до конца уверенности нет, что все честные будут работать нормально.


Добавлено: 24-01-2015 17:30:03

------------
Только что прогнал таким образом Паука XE

резы один в один. Изменено пользователем dzennn2
  • Лайк 6
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано

Oll самое паскудное, что я уже сейчас вижу как этот способ можно обойти, и я уверен что так и будут делать, а вот тут уже новый виток гонки вооружений и защиты и если Маркет это покрывает то пздц.

  • Лайк 3
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано
dzennn2, Вы имеете в виду, что читать непосредственно fxt файл? Там вроде длл надо, нет?
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано


dzennn2, Вы имеете в виду, что читать непосредственно fxt файл? Там вроде длл надо, нет?



Неа, быстренько при старте заливаем данные из hst в массив и все в Памяти, а ты тут хоть все поудаляй. v:)

Ну точняк так будут делать, если все не влезет то сколько влезет.
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано (изменено)


Ну что можно писать разработчикам МТ4 чтобы добавили в тестер возможность блокирования доступа в hst файлам во время теста...... =d>

Правда я догадываюсь что они на это сообщение положат и какого размера..... =))



Вот это напрашивается это точно. Или некая эмуляция потока котировок в тестер, чтоб физически не было доступа.

Или запретить нах FileOpenHistory в советниках, а в индюках и скриптах пусть будет.

Ну вот нахера советнику hst ? Вся история по барам есть в доступе
time low high open close Volume

Вот что нового в hst для сова?
--------
Сам спросил сам и отвечаю

"
Функция может быть полезна для формирования собственных исторических данных нестандартного символа и/или периода. Файл, сформированный в папке истории может быть открыт автономно, для его графика не требуется подкачка данных.
"

Эта фишка вылазит боком Изменено пользователем dzennn2
Ссылка на сообщение
Поделиться на другие сайты

Тестирование советников - тема для программистов Опубликовано

Неа, быстренько при старте заливаем данные из hst в массив и все в Памяти, а ты тут хоть все поудаляй. v:)

А Вы когда тестируете 99% разве не подкидываете тестеру готовый fxt файл? в этом случае hst изначально не нужны (т.е. до теста можно удалить), или нет?
Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Специальное предложение


  • Рекомендуемые брокеры

  • ×
    ×
    • Создать...