Как избежать лишних проходов при оптимизации

 

Коллеги,

Есть набор параметров, в том числе два:

Трейлинг стоп может быть = TRUE/FALSE

Параметр расстояния для трейлинга


При оптимизации даже если трейлинг стоп = FALSE все равно идут прогоны с использованием всего диапазона для параметра расстояние.

Во-первых это время

Во-вторых это десятки одинаковых результатов 


Подскажите как избежать этого?

Заранее спасибо

 

Идентификатор

Описание

INIT_SUCCEEDED

Инициализация прошла успешно, тестирование эксперта можно продолжать.

Этот код означает то же самое, что и нулевое значение – инициализация эксперта в тестере прошла успешно.

INIT_FAILED

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

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

INIT_PARAMETERS_INCORRECT

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

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

При получении этого значения тестер стратегий гарантированно не будет передавать данное задание другим агентам для повторного выполнения.

INIT_AGENT_NOT_SUITABLE

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

После возврата этого кода агент больше не будет получать заданий до самого конца данной оптимизации.

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

Спасибо

Пока не соображу как это использовать.

 
Roman Meskhidze:

Спасибо

Пока не соображу как это использовать.

Пример:

   if(MQLInfoInteger(MQL_OPTIMIZATION) && use_market_order_s == ask_yes && in_start_points_s != st_pt) return(INIT_PARAMETERS_INCORRECT);
   if(period_LWMA_85_s - period_LWMA_75_s <= 5) return(INIT_PARAMETERS_INCORRECT);

Это всё в OnInit

 
Сергей Таболин:

Пример:

Это всё в OnInit

Спасибо большое

 
Roman Meskhidze:

Спасибо большое

Не за что ))))) Обращайтесь.