Стратегия разворота с двойным отслеживанием
Обзор
Стратегия разворота с двойным трекингом представляет собой стратегию торговли на разворотах, сочетающую полосы Боллинджера, каналы Кельтнера и осцилляторы моментума. Стратегия использует комплексный анализ полос Боллинджера и каналов Кельтнера для выявления моментов сжатия цены, а также осцилляторы моментума для определения сигналов разворота, формируя точки входа и выхода из сделок.
Принцип стратегии
-
Рассчитываются верхняя, нижняя и средняя линии полос Боллинджера.
- Средняя линия — SMA от close.
- Верхняя и нижняя линии — средняя линия ± стандартное отклонение с регулируемым коэффициентом.
-
Рассчитываются верхняя, нижняя и средняя линии канала Кельтнера.
- Средняя линия — SMA от close.
- Верхняя и нижняя линии — средняя линия ± ATR с регулируемым коэффициентом.
-
Определяется, находится ли полоса Боллинджера внутри канала Кельтнера.
- Если верхняя линия Боллинджера ниже верхней линии Кельтнера, а нижняя линия Боллинджера выше нижней линии Кельтнера, считается, что рынок находится в состоянии сжатия.
- В противном случае — сжатие отсутствует.
-
Рассчитывается наклон линейной регрессии val от close относительно средней точки полосы Боллинджера и канала Кельтнера.
- val > 0 означает рост close, val < 0 — падение.
-
Рассчитывается скорость изменения ROC цены close и её EMA.
- Определяется, превышает ли скорость изменения регулируемый порог.
- Если порог превышен, считается, что рынок находится в тренде.
-
В состоянии сжатия при val > 0 и достижении порога скорости изменения открывается длинная позиция.
- В противном случае — короткая позиция.
-
Устанавливаются условия для стоп-лосса и тейк-профита.
Преимущества стратегии
- Сочетание двухканальной системы для определения моментов разворота повышает точность.
- Добавление линейной регрессии и оценки скорости изменения позволяет избежать ложных сигналов разворота.
- Настраиваемые параметры обеспечивают гибкость для оптимизации под различные инструменты.
- Использование стоп-лосса и тейк-профита позволяет эффективно контролировать риск по каждой отдельной сделке.
- Достаточный объём тестовых данных позволяет подтвердить эффективность стратегии.
Риски стратегии и пути их решения
- Сжатие по двум каналам не всегда приводит к эффективному развороту.
- Оптимизировать параметры, ужесточить условия сжатия.
- Ложные пробои генерируют ошибочные сигналы.
- Добавить оценку линейной регрессии для определения направления тренда.
- Слишком широкие стоп-лоссы приводят к большим разовым убыткам.
- Оптимизировать точки стоп-лосса, строго контролировать разовые убытки.
- Тестовый период Datenichinhalt
- Увеличить количество тестовых периодов, чтобы подтвердить долгосрочную эффективность.
Направления оптимизации стратегии
- Оптимизировать настройки параметров для адаптации к большему числу инструментов.
- Добавить машинное обучение для определения ключевых уровней поддержки и сопротивления.
- Учитывать изменения объёмов торгов для повышения достоверности пробоев.
- Ввести межтаймфреймовый анализ для оценки устойчивости тренда.
- Оптимизировать стратегии стоп-лосса и тейк-профита, реализовать динамический трейлинг.
Заключение
Стратегия разворота с двойным трекингом в целом представляет собой стратегию разворота, использующую такие индикаторы, как полосы Боллинджера и каналы Кельтнера. Благодаря оптимизации параметров она может адаптироваться к различным инструментам и в определённой степени распознавать достоверность пробоев. Однако торговля на разворотах по-прежнему сопряжена с определёнными рисками, и для повышения точности суждений и получения более стабильной избыточной доходности требуется дополнительное применение таких технологий, как машинное обучение.
/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
// Credit for the initial Squeeze Momentum code to LazyBear, rate of change code is from Kiasaki
strategy("Squeeze X BF 🚀", overlay=false, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.0)
- 1

