
A estratégia é um sistema de negociação de quantificação de ruptura de suporte para negociações aéreas, para capturar tendências de queda de preços através da identificação de rupturas efetivas de suporte crítico. A estratégia combina a teoria da resistência de suporte na análise técnica, o princípio de confirmação de volume de transação e o mecanismo de gerenciamento de risco dinâmico ATR. O sistema possui uma função de filtragem de mercado transversal, capaz de evitar efetivamente a produção de falsos sinais em situações de turbulência e focar em oportunidades de ruptura de tendência.
O princípio central da estratégia é baseado na teoria da ruptura do nível de suporte na análise técnica. Primeiro, o sistema determina o nível de suporte crítico, que representa uma importante área de defesa da força múltipla, calculando o preço mínimo nos últimos 20 ciclos. Quando o preço cai acima deste nível de suporte e atende às condições de amortecimento da ruptura, indica que a linha de defesa múltipla foi rompida e a força aérea assume a posição dominante.
A função de filtragem de mercado horizontal é uma das principais vantagens da estratégia, sendo capaz de identificar os movimentos de choque e suspender a negociação para evitar perdas contínuas em um ambiente de mercado desfavorável. A gestão de risco dinâmico é a principal vantagem da estratégia. O mecanismo de parada de perda baseado no ATR é capaz de se ajustar automaticamente à volatilidade do mercado, oferecendo um espaço de parada mais flexível em períodos de alta volatilidade e de controlar o risco de aquisição em períodos de baixa volatilidade.
Apesar das múltiplas vantagens da estratégia, existem alguns riscos potenciais a serem observados. Primeiro, o risco de reversão de tendência, quando o mercado está em uma forte tendência ascendente, a ruptura do nível de suporte pode ser apenas uma reversão de curta duração, e não uma verdadeira reversão de tendência, o que pode levar a posições em aberto a enfrentarem perdas rápidas no mercado. O risco de flutuação extrema é outra consideração importante, em caso de choque de notícias significativas ou de pânico no mercado, o preço pode surgir com uma lacuna de salto, fazendo com que o mecanismo de parada de perdas baseado no ATR seja ineficaz.
Existem várias direções de otimização da estratégia para melhorar o desempenho geral. Em primeiro lugar, pode-se introduzir a análise de múltiplos períodos de tempo para filtrar os sinais de negociação, combinando a direção da tendência com períodos de tempo mais elevados. Por exemplo, o sinal de ruptura do gráfico horário é executado apenas quando o diagrama mostra uma tendência de queda. Isso pode aumentar significativamente a taxa de sucesso do sinal, evitando a operação de reversão.
A estratégia é um sistema de negociação de quantificação de ponta de suporte bem projetado, que atinge uma maior qualidade de sinal e controle de risco através da combinação de vários indicadores técnicos. O principal benefício da estratégia é o seu mecanismo de filtragem de sinal completo e o sistema de gerenciamento de risco dinâmico baseado em ATR. A confirmação de volume de transação e a filtragem de mercado horizontal aumentam efetivamente a confiabilidade do sinal de negociação, enquanto o mecanismo de rastreamento de perda é um bom equilíbrio entre controle de risco e maximização de lucro.
/*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")