Сегодня с Вами рассмотрим робота, который торгует нестандартные свечи. В проекте он называется VolatilityAdaptiveCandlesTrader.
Суть его заключается в том, что он входит в позицию, когда видит свечу размером в определённый % от усреднённой внутридневной волатильности. Актуально его пробовать тестировать и торговать с типами свечей RangeAdaptive и ReversAdaptive, чтобы размер свечи тоже был адаптивным.
Таким образом можно оттестировать и торговать импульсы, завязанные на волатильность инструментов:
1. Пример в проекте.
Робот VolatilityAdaptiveCandlesTrader находится внутри проекта OsEngine. Открываем его и идём вот сюда:
2. Параметры свечек.
Тесты этого робота нужно проводить на тиковых данных, чтобы использовать кастомные типы свечек.
Я для тестов включил вот такие свечи:
Это реверсивные адаптивные под волатильность свечи, которые регулируют свою высоту в зависимости от волатильности и закрываются после значимого отката, т.е. иногда формируют очень длинные, безоткатные свечи.
Почитать о них можно здесь: https://smart-lab.ru/company/os_engine/blog/1033315.php
3. Параметры робота.
- Regime – режим работы.
- Off – Выключен.
- On – Включен и будет входить и в лонг и в шорт.
- OnlyLong – Включен и будет входить только в лонг.
- OnlyShort – Включен и будет входить только в шорт.
- OnlyClosePosition – сможет только закрыть позицию, а входить не будет.
- Volume type – режим выбора объёма.
- Contracts – кол-во контрактов инструмента.
- Contract currency – валюта контракта.
- Deposit percent – процент от депозита.
- Volume – значение объёма. Что именно, зависит от предыдущего пункта. В случае Contracts тут указывается объём инструмента. В случае Contract currency здесь указывается кол-во рублей или долларов, которыми нужно войти. В случае с Deposit percent здесь указывается % от общего депозита, которым нужно войти в контракт.
- Asset in portfolio – тут нужно указывать название валюты, которое будет использовано для расчёта объёма, если Вы выбрали тип объёма “Deposit percent”. В тестере оставляем «Prime». На крипте это обычно “USDT”. В АЛОР это «RUB».
- Slippage % — проскальзывание для цен ордера.
- Height signal candle % — Общая высота свечи, после которой считаем, что можно входить в позицию.
- Trail stop % — Размер трейлинг стопа.
- Days volatility adaptive – кол-во дней, за которое мы берём усреднённую волатильность.
- Height signal candle volatility – какая часть в % от усреднённой внутридневной волатильности у нас будет новой высотой сигнальной свечи после адаптации под волатильность.
- Height trail stop volatility percent – какая часть в % от усреднённой внутридневной волатильности у нас будет новым значением трейлинг стопа после адаптации под волатильность.
4. Логика входа и выхода из позиции.
ЛОНГ
Вход, если за свечу мы набрали общую величину движения вверх, «Height signal candle %».
ШОРТ
Вход, если за свечу мы набрали общую величину движения вниз, «Height signal candle %».
Выход осуществляется по трейлинг-стопу, перевыставляющемуся на завершении каждой свечи, от клоза на величину Trail stop %.
5. Логика адаптации размерностей сигнальных свечей под волатильность.
Сама логика адаптации вызывается утром каждого дня. В роботе этот метод AdaptSoldiersHeight:
Всего там три этапа:
- Считаем внутридневную волатильность в процентах за указанное кол-во дней.
- Усредняем это значение.
- Рассчитываем новые значения высоты сигнальной свечи и стопа.
6. Что с профитом?
Потенциал какой-то есть, но явно надо не один день провести в тестере и сделать кросс-тесты потом, чтобы убедиться, что настройки волатильности робастные. На сбере выглядит это так:
Удачных алгоритмов!
Комментарии открыты для друзей!
Пост из серии «Свечи и преобразование ленты сделок».
OsEngine: https://github.com/AlexWan/OsEngine
FAQ: https://o-s-a.net/os-engine-faq
Поддержка OsEngine: https://t.me/osengine_official_support
Регистрируйся в АЛОР и получай бонусы: https://www.alorbroker.ru/open
Сайт АЛОР БРОКЕР: https://www.alorbroker.ru
Раздел «Для клиентов»: https://www.alorbroker.ru/openinfo/for-clients
Программа лояльности от АЛОР БРОКЕР и OsEngine: https://smart-lab.ru/company/os_engine/blog/972745.php