동적 구간 돌파 전략
개요
본 전략은 볼린저 밴드(Bollinger Bands) 지표를 기반으로 설계된 동적 돌파 트레이딩 전략입니다. 캔들 몸통 필터와 색상 필터 조건을 결합하여 볼린저 밴드 하단 밴드 근처에서 돌파 진입 기회를 찾습니다. 청산은 몸통 필터를 기반으로 합니다. 이 전략은 포지션 수와 리스크를 자동으로 관리합니다.
전략 원리
지표 계산
먼저 저점을 기준으로 볼린저 밴드의 기준선과 하단 밴드를 계산합니다.
src = low
basis = sma(src, length)
dev = mult * stdev(src, length)
lower = basis - dev
여기서 src는 저점, length는 계산 기간, basis는 이동평균선, dev는 표준편차, lower는 하단 밴드입니다.
mult는 일반적으로 2로 설정되며, 하단 밴드가 1 표준편차임을 의미합니다.
필터 조건
전략은 두 가지 필터 조건을 추가합니다.
캔들 몸통 필터
몸통 크기 nbody와 그 평균값 abody를 사용하여 판단하며, nbody가 abody의 절반보다 클 때만 거래 신호를 생성합니다.
색상 필터
캔들이 양봉(close > open)일 때는 매수하지 않습니다. 이는 hbox 상단의 가짜 돌파를 피하기 위함입니다.
거래 신호
다음 조건을 충족할 때 매수 신호가 발생합니다.
low < lower // 가격이 하단 밴드 돌파
close < open or usecol == false // 색상 필터
nbody > abody / 2 or usebod == false // 몸통 필터
몸통 크기가 다시 평균의 절반보다 클 때 청산이 이루어집니다.
close > open and nbody > abody / 2
포지션 관리
전략은 거래 수량을 자동으로 계산하여 지수적 증가를 실현합니다.
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1]
리스크 관리
연, 월, 일 조건을 추가하여 지정된 날짜 범위 내에서만 거래하도록 제한합니다.
when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))
전략의 장점
동적 거래 구간
볼린저 밴드 하단 밴드는 동적인 지지 영역으로, 시장 추세 이후 반등 기회를 포착할 수 있습니다.
이중 필터 메커니즘
캔들 몸통과 색상 판단을 결합하여 가짜 돌파를 효과적으로 걸러냅니다.
자동 포지션 관리
포지션이 100%까지 지수적으로 증가하며 리스크를 자동으로 관리합니다.
거래 시간 범위 지정
날짜 범위를 설정하여 특정 시점의 시장 변동성으로 인한 리스크를 줄입니다.
전략의 위험
공회전 시간 과다
시장이 장기 강세장일 때 볼린저 밴드 중간 밴드와 상단 밴드가 빠르게 상승하므로, 공회전 시간이 길어질 수 있습니다.
해결 방법
추세 지표를 결합하여 중장기적으로 강세장으로 판단될 때 전략을 일시 중단함으로써 긴 공회전을 피할 수 있습니다.
돌파 실패
하단 밴드 돌파 후 조정이 발생하거나 하단 밴드를 재시험하는 경우가 있을 수 있습니다.
해결 방법
지지선 아래 일정 비율에 손절매 라인을 추가합니다. 또는 재시험 실패 판단 로직을 추가하여 빠르게 손절합니다.
전략 최적화
손절매 로직 추가
백테스트 데이터 상황에 따라 합리적인 지지선 아래 손절매 위치를 설정합니다.
필터 조건 매개변수 최적화
몸통 필터의 abody 기간, 색상 필터 사용 등을 조정합니다. 최적의 매개변수 조합을 찾습니다.
추세 판단 결합
중장기 추세 판단을 추가하여 강세장으로 판단될 때 전략 실행을 중단합니다. 공회전 시간을 줄입니다.
요약
본 전략은 볼린저 밴드 지지를 결합하여 캔들 몸통 필터, 색상 필터, 돌파 거래의 전략 로직을 설계하여 높은 확률의 반등 기회를 찾습니다. 실제 적용 시 백테스트 결과에 따라 매개변수를 지속적으로 최적화하고 손절매 및 추세 판단 모듈을 추가하여 리스크를 통제함으로써 좋은 성과를 얻을 수 있습니다.
- 1

