
이 전략의 이름은 부린띠와 케이트너 통로의 두 지표를 사용하여 거래 신호를 구성하는 데에서 유래한다. 이는 가격이 통로 경계를 돌파하는 경우를 모니터링하며, 가격이 하향 통로를 돌파 할 때 더하고, 상향 통로를 돌파 할 때 공백을 만든다.
이 전략은 브린 밴드와 케이트너 채널의 두 지표를 사용한다. 브린 밴드는 주가 가격의 이동 평균과 그 표준 차이의 구조로 된 적응 채널이다. 케이트너 채널은 실제 파장을 사용하여 채널 범위를 계산한다.
전략의 거래 논리는, 종결 가격이 부린 대역 하계와 케이트너 통로 하계보다 낮을 때, 다수 헤드 검색 반전을 취하는 것입니다. 종결 가격이 부린 대역 상계와 케이트너 통로 상계보다 높을 때, 다수 헤드 검색 반전을 취하는 것입니다. 더 많은 다수 헤드 후에 중지 손실과 중지 퇴출을 설정합니다.
이 전략은 브린 벨트와 케이트너 채널과 결합하여 비정상적인 변동을 효과적으로 식별할 수 있다. 동시에 쌍채널을 사용하여 필터링 조건을 설정하여 거짓 신호를 방지한다.
이 전략은 불린 띠 또는 케이트너 채널을 단일으로 사용하는 것보다 더 많은 소음을 필터링하고 신호 품질이 높습니다. 이중 채널의 뚫림은 또한 가격 반전의 기회를 적시에 잡을 수 있습니다.
이 전략의 주요 위험은 통로 지표 자체가 뒤쳐져 있다는 것입니다. 통로 경계가 신호를 발동하기 전에 가격이 반전하기 시작할 수 있습니다. 이것은 너무 늦게 입시하거나 반발에 걸려있을 수 있습니다.
또한, 너무 작은 중지 설정은 또한 손실의 위험을 증가시킵니다. 너무 큰 중지 설정은 이상적인 탈퇴 지점을 놓칠 수 있습니다. 이것은 시장 상황에 따라 매개 변수를 조정해야합니다.
이 전략은 동력 지표와 같은 보조 필터링 조건을 최적화할 수 있다. 또한 다른 파라미터 조합을 테스트하여 최적의 파라미터를 찾을 수 있다.
또 다른 최적화 방향은 적응형 상쇄장치를 추가하는 것입니다. 이것은 전략이 시장 환경의 변화에 더 잘 적응하도록 도와줍니다.
이 쌍채널 돌파구 전략은 브린 벨트와 케이트너 통로 지표의 장점을 통합하여 반전 기회를 효과적으로 식별할 수 있습니다. 동시에 쌍채널 필터링과 손해 차단 설정을 통해 위험을 제어합니다. 그것은 고품질, 위험 제어 가능한 정량 거래 전략입니다.
/*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")