Стратегии прорыва тренда


Дата создания: 2024-03-22 14:48:37 Последнее изменение: 2024-03-22 14:48:37
Копировать: 1 Количество просмотров: 640
1
Подписаться
1617
Подписчики

Стратегии прорыва тренда

Обзор

Это количественная торговая стратегия, которая использует индикатор ATR и закрывающую цену для захвата прорыва тренда. Эта стратегия определяет направление тренда путем динамического расчета верхних и нижних трендовых линий, создавая торговый сигнал, когда закрывающая цена прорывает трендовую линию.

Стратегический принцип

  1. Вычислить сигнал ATR: atr_signal = atr(atr_period)
  2. Вычислить линию тренда:
    • Нижняя линия: lower_trend = low - atr_mult*atr_signal
    • Верхняя линия тренда: upper_trend = high + atr_mult*atr_signal
  3. Динамическая коррекция линии тренда, если линия тренда пробивается, она остается неизменной, в противном случае обновляется до последнего значения
  4. Знак тренда, используемый для определения направления тренда, окрашивается в зависимости от относительной позиции цены к концу и линии тренда
  5. Вырабатывает торговые сигналы:
    • Сигналы: отсутствие позиций и преодоление цены на закрытие
    • Сигналы об уходе: отсутствие позиций и закрытие цены с прорывом нижней линии тренда
  6. Настройка стоп-ложа и целевой цены:
    • Стоп-лосс: последняя цена сделки + ATR-фактор колебаний при прорыве
    • Целевая цена: последняя цена сделки ± Stop Loss Margin * RR
  7. Мобильный стоп:
    • Многоочередная остановка: линия максимального тренда
    • Потеря на пустом уровне: наименьшая линия тренда

Анализ преимуществ

  1. Динамическая корректировка трендовых линий на основе волатильности для адаптации к различным рыночным условиям
  2. Тренд-линии имеют цветные маркировки с указанием направления, что позволяет идентифицировать тренды
  3. Использование ATR в качестве меры волатильности для установления разумных стоп-стопов и целевых цен
  4. Мобильная функция остановки убытков, позволяющая максимально снизить отзыв при сохранении прибыли
  5. Высокий уровень параметризации, адаптация к различным сортам и периодам

Анализ рисков

  1. Трендовые стратегии могут привести к убыткам в условиях колебаний рынка.
  2. Неправильный выбор параметров ATR может привести к тому, что линия тренда будет слишком чувствительной или вялой, что повлияет на качество сигнала
  3. Фиксированное соотношение прибыли и убытков может не адаптироваться к различным рыночным особенностям
  4. “Мобильные стоп-лошади” могут “убить” и “пропустить” тренд

Решение проблемы:

  1. Введение фильтрации тенденций или вспомогательных суждений по шок-индикаторам, чтобы избежать убытков на шок-рынке
  2. Оптимизация параметров ATR в зависимости от сорта и цикла
  3. Оптимизация коэффициентов убытков и убытков с мобильной логикой, повышение соотношения риска и прибыли стратегии
  4. Улучшение мобильных стоп-лостов с использованием методов идентификации трендов, позволяющих зафиксировать больше трендовых прибылей

Направление оптимизации

  1. В сочетании с несколькими временными циклами, с помощью больших циклов идентифицировать тенденции, небольшие циклы запуска сигналов
  2. Добавление проверки количественных показателей до прорыва трендовой линии повышает эффективность сигнала
  3. Оптимизация управления позициями, увеличение операций в диапазоне
  4. Оптимизация параметров для остановки и убыточного соотношения
  5. Улучшение мобильной логики остановки, снижение преждевременного остановки в трендовых ситуациях

Многочасовые циклы помогают отфильтровывать шум и устойчивее держать тренд. Проверка количественных показателей цены перед прорывом помогает отфильтровать ложные сигналы. Оптимизация управления позициями повышает эффективность использования средств.

Подвести итог

Стратегия использует ATR в качестве измерения волатильности, динамически корректирует позицию трендовой линии, захватывает тенденционные перерывы. Разумно устанавливает стоп-лосс и прибыльные цели и использует мобильные стоп-лосс для блокирования прибыли. Параметры настраиваемы, адаптивны.

Исходный код стратегии
/*backtest
start: 2023-03-16 00:00:00
end: 2024-03-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title = "Claw-Pattern", overlay=true, calc_on_every_tick=true, default_qty_type= strategy.percent_of_equity,default_qty_value=10, currency="USD")
//Developer: Trading Strategy Guides
//Creator: Trading Strategy Guides
//Date: 3/18/2024
//Description: A trend trading system strategy 

atr_period = input(title="ATR Period", defval=120, type=input.integer)
atr_mult = input(title="ATR Multiplier", defval=2, type=input.integer)
dir = input(title="Direction (Long=1, Short=-1, Both = 0)", defval=1, type=input.integer)
factor = input(title="Stop Level Deviation (% Chan.)", defval=0.75, type=input.float)
rr = input(title="Reward to Risk Multiplier", defval=2, type=input.integer)
trail_bar_start = input(title="Trail Stop Bar Start", defval=20, type=input.integer)
col_candles = input(title="Enable Colored Candles", defval=false, type=input.bool)

atr_signal = atr(atr_period)

lower_trend = low - atr_mult*atr_signal
upper_trend = high + atr_mult*atr_signal

upper_trend := upper_trend > upper_trend[1] and close < upper_trend[1] ? upper_trend[1] : upper_trend
lower_trend := lower_trend < lower_trend[1] and close > lower_trend[1] ? lower_trend[1] : lower_trend

upper_color = barssince(cross(close, upper_trend[1])) > barssince(cross(close, lower_trend[1])) ? color.red : na
lower_color = barssince(cross(close, upper_trend[1])) > barssince(cross(close, lower_trend[1])) ? na : color.green

trend_line = lower_trend

plot(lower_trend, color=lower_color, title="Lower Trend Color")
plot(upper_trend, color=upper_color, title="Upper Trend Color")

is_buy = strategy.position_size == 0 and crossover(close, upper_trend[1]) and upper_color[1]==color.red and (dir == 1 or dir == 0)
is_sell = strategy.position_size == 0 and crossover(close, lower_trend[1]) and lower_color[1]==color.green and (dir == -1 or dir == 0)

if is_buy
    strategy.entry("Enter Long", strategy.long)
else if is_sell
    strategy.entry("Enter Short", strategy.short)