Боевые торговые советники время от времени перенастраиваются по разным причинам через Тестер на исторических данных.
Однако, результат таких периодических настроек сводится к наблюдению за неизвестным — будущая торговля.
Аргументировать и обосновать целесообразность таких действий в отношении того или иного торгового советника довольно непросто.
Крайне малая часть авторов роботов создают внутренние адаптивные механизмы через автооптимизацию, т.к. это требует серьезной подготовки программиста и не носит универсальный характер. Это всегда сложно, громоздко и индивидуально.
Поэтому говорить об автооптимизации всех торговых роботов не приходилось. Особенно, когда речь заходила о платных чужих роботах с закрытым исходным кодом (Маркет).
Когда-то в паблике столкнулся с мнением, что OOS должен располагаться только справа. Т.е. расположение его слева от интервала Оптимизации — ошибка. Я с этим был категорически не согласен, т.к. не видел разницы. Теперь вижу. Ошибался, был не прав.
Как это ни парадоксально, но именно при активной алготоровле много времени уходит на вглядывание в монитор. Иногда возникают иллюзии, будто что-то полезное уловил глазом.
Так произошло и в этот раз. Давно была гипотеза, что какие-то движения внтури дня имеют связь с движениями после в этом же дне.
Например, может показаться, что микрогепы в первые минуты открытия европейской сессии могут с высокой вероятностью указать на дальнейшее движение цены в течение дня.
Среди большого количества заданий для себя, была задача проверить нечто подобное. И вот руки дошли.
Например, был профит 20000 пипсов при 1000 трейдов. Сделали маркап -1 пипс (Bid -= -1pips, Ask += -1pips). Тогда MarkupProfit = 20000 — 1000 * (-1 ) * 2 = 22000 пипсов.
Так сколько же модификаций (торговых приказов)?
Реальный пример. Два месяца, открыта (хедж) одновременно только одна позиция и ордер для открытия противоположной, когда закроется текущая. Торговля только 12 часов в сутки.
Запредельные цифры не привожу, где много позиций, а беру только хороший проход, который можно ставить на реал.
Позиций — 851.
Модификаций — 1 300 513 (больше миллиона).
~1500 модификаций на каждую позицию.
И это не какие-то там тупые модификации от нечего делать, а рабочие. На реале кратно больше, т.к. много ТС.
Допустим, что существует какая-то рыночная закономерность. Это может характеризоваться тем, что можно написать несколько ТС с разной логикой и они будут улавливать профит, но только с разной эффективностью.
Эффективность улавливания прибыли измеряю, например, профитом наилучшего прохода при оптимизации постоянным лотом. Выше профит — выше эффективность. Т.е. чем выше профит, тем точнее накладываются сделки на график цены.
В предыдущих записях было показано (в статье), как использовался MT5-Тестер для нахождения рыночных закономерностей. Но совсем упущено описание исследовательской работы при написании ТС.
Как правило, пишется несколько экспериментальных ТС, которые сами по себе являются своего рода исследованиями. Они могут отличаться какими-то блоками друг от друга. Чаще всего, это не сами торговые блоки, а алгоритмы формирования торговых сигналов. Т.е. изменения содержатся в небольших, но определяющих частях.
При настройке ТС есть два подхода
Первый случай хорош тем, что можно видеть величину мат. ожидания используемой закономерности. Казалось бы, что чем оно выше, тем лучше. Но когда речь заходит об реинвестировании робастой ТС с высоким потолком ликвидности, то может случиться так, что большее количество мелких сделок (в пипсах) выгоднее, чем меньшее количество сделок крупнее.
Например, в пипсах результат может быть одинаков у двух проходов. Но проход с бОльшим количеством сделок может стать предпочтительнее при реинвестировании.
Поэтому хорошо бы иметь критерий оптимизации для реинвестирования.
Взял такой: какая относительная прибыльность достигается при жестко заданной максимальной относительной просадке.