Скачать MetaTrader 5

Оптимизатор в тестере стратегий МТ4 некорректно обрабатывает INIT_FAILED

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Есть свободные компьютеры? Подключи их к MQL5 Cloud Network и заработай!
Dmitry Yakubov
125
Dmitry Yakubov 2015.04.19 23:11 

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

Вот код:

input int      value=1;

int OnInit()

{

    if (value == 3) return (INIT_FAILED);

    return(INIT_SUCCEEDED);

}

Запускаем в тестере на оптимизацию параметр value от 1 до 10. Результат - после 3 проходки все наборы параметров некорректны, хотя по логике дожна быть некорректной только третья проходка.

Документация говорит:  

INIT_FAILED

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

Возврат этого значения означает то же самое, что и возврат значения, отличного от нуля – инициализация эксперта в тестере прошла неудачно. Тестирование для данного набора параметров эксперта не будет выполняться, агент свободен для получения нового задания.

 

Дальше - больше. Если сделать вывод результатов в файл, то видно что после третьей проходки функция OnInit() вообще не запускается.

Кто-нибудь сталкивался с подобным? Как решить проблему?  

P. S. Тестировал на MT4 билд 765

 

Прикладываю картинку того же кода, только с возвращаемым параметром INIT_PARAMETERS_INCORRECT  

 

o_o
Модератор
23714
o_o 2015.04.21 12:46  
MetaQuotes Software Corp.
Модератор
181406
MetaQuotes Software Corp. 2015.04.21 13:52  

А вы прописали режим совместимости с MQL5, чтобы учитывался код возврата OnInit?

#property strict
Dmitry Yakubov
125
Dmitry Yakubov 2015.04.21 18:12  
Да, прописал. Файл прилагаю.
Файлы:
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий