볼린저 밴드 돌파 회귀 거래 전략
1
Follow
1802
Followers
개요
이 전략은 볼린저 밴드 지표를 기반으로 하며, 주요 아이디어는 가격이 볼린저 밴드 상단 또는 하단을 돌파한 후 가격이 밴드 내부로 되돌아올 때까지 기다렸다가, 되돌아온 지점에서 돌파 방향과 동일한 포지션을 진입하는 것입니다. 이 전략은 가격이 극단적인 영역에 도달하면 종종 반전하는 경향이 있다는 점을 활용하여, 볼린저 밴드 돌파와 되돌림의 조합 조건을 통해 시장 전환점을 포착함으로써 더 높은 승률을 얻고자 합니다.
전략 원리
- 볼린저 밴드의 중간선, 상단선, 하단선을 계산합니다. 중간선은 이동평균선이며, 상단선과 하단선은 중간선에 일정 표준편차를 더하거나 빼서 구합니다.
- 가격이 볼린저 밴드의 상단선 또는 하단선을 돌파했는지 판단합니다. 종가가 상단선을 초과하면 상향 돌파, 종가가 하단선 아래로 떨어지면 하향 돌파로 간주합니다.
- 상향 돌파가 발생하면 해당 돌파 캔들의 최고가를 peak로 기록하고, 하향 돌파가 발생하면 해당 돌파 캔들의 최저가를 peak로 기록합니다. peak는 이후 가격이 되돌아왔는지 판단하는 데 사용됩니다.
- 돌파 발생 후 가격이 볼린저 밴드 내부로 되돌아올 때까지 기다립니다. 이때 종가가 상단선과 하단선 사이에 위치하면 가격이 되돌아왔다고 간주합니다.
- 가격이 되돌아오는 시점에, 이전 캔들이 상향 돌파(break_up[1] and inside)이면 매수, 이전 캔들이 하향 돌파(break_down[1] and inside)이면 매도 포지션을 진입합니다.
- 포지션 관리: 매수 포지션 보유 중 종가가 중간선을 상향 돌파하면 매수 포지션 청산, 매도 포지션 보유 중 종가가 중간선을 하향 돌파하면 매도 포지션 청산합니다.
장점 분석
- 볼린저 밴드는 적응성이 뛰어나 가격 변동에 따라 동적으로 조정되므로 추세와 변동성을 포착하는 데 유용합니다.
- 단순 볼린저 밴드 돌파 전략에 비해 되돌림 조건을 추가하여 추세 추격 매매를 어느 정도 방지하고 진입 품질을 개선합니다.
- 청산 조건을 중간선으로 설정하여 간단하고 사용하기 쉬우며 이익 보호에 효과적입니다.
- 볼린저 밴드의 길이, 표준편차 배수 등 파라미터를 사용자 정의할 수 있어 유연성이 높습니다.
위험 분석
- 볼린저 밴드 파라미터를 부적절하게 선택하면 진입이 너무 이르거나 늦어져 전략 성과에 영향을 미칠 수 있습니다. 파라미터 최적화를 통해 완화할 수 있습니다.
- 가격이 볼린저 밴드 주변에서 횡보할 때 잦은 진입 및 청산이 발생하여 거래 비용이 증가할 수 있습니다.
- 추세가 매우 강할 경우 가격이 오랜 시간 동안 볼린저 밴드 내부로 되돌아오지 않아 추세 이익을 놓칠 수 있습니다.
- 단순히 볼린저 밴드 지표만 사용하는 것은 특정 종목이나 시장 상황에서 효과적이지 않을 수 있으므로 추가 신호와 결합해야 합니다.
최적화 방향
- 가격이 볼린저 밴드 위에서 일정 시간 동안 유지된 후 돌파하는 것이 더 신뢰할 수 있는 조건, 또는 이동평균선 기울기, ADX와 같은 추세 판단 지표를 보조 필터로 도입할 수 있습니다.
- 횡보장에서 지정가 주문과 타이머를 추가하여 무분별한 진입을 방지할 수 있습니다.
- 청산 측면에서 ATR이나 이동평균선을 결합하여 청산 시점을 더 잘 제어할 수 있습니다.
- 다양한 대상과 주기에 대해 파라미터 최적화 및 특성 분석을 수행하여 적합한 거래 대상과 주기를 선택합니다.
- 포지션 관리(예: 변동성 수축 시 포지션 확대, 변동성 확대 시 포지션 축소)를 도입할 수 있습니다.
요약
볼린저 밴드 돌파 및 되돌림 거래 전략은 간단하면서도 실용적인 퀀트 트레이딩 전략입니다. 가격이 극단적인 상황에 반응하는 특성을 활용하여 볼린저 밴드 도구로 진입 및 청산 조건을 구성함으로써 일정 수준에서 추세 시작점과 종료점을 포착하고 잦은 거래를 제어할 수 있습니다. 동시에 이 전략은 파라미터 선택 문제, 횡보장에서의 성능 저하, 추세 파악 부족 등의 한계가 있습니다. 세부 최적화와 다른 신호와의 결합을 통해 전략의 적응성과 강건성을 더욱 향상시킬 수 있을 것으로 기대됩니다.
Source
Pine
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-27 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(shorttitle="BB", title="Bollinger Bands", overlay=true)
length = input.int(20, minval=1)
maType = input.string("SMA", "Basis MA Type", options = ["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])Strategy parameters
Related strategies
Comment
All comments (0)
No data
- 1

