Большое пожелание Метаквотам

 

Пожелания - дело неблагодарное, у огромной компании дела прописаны на годы вперёд. И почти всё, что хотят тут многие, игнорируется. 
Но, если не пожелание, то может кто-то подскажет приёмы или методы, как прийти к этому в МТ5. 


К сожалению, текущая сортировка в оптимизаторе МТ5 имеет ряд неприятных эффектов. 

Если сортируешь по максимальному балансу, то в топ попадают сломанные ТС, у которых имеется импульсный всплеск баланса в любой части графика

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

Если сортируешь по минимальной просадке - в топе сеты с единичными сделками. 

Если комплексный критерий - в топе сеты, у которых количество сделок в районе 100. 


Кроме того, у каждого из методов один и тот же дополнительный недостаток - это сеты с 1 только сделкой. 1-ой, 2-мя, 3-мя. Расчёт критериев, если эти сделки прибыльные, даёт максимальный результат по каждому. В итоге в отсортированном списке получается "спам" из этих сетов. 


Ранее, пару лет назад я спрашивал на форуме, как исправить одну из проблем фактора восстановления - игнорирование положительной амплитуды баланса, в результате чего взрывной рост баланса в самом начале графика и последующие 90% флета, либо планомерного слива, сообщающего о том, что ТС перестала работать, имели высокую оценку ФВ. То есть, как учитывать амплитуду: сказали, что есть такой параметр, как R-квадрат. Мол, он и покажет, насколько имеются отклонения от роста. 

В то же время, R-квадрат не учитывает важность свежих данных. 

Учесть свежесть последних данных позволяет следующий метод:

1. Делим график баланса на две части: если максимальная точка баланса находится во второй части графика, проверяем дальше
2. Делим вторую часть графика баланса на две части: если максимальная точка баланса находится во второй части, проверяем дальше

Прерывание этой цепочки даст нам число проверок, которое и будет оценкой ТС на свежих данных. 




Второй аспект: минимальное количество сделок.

Возможность установить в сортировке сетов минимальное количество сделок и вот этот метод выше (метод максимальной точки баланса) — будет отбрасывать спам в топе, и сломанные сеты, в которых превалирует буква "Г", когда баланс вначале взрывается вверх, а потом все 90% продолжительности флетит.  Фактор восстановления же будет показывать всегда истинное значение качества ТС на истории. 


Особенно актуально, если оптимизируешь за 2-3-5-10 и 20 лет. Актуально как для учитывания свежих данных (роста баланса в последние годы), так и экономии времени - отсеивания спама из сетов с одиночными сделками. 

 
Ivan Butko:

Тут два решения:

1. Свои фильтры сразу вносите в кастомный критерий, который можно настраивать в том числе и в входных параметрах советника перед опитмизацией.

2. Сохраняете все результаты в CSV из фреймов советника и далее в экселе сортируете и фильтруете как душе угодно.

 
Документация по MQL5: Обработка событий / OnTester
Документация по MQL5: Обработка событий / OnTester
  • www.mql5.com
OnTester - Обработка событий - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Aleksey Vyazmikin #:

Тут два решения:

1. Свои фильтры сразу вносите в кастомный критерий, который можно настраивать в том числе и в входных параметрах советника перед опитмизацией.

2. Сохраняете все результаты в CSV из фреймов советника и далее в экселе сортируете и фильтруете как душе угодно.

Идея. Благодарю

 
fxsaber #:
Удочка.

К сожалению, не понял вашу отсылку

Что-то в тестере сделать

UPD

А, вроде понял намёк
 
Да, то есть кросс-валидация. Отличная штука.