Artem Loychenko
Artem Loychenko личный блог
08 ноября 2021, 15:11

Алгоритм, с которым я намучился.

Привет!

Специально для всех хейтеров, ненавистников инфоциган aka алгоритмических трейдеров написал большую статью на VC. В ней рассказываю как создавал алгоритм, какие были проблемы. Как привлекал первые деньги инвесторов и как терял конечно же тоже! Жду в комментариях критики, статей УК РФ, рассказов про оверфиттинг и так далее.

Приведу часть статьи здесь, чтоб пост уж не был совсем пустым. 

Бэктест в реальном времени

В целях диверсификации клиентских средств инвесторам было предложено шесть разных инструментов на выбор для торговли, позднее это число выросло до 12. В один день на клиентском счете торговалось не более трех разных инструментов, и набор этих инструментов часто менялся. Как можно догадаться, результаты были крайне нестабильны. Мы переключались с одного инструмента на другой, относясь болезненно к любой краткосрочной просадке. В один день алгоритм зарабатывал 12 000$, два последующих дня терял по пять. К счастью, клиенты оказались терпеливыми людьми, склонными к авантюрам. Было принято решение продолжать работать, и мы пробовали совершенно разные инструменты в поисках подходящего. 

Стало очевидно, что это бэктест в настоящем времени и на реальных деньгах. На этом этапе я остановил работу алгоритма и обратился к другу за помощью в написании полноценного бэктест-алгоритма – конечно, это следовало сделать в самом начале.

Следующие полгода я занимался исключительно тестами. Проверял различные инструменты и искал, почему не получалось зарабатывать стабильно. Способ, которым алгоритм принимает решение о входе в позиции, не меняется уже многие годы, но часть вспомогательных расчетов в результате работы с тестером были изменены. Раньше выбор инструмента производился фактически на глаз. Основным требованием было наличие трендовости на ценовом графике инструмента, этого было достаточно чтобы запуститься в работу. Период для расчета параметров, уровень ограничения рисков, тейк-профит и другие параметры были статичны, рассчитывались из одинаковой выборки данных для каждого инструмента и для каждого таймфрейма. Теперь же каждый параметр становился динамическим, способным подстраиваться под инструмент и текущий рынок. В сущности, на этом этапе я мог найти рабочие параметры для алгоритма под каждый инструмент на любом отрезке времени. Люди, знакомые со статистикой и тестированием систем, поймут, что речь идет об overfitting. Это такая ситуация, когда тестировщик системы занимается подгонкой параметров для получения лучшего результата его системы. На практике заканчивается это тем, что у торговой системы идеальные показатели на исторических данных, но ничего не получается в будущих периодах. 

 

Спустя время и несчетное количество тестов удалось сократить количество инструментов и рабочих таймфреймов до двух. Я проверил 18 разных инструментов и только два из них давали стабильно хорошие результаты без существенного изменения рабочих параметров алгоритма под каждый временной период. Сейчас алгоритм торгует ZL.CBOT и HE.CME, при этом первый торгуется каждый час, а сделки по второму могут происходить каждые пол часа.
Алгоритм, с которым я намучился.



 

21 Комментарий
  • Андрей К
    08 ноября 2021, 15:24
    Удачи, все таки за год всех шишек не набьешь, а они точно прилетят.
  • LevNNN
    08 ноября 2021, 15:28
    Добрый день, Я бы порекомендовал  бы быть более конкретным. Вы нарисовали красивый  график, рвущийся верх. Как я понял  по Вашему замыслу он должен воодушевить инвесторов.  По оси X надо понимать время?!  Какое конкретно?! День, месяц, минута?!   По оси Y скорее всего доходность. В  каких единицах измерения? 
    Кроме графика что еще можете привести в доказательство «правильности» своего алгоритма?!  Стейтменты  своей торговли можете выложить?!



      • LevNNN
        08 ноября 2021, 16:03
        Artem Loychenko, рассматривайте это просто как совет. 

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн