В этой статье рассмотрим роботов-скринеров, которые умеют перекладываться из одной серии фьючерсов в другую и поддерживают тестирование на реальных данных, а не на склейках.
Одновременно на одних настройках эти боты могут торговать до 10 линеек фьючерсов.
Эти роботы — технические примеры. С точки зрения алготрейдинга, они представляют для нас интерес в области логики выбора ближайшего фьючерса и закрытия позиции перед экспирацией.
Исходники внутри проекта
Робот FuturesScreenerLrAdaPc
Трендовый робот на двух индикаторах: канале линейной регрессии и адаптивном ценовом канале.
1) Входим в лонг по пробою верхней линии Price Channel, выходим по пробою нижней. Шорт зеркально.
2) Фильтр в виде канала линейной регрессии. Нельзя входить в позицию внутри канала линейной регрессии.
3) Дополнительно реализованы торговые периоды внутри дня и недели.
4) Закрытие позиции за 3 дня до экспирации.
Робот FuturesScreenerLrSma
Трендовый робот на индикаторе линейной регрессии и Sma:
1) Входим в лонг по пробою верхней линии LR, выходим по пробою нижней. Шорта нет, только лонг.
2) Дополнительно реализованы торговые периоды внутри дня и недели.
3) Закрытие позиции за 3 дня до экспирации.
BotTabScreener. В этих роботах 10 источников
В источник сразу подгружаются все имеющиеся серии фьючерсов. Это происходит и в тестере, и в реале.
Один робот ведёт до 10 линеек фьючерсов одновременно, в каждой выбирая ближайший контракт для торговли.
Роботы сами закрывают позицию по мере приближения экспирации по конкретному контракту.
Так выглядит окно робота:
В каждый источник нужно подключать одну линейку фьючерсов.
Скринеры в коде
Событие завершения свечи. По обработчику на каждую линейку фьючерсов
Каждый источник подписывается в конструкторе на событие завершения свечи:
Механизм выбора фьючерса для торговли
Механизм закрытия позиций перед экспирацией
Для этого рассчитывается время в днях до истечения контракта: если осталось меньше 3 дней — выходим
Удачных алгоритмов!
https://smart-lab.ru/company/os_engine/blog/1024149.php
OsEngine: https://github.com/AlexWan/OsEngine
Поддержка OsEngine: https://t.me/osengine_official_support
Канал Научный трейдинг (Bad Quant): https://t.me/bad_quant