볼링거 밴드 브레이크아웃 전략은 긴 전동력을 추구하는 전략이다. 그것은 가격 모멘텀을 판단하기 위해 볼링거 밴드의 상부와 하부 밴드를 사용하며 가격이 상부 밴드 이상으로 돌파하면 긴 경로로 이동하고 가격이 하부 밴드 또는 이동 평균을 깨면 포지션을 닫는다.
이 전략은 먼저 N일 이동 평균을 기준으로 계산하고, K 곱하기 기준선 위와 아래의 표준편차를 더하고
볼링거 밴드의 상부 및 하부 대역은 가격 데이터의 분포의 대부분을 동적으로 포함 할 수 있기 때문에 현재 시장 가격의 합리적인 변동 범위를 나타냅니다. 가격이이 합리적인 변동 범위를 통과하면 시장에서 특이한 일이 일어나고 위치가 그에 따라 조정되어야한다는 것을 의미합니다. 이것은 전략의 기본 논리입니다.
이 전략은 다음과 같은 장점을 가지고 있습니다.
이 전략은 또한 몇 가지 위험을 안고 있습니다.
이러한 위험을 통제하기 위해 MACD와 같은 트렌드 지표를 포함하거나 나쁜 신호를 줄이기 위해 바인저 밴드를 좁히는 매개 변수를 적절히 조정할 수 있습니다.
이 전략은 다음 측면에서도 최적화 될 수 있습니다.
위의 최적화를 통해 전략의 안정성을 더욱 향상시키고 거래 위험을 줄일 수 있습니다.
요약하자면 볼링거 밴드 브레이크아웃 전략은 상당히 고전적인 트렌드 추격 전략이다. 명확한 논리와 쉬운 자동화를 가지고 있다. 그러나 여전히 몇 가지 결함이 있어 복잡한 변화하는 시장 환경에 적응하기 위해 추가 최적화가 필요하다. 다른 지표와 메커니즘과 적절하게 결합하면 결과를 크게 향상시킬 수 있다.
/*backtest start: 2023-01-22 00:00:00 end: 2024-01-28 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Senthaamizh //@version=4 strategy(title="Bollinger Band Breakout", shorttitle = "BB-BO", overlay=true) source = close length = input(20, minval=1, title = "Period") //Length of the Bollinger Band mult = input(1.5, minval=0.001, maxval=50, title = "Standard Deviation") // Use 1.5 SD for 20 period MA; Use 2 SD for 10 period MA exit = input(1, minval=1, maxval=2,title = "Exit Option") // Use Option 1 to exit using lower band; Use Option 2 to exit using moving average basis = sma(source, length) dev = mult * stdev(source, length) upper = basis + dev lower = basis - dev if (crossover(source, upper)) strategy.entry("Long", strategy.long, qty=1) if(exit==1) if (crossunder(source, lower)) strategy.close("Long") if(exit==2) //basis is good for N50 but lower is good for BN (High volatility) if (crossunder(source, basis)) strategy.close("Long") plot(basis, color=color.red,title= "SMA") p1 = plot(upper, color=color.blue,title= "UB") p2 = plot(lower, color=color.blue,title= "LB") fill(p1, p2)