A estratégia de ruptura das Bandas de Bollinger é uma estratégia quantitativa de negociação simples baseada no indicador de Bandas de Bollinger. A estratégia utiliza os níveis de suporte e resistência dinâmicos fornecidos pelas bandas superior e inferior das Bandas de Bollinger para definir regras de entrada para posições longas quando os preços quebram as bandas e regras de saída quando os preços quebram as bandas, com o objetivo de capturar oportunidades de tendência nos movimentos de preços.
O indicador de Bandas de Bollinger foi desenvolvido por John Bollinger na década de 1980. Ele consiste em uma média móvel de n períodos e m vezes o desvio padrão acima e abaixo dela. A média móvel atua como o ponto médio, enquanto o desvio padrão responde pela volatilidade.
As regras de saída são: para as posições longas existentes, liquidar quando o preço de fechamento ultrapassar a faixa superior; para as posições curtas existentes, cobrir quando o preço de fechamento ultrapassar a faixa inferior.
Trata-se de uma estratégia de seguimento de tendências, que visa lucrar com movimentos de preços direcionais sustentados, captando a continuação da tendência sinalizada pela quebra das Bandas de Bollinger.
A utilização de Bandas de Bollinger como níveis dinâmicos de suporte/resistência em vez de preços fixos torna a estratégia adaptável à evolução das condições de mercado.
As decisões baseiam-se tanto nos níveis de preços como nas condições de volatilidade, evitando alguns falsos sinais.
A estrutura de fuga é simples e intuitiva.
O ajustamento flexível dos parâmetros torna a estratégia adaptável a todos os produtos e mercados.
O mau ajuste dos parâmetros dos indicadores pode causar negociações demasiado frequentes e custos desnecessários.
Os sinais de ruptura podem ser apenas flutuações de preços a curto prazo em vez de tendências sustentáveis.
A ausência de stop loss expõe a estratégia a riscos de perdas descontroladas.
O sistema puramente técnico perde as inversões de tendência fundamentais.
O desempenho pode variar entre diferentes produtos sem ajustamentos.
Otimizar os parâmetros para aumentar a robustez.
Incorporar ordens de stop loss para limitar as perdas.
Construir um sistema multi-temporário para melhorar as decisões.
Adicione filtros de volume para evitar sinais falsos.
Complementar os fundamentos para melhores entradas de tempo e posições de tamanho.
Avalie a estratégia em mais produtos para testar a adaptabilidade.
A estratégia de breakout Bollinger Bands fornece uma abordagem simples de tendência seguindo o impulso sinalizado por breakouts baseados em indicadores. Sua força reside na identificação dinâmica de continuações de tendência. Controles de risco adequados e melhorias de robustez podem transformá-la em uma estratégia sistemática viável.
/*backtest start: 2024-01-20 00:00:00 end: 2024-02-19 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Bands Strategy", overlay=true) length = input.int(20, title="Bollinger Bands Length", minval=1) maType = input.string("SMA", title="Basis MA Type", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"]) src = input(close, title="Source") mult = input.float(2.0, title="StdDev Multiplier", minval=0.001, maxval=50) offset = input.int(0, title="Offset", minval=-500, maxval=500) ma(source, length, _type) => switch _type "SMA" => ta.sma(source, length) "EMA" => ta.ema(source, length) "SMMA (RMA)" => ta.rma(source, length) "WMA" => ta.wma(source, length) "VWMA" => ta.vwma(source, length) basis = ma(src, length, maType) dev = mult * ta.stdev(src, length) upper = basis + dev + offset lower = basis - dev - offset // Define strategy entry and exit conditions strategy.entry("Buy", strategy.long, when=close < lower) strategy.close("Buy", when=close > upper) strategy.entry("Sell", strategy.short, when=close > upper) strategy.close("Sell", when=close < lower) // Plotting the Bollinger Bands plot(basis, color=color.blue, title="Basis") plot(upper, color=color.red, title="Upper Band") plot(lower, color=color.green, title="Lower Band")