Отличаются результаты тестера стратегий и единичного прогона с теми же параметрами.

 

Добрый день.

Ситуация следующая: тестер стратегий в режиме оптимизации пробежал по 10 вариантам комбинаций input параметров, выдал 10 результатов. При повторном прогоне по тому же интервалу дат с тем же набором параметров результаты отличаются, причем, повторные попытки так же иногда выдают новые результаты. На глаз, 2-5 результатов регулярно повторяются, остальные чаще всего новые. Если делать прогон в тестере без оптимизации, то результат всегда один и тот же. Причем, оптимизация иногда для этого одного набора параметров дает тот же результат, что и одиночный прогон. Вопрос - почему так происходит и как это решить? Все это для EURUSD для середины 2018 года. Было уже похожее сообщение для MQL4 https://www.mql5.com/ru/forum/106135 но у меня MQL5. Есть ощущение, что используя запуск OnTick() только лишь на Open, High, Low, Close, а не every tick (один из параметров тестера) отклонений больше. History quality - 100%.

Что я пробовал и не помогло: отключение терминала от сети, удаление и последующая автоматическая загрузка истории, запуск тела в OnTick() только при появлении нового бара 

datetime LastCalculatedBarTime = 0;
void OnTick()
{
   MqlRates mrate[];
   ArraySetAsSeries(mrate,true);
   CopyRates(_Symbol,PERIOD_M2,0,5000,mrate);
   if (LastCalculatedBarTime != mrate[1].time)
   {
      LastCalculatedBarTime = mrate[1].time;
      *тело*
   }  
}

В приведенном выше посте за 2007 год упоминается, что своп даже на удаленных в прошлое барах берется текущий, верно ли это сейчас для MQL5? Но вместе с тем, единичные прогоны в моем случае дают один и тот же результат (может, просто несколько раз подряд повезло).

Уже спасибо.

Тестер выдает результат отличный от едичного прогона при тех же параметрах.
Тестер выдает результат отличный от едичного прогона при тех же параметрах.
  • 2007.12.11
  • www.mql5.com
Тестер отработал сутки, все было нормально...
 
Без исходников причину не выяснить. Вот одна из них.
 

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

fxsaber:
Без исходников причину не выяснить. Вот одна из них.

Благодарю за ссылку. И вправду, мой советник многократно увеличивает количество элементов (в первом измерении) многомерных массивов.

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

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

 
Justinas Shimkus:

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

Любая инициализация является верной. Главное, чтобы она была.

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