Пропуски расчетов при тестировании (оптимизации) на многоядерной сети. Кто встречал? Как бороться?

 

Проводится оптимизация советника с параметрами:

Параметры

При этом получаем график с множественными "проколами" в местах, где их видеть не ожидалось.

Гр опт весь

Один из таких проколов с парой параметров 26-29 рассмотрим подробнее:

Гр опт Прокол 26-26

Тот же проход в окне "оптимизация":

Опт

Видно, что по данному набору параметров тестер при оптимизации вернул пустое значение, и прибыль равна нулю.

Однако при одиночном проходе при тестировании советника с тем же набором параметров получаем совершенно другой результат.

График:

График

Результаты:

тест

Видно, что результат 1,4648.... , а прибыль 7853.

Оптимизация проводилась в сети на 50+ ядрах.

Кто встречался с такой ситуацией? С чем она может быть связана? Как с ней бороться?

 

Первое предположение - некорректная работа одного из процессоров.

Подозреваемый временно отключен, тестирование перезапущено.

Жду результатов.

 
Natalja Romancheva:

Первое предположение - некорректная работа одного из процессоров.

Подозреваемый временно отключен, тестирование перезапущено.

Жду результатов.

Доброго, как все красиво выглядит. :)

 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Библиотеки: Report

fxsaber, 2017.07.25 12:47

В отчет добавлен билд Агента.


Добавляем в советник эти строки

#include <TypeToBytes.mqh> // https://www.mql5.com/ru/code/16280
#define REPORT_TESTER // В тестере будут автоматически записываться отчеты
#include <Report.mqh>

и прямо во время Оптимизации советника получаем отчеты по каждому посчитанному проходу


Если заметили, что одиночный прогон не совпадает с Оптимизируемым, сравните билд из отчета с билдом терминала. Если не совпадают, то скорее всего причина разных результатов именно в этом.

 
fxsaber:
Все билды 1881.
 
Natalja Romancheva:
Все билды 1881.

Так приведите Report проблемного прохода.

 
fxsaber:

Так приведите Report проблемного прохода.

И откуда его извлечь?
 
Natalja Romancheva:
И откуда его извлечь?

В советник три строки добавили, что выше?

 
fxsaber:

В советник три строки добавили, что выше?

И что снова зарядить 3000+ проходов?

"Проблемные проходы" при одиночном тестировании вполне нормально считаются с положительным результатом.

О чём и говорилось в начале поста.

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

возвращает ноль при проходе в оптимизаторе.

 
Natalja Romancheva:

И что снова зарядить 3000+ проходов?

Если бы я хотел разобраться, то именно так и сделал. Тем более, всего 3000 проходов. Это быстрее, чем на форуме строчить.

"Проблемные проходы" при одиночном тестировании вполне нормально считаются с положительным результатом.

О чём и говорилось в начале поста.

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

возвращает ноль при проходе в оптимизаторе.

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

Однако, у вас нули, а это больше похоже на Incorrect-Init или ExpertRemove. Для некоторых таких проходов в логе Тестера появляется соответствующая запись.


С исходником быстро бы разобрались, но он есть только у вас.

 
Natalja Romancheva:

И что снова зарядить 3000+ проходов?

"Проблемные проходы" при одиночном тестировании вполне нормально считаются с положительным результатом.

О чём и говорилось в начале поста.

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

возвращает ноль при проходе в оптимизаторе.

Что в логах оптимизации? У вас включена галка полных логов?

Если проход завершился с ошибкой, то в логе будет запись об этом

Также по логу можно определить проблемного агента и почитать его логи.

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