A estratégia é nomeada após o uso de dois indicadores, Bollinger Bands e Keltner Channels, para gerar sinais de negociação.
A estratégia combina Bandas de Bollinger e Canais de Keltner. Bandas de Bollinger são canais adaptativos traçados em uma linha média móvel mais / menos desvios padrão.
A lógica de negociação é ir longo quando o preço de fechamento cai abaixo da faixa de Bollinger inferior e do canal de Keltner inferior, antecipando uma reversão.
Os filtros de canal duplo ajudam a evitar sinais falsos. As paradas e os lucros também ajudam no controle de risco.
Em comparação com o uso de apenas Bandas de Bollinger ou Canais de Keltner, esta estratégia filtra mais ruído para sinais de maior qualidade.
Um risco importante é a natureza atrasada dos indicadores do canal. Os preços podem começar a reverter antes de atingir os limites do canal que desencadeiam os sinais. Isso pode resultar em entradas tardias ou ser pego em retrações.
Os riscos associados às paradas demasiado apertadas e aos lucros excessivos são outros riscos que devem ser ajustados em função das condições do mercado.
A estratégia pode ser otimizada adicionando filtros auxiliares como osciladores de momento.
A incorporação de paradas adaptativas e tomada de lucros é outra via de melhoria, ajudando a estratégia a se adaptar melhor aos mercados em evolução.
Esta estratégia de ruptura de canal duplo combina os pontos fortes das bandas de Bollinger e dos canais de Keltner para identificar efetivamente oportunidades de reversão, controlando os riscos através de filtros de canal duplo e configurações de stop/take profit.
/*backtest start: 2023-01-31 00:00:00 end: 2024-01-31 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Estratégia de Compra/Venda BB e KC", overlay=true) // Parâmetros das Bandas de Bollinger bollinger_length = input(20, title="Comprimento das Bandas de Bollinger", minval=1) bollinger_deviation = input(2.0, title="Desvio Padrão das Bandas de Bollinger", minval=0.1) // Parâmetros dos Canais de Keltner keltner_length = input(20, title="Comprimento dos Canais de Keltner", minval=1) atr_multiplier = input(1.5, title="Multiplicador ATR dos Canais de Keltner", minval=0.1) // Take Profit e Stop Loss em termos financeiros take_profit = input(10.0, title="Take Profit (em $)", step=1) stop_loss = input(20.0, title="Stop Loss (em $)", step=1) // Cálculos das Bandas de Bollinger basis_bb = sma(close, bollinger_length) dev_bb = sma(stdev(close, bollinger_length), bollinger_length) upper_bb = basis_bb + dev_bb * bollinger_deviation lower_bb = basis_bb - dev_bb * bollinger_deviation // Cálculos dos Canais de Keltner basis_kc = sma(close, keltner_length) atr_kc = sma(atr(keltner_length), keltner_length) upper_kc = basis_kc + atr_multiplier * atr_kc lower_kc = basis_kc - atr_multiplier * atr_kc // Condição de Compra buy_condition = close < lower_bb and close < lower_kc // Condição de Venda sell_condition = close > upper_bb and close > upper_kc // Estratégia de Compra/Venda com TP e SL if (buy_condition) strategy.entry("Compra", strategy.long) strategy.exit("Take Profit/Stop Loss", from_entry="Compra", profit=take_profit, loss=stop_loss) if (sell_condition) strategy.entry("Venda", strategy.short) strategy.exit("Take Profit/Stop Loss", from_entry="Venda", profit=take_profit, loss=stop_loss) // Plot das Bandas de Bollinger e dos Canais de Keltner plot(upper_bb, color=color.rgb(47, 33, 243), title="Banda Superior de Bollinger") plot(lower_bb, color=color.rgb(89, 33, 243), title="Banda Inferior de Bollinger") plot(upper_kc, color=color.rgb(200, 255, 0), title="Canal Superior de Keltner") plot(lower_kc, color=color.rgb(225, 255, 0), title="Canal Inferior de Keltner")