Оптимизация в Тестере стратегий

 
Помогите, пожалуЙста, разобраться.

Для примера выбрал стандартный эксперт с поставки "Moving Average.mq5" (чтобы не было вопросов по коду в самом эксперте).
Исходные данные:
EURUSD, Daily, с 01.07.2010 по 31.08.2010, Open prices only, режим без оптимизации (т.е. один проход тестера).
лог файл StrategyTester_1pass.log прилагается.

И что мы видим: общее время работы тестера 8 сек. из которых ТОЛЬКО 546 ms было затрачено именно на тестирование эксперта. Все остальное время - это подготовительная работа.

Затем я установил оптимизацию одного входного параметра из 5 значений (для пяти проходов тестера).

Вот скрин лога

лог тестера 

и лог файл StrategyTester_5passes.log прилагаются.

Из логов видно, что каждая иттерация занимает 7-9 сек., т.е. каждый раз мы имеем полный цикл одиночного запуска!...
Отсюда общее время оптимизации 25 сек. на двухядерном процессоре (на одном ядре было бы секунд 45, всместо 3 сек. реального тестирования эксперта).

А если надо оптимизировать 3 входных параметра хотя бы по 10 значениям (10 * 10 * 10 = 1000)?!...  В МТ4 оптимизация проходила на несколько порядков быстрее.

В одной из веток форума я нашел вопросы по такой же проблеме https://www.mql5.com/ru/forum/852/page14, но всех было отправлено или в личку или в сервисдеск.

Объясните, плиз, в чем проблема и как тогда правильно оптимизировать в тестере стратегий.

 

 

я тоже заметил подобное.. но ссилался на "несовершенство" mql5 -))

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

в результате 1200 прогонов на 4-ядерном процесоре занимает весь вечер.. .и ето только за месяц..  

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

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

 
maryan.dirtyn:

я тоже заметил подобное.. но ссилался на "несовершенство" mql5 -))

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

в результате 1200 прогонов на 4-ядерном процесоре занимает весь вечер.. .и ето только за месяц..  

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

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

Я тоже в начале подумал, что где то ошибка в моем коде. Стал искать, упрощать, дошел до такого (: "эксперта"

input int          X = 100;

int OnInit()
  {
   return(0);
  }

void OnDeinit(const int reason)
  {
  }

void OnTick()
  {
   Print("Тик-Так.");
  }

 Результат оказался тот же.

1 pass длиться 7-9 сек. Такая ерунда получается. 

 
Batohov:

1 pass длиться 7-9 сек. Такая ерунда получается. 

+1.

по ценам открытия тож самое.

в Красну Армию такую оптимизацию..

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 
я уже месяц оптимизирую)) и похоже етому не будет конца) зато "оптимизация на ООП" охвативает все возможние аспекти человеческого тупизма .. наверное ето только у нас так долго.. )) раз никто больше сюда не заглядивает... представляю как долго шел би тест, если б я прикрутил к амебному експерту ето "Контроль наклона кривой баланса во время работы торгового эксперта"
 
Мда, я как разтаки сейчас оптимизацией и занимаюсь....это геморно так-же как качать фильм  GPRSом....
 
maryan.dirtyn:
я уже месяц оптимизирую)) и похоже етому не будет конца)  .. наверное ето только у нас так долго.. )) раз никто больше сюда не заглядивает...
Да заглядывают все :) Просто сказать нечего. Я вполне привык к тому, что на 2-ядерном процессоре быстрая оптимизация на "всех тиках" в 10,5 тысяч шагов длится 5-6 дней. Без претензий.
 
Yedelkin:
Да заглядывают все :) Просто сказать нечего. Я вполне привык к тому, что на 2-ядерном процессоре быстрая оптимизация на "всех тиках" в 10,5 тысяч шагов длится 5-6 дней. Без претензий.
но раньше ж существенно быстрей было
 
maryan.dirtyn:
но раньше ж существенно быстрей было

У меня комп не останавливается с мая, - постоянно оптимизирует. Поэтому я уже потерялся, было ли быстрей, или нет.

Дополнение: заметил вот только, что компилятор стал раз в 10 быстрее работать. 

 
Yedelkin:

У меня комп не останавливается с мая, - постоянно оптимизирует. Поэтому я уже потерялся, было ли быстрей, или нет.

ужос
 

А я выбрал немножко параметров, щелкнул тест... утром посчитал количество прогонов и сколько осталось... вычислил что до конца оптимизации 50дней... Комп 4хядерн + 2ядр агенты... Нафиг такую оптимизацию, выключил...

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