La estrategia lleva el nombre de su uso de dos indicadores, Bollinger Bands y Keltner Channels, para generar señales comerciales.
La estrategia combina las bandas de Bollinger y los canales de Keltner. Las bandas de Bollinger son canales adaptativos trazados en una línea media móvil más / menos desviaciones estándar.
La lógica de negociación es ir largo cuando el precio de cierre cae por debajo de la banda inferior de Bollinger y el canal inferior de Keltner, anticipando una reversión.
Al combinar dos canales, la estrategia identifica de manera efectiva los cambios anormales de precios. Los filtros de doble canal ayudan a evitar señales falsas.
En comparación con el uso de solo bandas de Bollinger o canales de Keltner, esta estrategia filtra más ruido para señales de mayor calidad.
Un riesgo clave es la naturaleza rezagada de los indicadores de canal. Los precios podrían comenzar a revertirse antes de alcanzar los límites del canal que desencadenan las señales. Esto puede resultar en entradas tardías o ser atrapados en retrocesos.
Los paros demasiado ajustados y las ganancias excesivamente amplias son otros riesgos que deben ajustarse según las condiciones del mercado.
La estrategia se puede optimizar añadiendo filtros auxiliares como osciladores de momento.
La incorporación de paradas adaptativas y tomar beneficios es otra vía de mejora, ayudando a la estrategia a adaptarse mejor a la evolución de los mercados.
Esta estrategia de ruptura de doble canal combina los puntos fuertes de las bandas de Bollinger y los canales de Keltner para identificar eficazmente las oportunidades de reversión, controlando al mismo tiempo los riesgos a través de filtros de doble canal y configuraciones 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")