Результаты оптимизации отличаются от одиночных тестирований по ним - страница 2

 
М-да... Как-то это всё выглядит беспорядочно и не весело. Если котировки изначально берутся с сервера ДЦ, то зачем что-то докачивать с сереверов MQ, тем более. что там котировки, вероятно, или отстают, или дырявые, или меняются задним числом? Зачем пытаться ещё что-то закачать перед оптимизацией, если только что всё (как-бы?) уже закачано "Архивом котировок"? Сплошные вопросы без ответов. Может всё-таки разработчики МТ4 прокомментируют ситуацию и логику работы программы? Будем ждать...
 

Продолжаем эпопею с глюками котировок.

Скачал ещё раз последний выложенный на Альпари билд 228. Установил его в отдельную папку. Онлайн графики не открывал. В "Архиве котировок" закачал историю для USDCHF с количеством баров в истории по умолчанию - мне много не надо, даже последних 2-3 месяца вполне хватит. Нажимал кнопку "Загрузить" два раза. В первый раз явно что-то подкачивалось с серверов (только не знаю с каких). После второго нажатия предложило пересчитать все таймфреймы - я согласился. По окончании пересчёта включил левый прокси в настройках (чтобы МТ4 не мог найти инет), вышел из программы и зашёл заново. Связи с серверами уже не было. Выбрал нужный мне период, параметры и запустил одиночный тест. Полученый график тестирования вызвал подозрения малым количеством сделок. Посмотрел отчёты и логи: из двух недель заданного мной периода тестирования обработана только одна неделя. Оказалось, что в котировках по этой паре БОЛЬШАЯ ДЫРА в две недели, которая и "скушала" одну неделю моего периода.

На прилагаемом скриншоте видно что:

- МТ4 находится в оффлайн, связи с серверами нет;

- выбран период тестирования с 2010.10.25 по 2010.11.23 (окончание периода 2010.11.23 я ввёл с запасом, мне так было удобнее);

- реально тестирование велось с 2010.11.01 00:00 по 2010.11.05 22:00, то есть, в начале была пропущена целая неделя;

- в "Архиве котировок" есть дыра в часовых котировках между 2010.10.15 и 2010.11.01 - отсутствуют больше двух недель котировок;

- в "StrategyTester Report" пишет, что качество моделирования 90% (максимально возможное) и рассогласований нет - типа, всё хорошо;

Единственное, откуда в "StrategyTester Report" можно понять, что была дыра - это несовпадение дат начала тестируемого периода, заданного мной, и реально оттестированного. Но если дыра будет внутри тестируемого периода, то периоды буду совпадать и пользователь останется в иллюзии, что тестирование/оптимизация прошли корректно. А потом потеряет деньги на криво подобранных параметрах стратегии.

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

Налицо грубейшая ошибка работы с архивами котировок в MetaTrader4. Неужели никто с этим не сталкивался?

Интересно, почему разрботчики МТ молчат? Кто знает, как с ними ещё можно связаться, кроме как через этот форум? Может есть баг-трекер или прямой доступ в саппорт?

 
Используй тестер как средство поиска ошибок в твоем алгоритме, корректности работы советника, но ни как инструмент для оптимизации. Для этих целей неплохо подходит "Визуальный тестер" Хипурга (Индикатор такой)
 

Сразу после написания предыдущего сообщения, попробовал ещё несколько раз загрузить котировки в "Архиве". Ничего так и не загрузилось. Ни после нескольких нажатий на Загрузить, ни после нескольких закрытий/открытий МТ4. Дыра в котировках как была, так и осталась.

Вручную почистил папки \history\Alpari-Demo и \history\downloads. Теперь в "Архиве" все котировки, которых не было в "дыре" загрузились с первого раза и без проблем. Значит, похоже, дело не в серверах Альпари.

 
sever30:
Используй тестер как средство поиска ошибок в твоем алгоритме, корректности работы советника, но ни как инструмент для оптимизации. Для этих целей неплохо подходит "Визуальный тестер" Хипурга (Индикатор такой)

Что это за тестер и где его взять? Яндекс и Гугл о нём не знают.
 
Какой-то из этих, я уже не помню точно... все посмотрите, полезная штука. Тестировать стратегии можно.
Файлы:
ubgzpsvpdim.rar  76 kb
 
ReasonMan: 

Интересно, почему разрботчики МТ молчат? Кто знает, как с ними ещё можно связаться, кроме как через этот форум? Может есть баг-трекер или прямой доступ в саппорт?

Значит проблема действительно есть. Лично от себя Вас поздравляю ;-)

 

Спасибо, sever30, но мне нужно быстро за выходные оптимизировать почти полтора десятка пар. На тестере эквити это будет очень долгий процесс. Хоть тестер у МТ4 и тормознутый, но всё же на нём было бы тестить проще и быстрее.

Судя по всему, ошибки не только у меня. Результаты тестирований разные из-за глюков в "Архиве котировок". Тут очень длинное обсуждение https://www.mql5.com/ru/forum/102259, примеры и советы. Но и там нормальных ответов от разработчиков нет.

Единственный вариант проверки истории на целостность, который я нашёл на данный момент, это скрипт "Анализ истории на наличие дыр и разрывов" https://www.mql5.com/ru/code/7093, который является развитием скрипта "history data analysis" от Bagadul https://www.mql5.com/ru/code/8039. Он хоть в какой-то мере позволяет иметь уверенность в целостности истории.

Но на мой взгляд, это огромная недоработка в МТ4 (и, похоже, в МТ5 тоже). За три года существования "Архива" так и не привести его в порядок и оставить в нём такие глюки - полнейшая безответственность со стороны разработчиков. :-(

 

Так чем тема-то закончилась? Время идет, а история все та же: результаты прогонов оптимизации и простого теста отличаются... иногда так отличаются, что хоть плачь. При этом если выполнить одиночный тест раз, два, три - результат один. А если подставить результаты из оптимизации - результат другой... Прям тупость какая-то.

1) спред фиксированный? - да
2) архив котировок качественный, без дыр? - проверил вручную, дыр нет
3) алгоритм советника проверил? - да как жож так, разумеется проверил. На одиночном тесте результат то один и то же, сколько раз не прогоняй
4) с другими брокерами история повторяется? - да еще как повторяется, не в брокерах дело!
5) период поменьше или период побольше выбирал? - да
6) тестить по явному контролю баров пробовал? - ну пробовал... только это не для моего советника

Ну если все пробовал, тогда только стреляться???

 
eugene-last:

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

в Вашем случае, последующий прогон по сути является форвардом, если не сливает, то это же хорошо.

попробуйте поменять действия местами, прогоните, потом оптимизируйте.

Причина обращения: