Прорыв уровня поддержки краткосрочная количественная торговая стратегия на основе динамического стоп-лосса ATR

ATR SMA SUPPORT BREAKOUT TRAILING STOP VOLUME CONFIRMATION SIDEWAYS DETECTION
Дата создания: 2025-05-26 11:28:36 Последнее изменение: 2025-05-26 11:28:36
Копировать: 0 Количество просмотров: 260
2
Подписаться
319
Подписчики

Прорыв уровня поддержки краткосрочная количественная торговая стратегия на основе динамического стоп-лосса ATR Прорыв уровня поддержки краткосрочная количественная торговая стратегия на основе динамического стоп-лосса ATR

Обзор

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

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

Ключевые принципы стратегии основаны на теории прорыва уровня поддержки в техническом анализе. Во-первых, система определяет ключевой уровень поддержки путем вычисления минимальной цены за последние 20 циклов. Этот уровень поддержки представляет собой важную защитную зону для многоголосной силы. Когда цена проваливает этот уровень поддержки и удовлетворяет условиям прорыва буферной защиты, это означает, что многоголосная защитная линия была пробита, а воздушная сила занимает доминирующее положение.

Стратегические преимущества

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

Стратегический риск

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

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

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

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

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

Исходный код стратегии
/*backtest
start: 2024-05-26 00:00:00
end: 2024-08-13 00:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"SOL_USDT"}]
*/

//@version=5
strategy("Breakout Strategy Pro [Dubic] - Short Only", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// === INPUTS === //
srRange         = input.int(20, "Support Lookback", minval=5)
volMaLength     = input.int(20, "Volume MA Length", minval=1)
atrLength       = input.int(14, "ATR Period", minval=5)
trailMultiplier = input.float(1.5, "Trailing Stop Multiplier", minval=1.0)
stopMultiplier  = input.float(1.0, "Initial Stop-Loss ATR Multiplier", minval=0.5)
breakoutBuffer  = input.float(1.005, "Breakout Buffer", step=0.001)
rangeLength     = input.int(20, "Range Detector Lookback", minval=5)
rangeThreshold  = input.float(1.5, "Sideways Threshold (x ATR)", minval=0.5, step=0.1)

// === CALCULATIONS === //
lowLevel         = ta.lowest(low, srRange)[1]
volMA            = ta.sma(volume, volMaLength)
atr              = ta.atr(atrLength)
trailOffsetTicks = math.max(int(math.round((atr * trailMultiplier) / syminfo.mintick)), 1)
stopLossTicks    = math.max(int(math.round((atr * stopMultiplier) / syminfo.mintick)), 1)

// === SIDEWAYS DETECTION === //
highRange = ta.highest(high, rangeLength)
lowRange = ta.lowest(low, rangeLength)
priceRange = highRange - lowRange
isSideways = priceRange <= atr * rangeThreshold

// === ENTRY LOGIC === //
shortCondition = close <= lowLevel * breakoutBuffer and volume >= volMA and not isSideways

// === ENTRY & EXIT === //
if shortCondition and strategy.position_size >= 0
    strategy.entry("Short", strategy.short)
    strategy.exit("Exit Short", "Short", trail_price=close, trail_offset=trailOffsetTicks, stop=close + stopLossTicks * syminfo.mintick)
    alert("Short Entry Signal - Breakout Strategy Pro [Dubic]", alert.freq_once_per_bar)

// === VISUALS === //
plot(lowLevel, "Support", color=color.new(color.green, 30))
plot(volMA, "Volume MA", color=color.gray)
plotshape(shortCondition, location=location.abovebar, style=shape.triangledown, color=color.red, size=size.small, title="Sell Signal")
bgcolor(isSideways ? color.new(color.orange, 85) : na, title="Sideways Market")