Estratégia de ruptura de reversão

Autora:ChaoZhang, Data: 2023-10-27 16:14:16
Tags:

img

Resumo

A estratégia de ruptura de reversão utiliza as Bandas de Bollinger e o Oscilador Estocástico para identificar pontos de reversão potenciais quando um ativo é sobrecomprado ou sobrevendido. É adequado para os comerciantes intradiários capitalizarem pequenas flutuações de preços para lucros. A ideia principal é procurar oportunidades de negociação quando o preço rompe as Bandas de Bollinger e o Estocástico mostra sinais de sobrecompra / sobrevenda.

Estratégia lógica

A estratégia usa tanto as Bandas de Bollinger quanto o Estocástico como os principais indicadores técnicos. As Bandas de Bollinger são traçadas em níveis de desvio padrão acima e abaixo de uma média móvel simples. Os preços que atingem a faixa superior são considerados sobrecomprados enquanto a faixa inferior é sobrevendida. O Oscilador Estocástico determina se os preços se moveram muito e devem ser revertidos. Leituras acima de 80 sugerem condições de sobrecompra enquanto abaixo de 20 são sobrevendidas.

As regras de negociação são: ir longo quando o preço quebra abaixo da faixa inferior de Bollinger e o Estocástico está abaixo de 20; ir curto quando o preço quebra acima da faixa superior e o Estocástico está acima de 80. O stop loss é colocado alguns pips abaixo da baixa (para longs) ou acima da alta (para shorts).

Os crossovers identificam as rupturas da faixa, os marcadores de forma traçam os sinais de entrada, as paradas e os objetivos de lucro são definidos após a entrada.

Vantagens

A combinação de bandas para suporte/resistência e Stochastic para sobrecompra/supervenda melhora a qualidade do sinal em relação a um único indicador.

O stop loss apertado ajuda a limitar as perdas. Tome lucro com base no intervalo médio verdadeiro visa equilibrar a recompensa / risco. A negociação de alta frequência capta pequenos movimentos.

Riscos

As rupturas de banda assumem uma reversão média que pode falhar.

As pequenas paradas restringem o potencial de lucro.

Melhorias

Teste períodos de Bollinger mais longos ou confirme fechamentos fora das faixas para melhorar a qualidade.

Combine outros indicadores como o MACD e o KD com o Stochastic para obter melhores sinais de sobrecompra/supervenda.

Considere paradas dinâmicas baseadas na volatilidade em vez de pips fixos.

Conclusão

A estratégia busca identificar reversões combinando Bandas de Bollinger para suporte / resistência e Estocástico para condições de sobrecompra / sobrevenda. Parâmetros de ajuste fino, controle de risco e otimização contínua são fundamentais para o desempenho do mundo real. Os custos de transação devem ser considerados.


/*backtest
start: 2022-10-20 00:00:00
end: 2023-10-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Bollinger Bands & Stochastic Scalping Strategy", shorttitle="BB & Stoch Scalp", overlay=true)

// Bollinger Bands
length = input(20, title="Bollinger Bands Length")
src = input(close, title="Source")
mult = input(2, title="Multiplier")
basis = sma(src, length)
dev = mult * stdev(src, length)
upperBB = basis + dev
lowerBB = basis - dev

// Stochastic
stochLength = input(14, title="Stochastic Length")
smoothK = input(5, title="Stochastic %K Smoothing")
smoothD = input(3, title="Stochastic %D Smoothing")
k = sma(stoch(close, high, low, stochLength), smoothK)
d = sma(k, smoothD)

// Entry Conditions
longCondition = crossover(close, lowerBB) and crossover(k, 20)
shortCondition = crossunder(close, upperBB) and crossunder(k, 80)

// Exit Conditions
takeProfit = input(50, title="Take Profit (pips)")

plotshape(series=longCondition, title="Long Entry Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=shortCondition, title="Short Entry Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Stop Loss
stopLossPips = input(3, title="Stop Loss (pips)")
stopLossLong = close - stopLossPips * syminfo.mintick
stopLossShort = close + stopLossPips * syminfo.mintick

strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)

strategy.exit("Take Profit/Stop Loss", from_entry="Long", profit=takeProfit, stop=stopLossLong)
strategy.exit("Take Profit/Stop Loss", from_entry="Short", profit=takeProfit, stop=stopLossShort)

plot(upperBB, title="Upper Bollinger Band", color=color.red)
plot(lowerBB, title="Lower Bollinger Band", color=color.green)

hline(80, "Overbought", color=color.red)
hline(20, "Oversold", color=color.green)


Mais.