Esta estratégia é um sistema de negociação de reversão de tendência baseado no indicador Bollinger Bands, que capta oportunidades de reversão do mercado monitorando a relação entre o preço e as Bandas de Bollinger.
A lógica central é construída sobre a teoria da reversão média. Quando o preço toca a faixa inferior, o sistema considera o mercado sobrevendido e tende a ir longo; quando o preço toca a faixa superior, o sistema considera o mercado sobrecomprado e tende a ir curto. Especificamente:
Esta estratégia capta oportunidades de reversão de mercado através de toques de Bollinger Bands, com lógica clara e controle de risco razoável. Através de configurações de parâmetros apropriadas e regras de negociação abrangentes, a estratégia mostra boa estabilidade em mercados de faixa. No entanto, ao aplicar para negociação ao vivo, deve-se prestar atenção aos riscos de ruptura de tendência. Recomenda-se combinar outros indicadores técnicos para confirmação de negociação e ajustar dinamicamente os parâmetros da estratégia com base nas condições do mercado. A otimização concentra-se principalmente na coordenação de vários períodos, filtragem de tendência e ajuste de parâmetros dinâmicos.
/*backtest start: 2024-11-11 00:00:00 end: 2024-12-11 00:00:00 period: 5h basePeriod: 5h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("5-Min Bollinger Bands Touch Strategy", overlay=true, margin_long=100, margin_short=100) // Input parameters length = input(20, title="Bollinger Bands Length") mult = input(3.4, title="Bollinger Bands Deviation") // Bollinger Bands calculation basis = ta.sma(close, length) dev = mult * ta.stdev(close, length) upper = basis + dev lower = basis - dev // Plot Bollinger Bands plot(basis, color=color.blue, title="Basis") p1 = plot(upper, color=color.red, title="Upper Band") p2 = plot(lower, color=color.green, title="Lower Band") fill(p1, p2, color=color.new(color.gray, 90)) // Bullish buying condition: 5-min low touches lower Bollinger Band bullish_entry = low <= lower and low[1] > lower[1] // Bearish selling condition: 5-min high touches upper Bollinger Band bearish_entry = high >= upper and high[1] < upper[1] // Entry and exit conditions longCondition = bullish_entry shortCondition = bearish_entry // Strategy entries if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Optional: Add exit conditions (you may want to customize these) // Example: Exit long position after a certain profit or loss strategy.close("Long", when = high >= basis) strategy.close("Short", when = low <= basis) // Alerts alertcondition(bullish_entry, title='Bullish BB Touch', message='5-min low touched Lower Bollinger Band') alertcondition(bearish_entry, title='Bearish BB Touch', message='5-min high touched Upper Bollinger Band') // Plot entry points plotshape(bullish_entry, title="Bullish Entry", location=location.belowbar, style=shape.triangleup, size=size.small, color=color.green) plotshape(bearish_entry, title="Bearish Entry", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.red)