Стратегия прорыва горизонтального уровня с использованием ATR
Обзор
Стратегия прорыва ATR с трендовым фильтром «Пчела» представляет собой средне- и краткосрочную прорывную стратегию, основанную на индикаторе ATR и полосах Боллинджера для генерации торговых сигналов. Она в основном отслеживает изменения тренда цены акции внутри канала ATR заданной ширины: при пробое нижней или верхней границы принимает торговые решения с учётом трендового фильтра.
Принцип стратегии
Стратегия состоит из трёх основных частей:
-
Канал ATR: рассчитывает диапазон волатильности цены с помощью индикатора ATR и формирует канал выше и ниже этого диапазона. Ширина канала регулируется периодом ретроспективного анализа ATR (lookback) и множителем ATRdivisor.
-
Линия «Пчела»: за базовую линию принимается центральная линия цены. Центральная линия рассчитывается как среднее значение цены закрытия, максимальной и минимальной цены предыдущего дня.
-
Трендовый фильтр: определяет тренд цены с помощью индикатора направленного движения (DMI). Задаётся период сигнала; если pricesig > pricesig[3] — тренд восходящий, если pricesig < pricesig[3] — тренд нисходящий.
Логика генерации торговых сигналов:
-
Сигнал на покупку (лонг): когда pricesig > pricesig[3] и цена пробивает нижнюю границу канала вниз — открывается длинная позиция.
-
Сигнал на продажу (шорт): когда pricesig < pricesig[3] и цена пробивает верхнюю границу канала вверх — открывается короткая позиция.
В остальных случаях сделки не совершаются.
Стратегия также задаёт условия тейк-профита и стоп-лосса для контроля риска по каждой сделке.
Преимущества
Стратегия прорыва ATR с трендовым фильтром обладает следующими преимуществами:
-
Использование индикатора ATR для расчёта диапазона волатильности позволяет динамически улавливать изменения рынка.
-
Оценка бокового движения цены через центральную линию и установка точек прорыва канала помогают избежать покупки на пике и продажи на спаде.
-
Индикатор направленного движения для определения тренда снижает риск торговли против тренда и повышает процент успешных сделок.
-
Установка тейк-профита и стоп-лосса ограничивает риск по каждой отдельной сделке.
-
Гибкая настройка параметров стратегии — возможность регулировать ширину канала, период ATR и другие факторы для оптимизации.
Анализ рисков
Стратегия также несёт определённые риски:
-
Кратко- и среднесрочная торговля характеризуется высокой волатильностью и повышенным риском, требуется осторожное управление капиталом.
-
При резких колебаниях цены расчёт диапазона канала ATR может быть неточным, что приводит к ошибочным сделкам.
-
Индикатор направленного движения также может ошибаться в определении тренда, что влияет на точность торговых сигналов.
Для снижения указанных рисков можно скорректировать параметры канала ATR, увеличить период фильтрации трендовых сигналов и т.д.
Направления оптимизации
Стратегию можно оптимизировать по следующим направлениям:
-
Изменить ширину канала ATR: уменьшить или увеличить параметр atrDivisor, сузить или расширить диапазон канала.
-
Изменить период ретроспективного анализа ATR: настроить чувствительность канала к последним колебаниям.
-
Изменить период трендового сигнала: улучшить точность определения восходящего и нисходящего трендов.
-
Добавить другие индикаторы для мультифакторной верификации, повышая качество торговых сигналов.
-
Оптимизировать алгоритмы тейк-профита и стоп-лосса для улучшения управления рисками.
Заключение
Стратегия прорыва ATR с трендовым фильтром «Пчела» объединяет анализ диапазона колебаний цены и индикаторы определения тренда, позволяя захватывать рыночные импульсы и одновременно контролировать торговые риски. Это гибкая и адаптируемая количественная стратегия, которая может быть улучшена путём настройки параметров и оптимизации сигналов, что даёт ей широкие перспективы применения.
/*backtest
start: 2023-11-01 00:00:00
end: 2023-11-30 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title="Strategy - Bobo PATR Swing", overlay=true, default_qty_type = strategy.fixed, default_qty_value = 1, initial_capital = 10000)
// === STRATEGY RELATED INPUTS AND LOGIC ===- 1

