Блог им. fxsaber

Один из методов псевдо-адаптации.

    • 30 января 2023, 01:13
    • |
    • fxsaber
  • Еще
Один из методов псевдо-адаптации.


Любой скальпер знает, что круглосуточная торговля — глупость. Есть интервалы, где достигается высокая и стабильная прибыльность, поэтому различными способами находят эти интервалы. Например, при оптимизации всех параметров ТС перебирают еще и возможные временные интервалы (начало/конец).

 

Интервалы.

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

 

Фазы рынка.

Объективно, интервалы отличаются закономерностями поведения цен. Именно по этой причине, где-то идет стабильно болтанка/слив/прибыль. И тут логично возникает желание найти все интервалы, где идет прибыль.

 

Оптимизация.

Можно делать по-старинке: выбрали интервал и на нем настраиваете робота. А если есть еще хороший интервал? Как при ограниченных вычислительных ресурсах все найти и проверить?

 

Адаптивность.

А надо ли находить, если ТС отлично подстраивается? Возможно, и не надо, но кто может оценить это «отлично»...

 

Псевдо-адаптивность.

И тут приходят к технической реализации поиска хороших интервалов. Есть два метода.

 

Эвристические алгоритм.

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

 

Brute-force.

Если ядро ТС не обладает огромным количеством комбинаций входных параметров, то делается полный перебор с записью сделок каждого прохода в БД. После этого стандартной оптимизации больше нет. Идет работа только с БД. Из полученного массива сделок автоматически подбираются наиболее красиво-выглядящие кривые прибыли для любого заданного интервала. И далее стандартно проверяется на OOS

 

Пример.

Сделали полный перебор и запомнили 100 000 одиночных проходов: сделки (время открытия и результат) в каждом проходе. Далее автомат хочет посмотреть, какие проходы наиболее хорошо себя показали в торговле с 14:15 до 20:15. Он просто перебирает эти уже посчитанные 100 000 проходов и в каждом из них оставляет только те сделки, что соответствуют интервалу. Далее суммарно для каждого прохода вычисляет заданный критерий оптимизации, сортирует все проходы по нему и выдает результат.

 

Плюс brute-force.

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

 

Минус brute-force.

При полном переборе не должно быть слишком много проходов.

 

Минус обоих алгоритмов.

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

 

Инфраструктура.

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

 

Итог.

Проверить свое ядро ТС подобным методом — не будет лишним. Метод в себе содержит много самообмана из-за манипуляций со стат. значимостью. Поэтому, конечно, лучше в само ядро вносить элементы адаптивности и прогонять через рейтинг.

 

Однако, если повезет, подобной псевдо-адаптацией найдете несколько непересекающихся интервалов.

И, конечно, интервалы не только по времени.

★4
1 комментарий
Интересно. Кое что из этого есть в моём алго подходе. 
avatar

теги блога fxsaber

....все тэги



UPDONW
Новый дизайн