Die Strategie ist nach der Verwendung von zwei Indikatoren, Bollinger Bands und Keltner Channels, benannt, um Handelssignale zu generieren.
Die Strategie kombiniert Bollinger-Bänder und Keltner-Kanäle. Bollinger-Bänder sind adaptive Kanäle, die an einer gleitenden Durchschnittslinie plus/minus Standardabweichungen gezeichnet werden. Keltner-Kanäle verwenden den wahren Bereich, um die Kanalbreite zu berechnen.
Die Handelslogik besteht darin, lang zu gehen, wenn der Schlusskurs unterhalb der unteren Bollinger Band und des unteren Keltner Channel fällt, um eine Umkehrung zu erwarten.
Durch die Kombination von zwei Kanälen identifiziert die Strategie abnormale Kursschwankungen effektiv. Die Dual-Channel-Filter helfen, falsche Signale zu vermeiden. Die Stops und Take-Profits helfen auch bei der Risikokontrolle.
Im Vergleich zur Verwendung von Bollinger-Bändern oder Keltner-Kanälen filtert diese Strategie mehr Geräusche für qualitativ hochwertigere Signale aus.
Ein wichtiges Risiko ist die Verzögerung der Kanalindikatoren. Die Preise könnten anfangen, sich umzukehren, bevor sie die Kanalgrenzen erreichen, die Signale auslösen. Dies kann zu verspäteten Einträgen führen oder in Pullbacks gefangen werden.
Zu enge Stopps und zu breite Gewinnnahmen sind weitere Risiken, die je nach Marktbedingungen angepasst werden müssen.
Die Strategie kann durch das Hinzufügen von Hilfsfiltern wie Impuls-Oszillatoren optimiert werden.
Die Einbeziehung von adaptive Stops und Take-Profits ist ein weiterer Weg zur Verbesserung, der die Strategie besser an sich entwickelnde Märkte anpasst.
Diese Dual-Channel-Breakout-Strategie kombiniert die Stärken von Bollinger-Bändern und Keltner-Kanälen, um Umkehrmöglichkeiten effektiv zu identifizieren und gleichzeitig Risiken über Dual-Channel-Filter und Stop/Take-Profit-Einstellungen zu kontrollieren.
/*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")