이중 이동평균선 볼린저 밴드 추세 추종 전략
개요
이 전략은 볼린저 밴드와 이동평균선 조합을 활용하여 추세를 판단하고 진입하는 퀀트 트레이딩 전략입니다. 볼린저 밴드의 추세 식별 능력과 이동평균선의 필터링 효과를 결합하여 시장 추세 방향을 효과적으로 식별하고, 추세 방향이 나타난 시장에서 진입합니다.
전략 원리
-
최고가와 최저가를 이용해 볼린저 밴드 채널을 계산하여 시장 추세 방향 판단
- 최고가(high)와 최저가(low)로 채널 상단과 하단 계산
- 채널 중간축은 최고가와 최저가의 평균값
- 채널 내 가격 위치를 기준으로 추세 방향 결정
-
양봉 실체 크기를 계산하여 손절 및 반전 신호 판단
- 양봉 실체는 종가에서 시가를 뺀 절댓값
- N기간 내 양봉 실체 평균값을 계산하여 현재 양봉 실체 크기와 비교, 손절 및 반전 신호 판단
-
추세 방향 확인 후 채널 방향에 따라 진입
- 상승 추세 시 하단 밴드 부근에서 매수 진입
- 하락 추세 시 상단 밴드 부근에서 매도 진입
-
이동평균선을 활용한 필터링으로 허위 신호 방지
- N기간 종가 이동평균선 계산
- 가격이 이동평균선을 돌파할 때만 거래 신호 발생
전략 장점
-
볼린저 밴드 채널과 이동평균선을 결합한 체계적인 추세 판단
볼린저 밴드는 가격 채널과 추세 방향을 명확히 판단하고, 이동평균선이 필터링 역할을 하여 두 기법의 결합이 추세를 효과적으로 식별하며 시장 돌발 상황의 영향을 방지하여 시스템 안정성을 보장합니다. -
양봉 실체 크기를 이용한 손절매로 리스크 효과적 통제
일정 기간 동안의 양봉 실체 크기 평균을 계산하여 현재 기간의 실체 크기와 비교함으로써 추세 반전을 명확히 판단하고 손절매를 통해 포지션을 축소하여 전략 리스크를 효과적으로 관리할 수 있습니다. -
정량적 진입 및 손절 규칙이 명확
전략은 이동평균선과 채널 방향 조건이 일치할 때 진입하고 양봉 실체 크기 규칙을 이용해 손절매함으로써 시스템 전체의 진입 및 손절 규칙이 매우 명확하고 체계화되어 있습니다.
리스크 분석
-
횡보 장세에서의 잠재적 손실 리스크
횡보 장세에서 가격이 상하단 밴드를 여러 번 접촉하며 소액 손실이 반복될 가능성이 있습니다. 이 경우 포지션 규모를 축소하여 단건 손실을 줄여야 합니다. -
손절매 지점이 너무 가까워 변동성 큰 장에서 이탈될 리스크
강한 추세에서 단기 가격 조정이 손절매 규칙을 트리거하여 이탈될 수 있으므로, 이때는 손절매 폭을 적절히 늘려 추세 흐름을 따라가야 합니다. -
파라미터 부적절로 인한 오신호 발생 가능성
이동평균선과 볼린저 밴드의 파라미터 설정이 부적절할 경우 신호 식별이 잘못될 수 있습니다. 파라미터를 적절히 최적화하여 신호의 안정성과 신뢰성을 확보해야 합니다.
전략 최적화 방향
-
이동평균선 기간 파라미터 최적화
이동평균선 파라미터를 조정하여 평활화 정도를 줄이면 추세 변화를 더 빠르게 발견할 수 있습니다. -
다양한 손절매 규칙 효과 테스트
추적 손절매, ATR 손절매 등 여러 손절매 규칙을 시도하여 최적의 손절매 방식을 선정합니다. -
머신러닝 모델 보조 추가
대량의 과거 데이터를 기반으로 모델을 훈련시켜 추세 판단과 거래 신호 발생을 보조합니다.
결론
본 전략은 추세 판단과 리스크 관리를 종합적으로 고려하여 볼린저 밴드 채널과 이동평균선으로 추세를 식별하고, 양봉 실체 크기로 손절매를 수행합니다. 전략은 체계적이며 정량적 규칙이 명확하여 리스크를 효과적으로 통제하고 초과 수익을 얻을 수 있습니다. 향후 파라미터 최적화와 머신러닝 결합 등을 통해 지속적으로 개선하여 전략의 안정성과 신뢰성을 높일 수 있습니다.
/*backtest
start: 2023-12-14 00:00:00
end: 2023-12-21 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Noro's Bands Scalper Strategy v1.3", shorttitle = "Scalper str 1.3", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)
- 1

