동적 지지 저항 돌파 추세 전략
개요
이 전략은 장기 지지/저항 돌파를 기반으로 추세 방향을 판단하고, 지지/저항 돌파 시점을 진입 기회로 활용합니다. 꺾은선을 사용하여 고점과 저점을 정의하고, 2개의 캔들로 고점/저점을 확인하므로 2캔들의 지연이 있습니다. 일정 기간(기본값 21) 내 고점과 저점의 SMA 차이를 계산하여 보조 지지/저항선으로 사용합니다. 이 아이디어는 synapticEx의 Nebula-Advanced-Dynamic-Support-Resistance 지표에서 비롯되었습니다. 가격이 동적 지지/저항을 돌파할 때 롱/숏 포지션을 취합니다.
전략 원리
이 전략은 다음 로직을 사용하여 추세와 거래 신호를 판단합니다:
-
꺾은선을 사용하여 고점/저점 판단: 현재 5개 캔들 중 5번째 캔들의 저점이 4번째보다 낮고, 4번째가 3번째보다 낮으며, 3번째가 2번째보다 높고, 2번째가 1번째보다 높을 때 3번째 캔들의 저점을 최저 저점으로 확인합니다. 고점도 동일한 방식으로 판단합니다.
-
일정 기간(기본값 21) 내 고점 개수 hn과 저점 개수 ln을 계산합니다. hn>0이고 ln>0이면 해당 기간 내 고점 평균 hsum/hn과 저점 평균 lsum/ln을 계산합니다. 이 둘의 차이 r을 보조 지지/저항선으로 사용합니다.
-
종가와 동적 저항 lvalr 및 지지 hvalr을 비교하여 추세 방향을 판단합니다. 종가가 둘 중 하나를 넘으면 유효 돌파로 간주합니다.
-
동적 저항선을 유효하게 돌파하면 롱 포지션을, 동적 지지선을 유효하게 돌파하면 숏 포지션을 진입합니다.
장점 분석
이 전략은 다음과 같은 장점이 있습니다:
-
꺾은선을 사용하여 지지/저항을 보다 정확하게 판단하므로 잘못된 돌파를 피할 수 있습니다.
-
장기 통계 기반의 지지/저항은 참고 가치가 높아 포지션 리스크를 줄일 수 있습니다.
-
보조 지지/저항을 도입하여 돌파의 유효성을 높입니다.
-
전략 로직이 단순 명료하여 이해와 구현이 쉽고, 알고리즘 트레이딩에 적합합니다.
-
지지/저항 통계 기간을 사용자 정의할 수 있어 다양한 주기와 종목에 적용 가능합니다.
리스크 분석
이 전략은 다음과 같은 리스크도 존재합니다:
-
꺾은선으로 지지/저항점을 확정하는 데 2캔들의 지연이 발생하여 최적 진입 시점을 놓칠 수 있습니다.
-
예측된 지지/저항은 참고용일 뿐, 설명할 수 없는 가격 돌파가 발생할 수 있습니다.
-
통계 기간이 부적절하면 지지/저항선이 무력화될 수 있습니다.
-
돌파 후 가격 조정으로 인해 손절매가 발생할 수 있습니다.
-
롱/숏 진입 후 가격이 급격히 변동하여 더 큰 손실이 발생할 수 있습니다.
이에 대응하는 리스크 관리 및 최적화 방안은 다음과 같습니다:
-
통계 기간을 적절히 단축하여 지연을 줄입니다.
-
더 많은 요소를 결합하여 지지/저항선을 예측합니다.
-
다양한 주기 매개변수의 안정성을 테스트합니다.
-
합리적인 손절매를 설정합니다.
-
포지션 관리 방법을 활용하여 단일 손실을 제한합니다.
최적화 방향
이 전략은 다음과 같은 측면에서 최적화할 수 있습니다:
-
머신러닝 방법을 사용하여 지지/저항을 예측하면 돌파 성공률을 높일 수 있습니다.
-
거래량 CONF 지표를 결합하여 돌파 유효성을 판단합니다. 미결제약정이 많은 돌파는 더 신뢰할 수 있습니다.
-
일봉, 주봉 등 서로 다른 주기별로 지지/저항을 분류하여 통계를 내면 지지/저항선의 유효성이 높아집니다.
-
수익 포지션에 추가 진입하고 트레일링 스탑을 설정하여 손익을 균형 있게 관리합니다. 이를 통해 수익을 보호하면서 더 큰 이익을 추구할 수 있습니다.
-
이동평균선 지표를 결합하여 추세를 판단하고, 명확한 추세가 없을 때 무분별한 롱/숏을 피합니다.
요약
이 전략은 전반적으로 비교적 안정적이고 신뢰할 수 있는 추세 추종 전략입니다. 추세 방향을 올바르게 판단할 확률이 높고, 일정한 리스크 관리 조치를 갖추고 있습니다. 다만 일부 지연이 존재하여 모든 롱/숏이 수익으로 이어질 수 있다고 100% 보장할 수는 없습니다. 따라서 숙련된 알고리즘 트레이더가 자신의 전략과 결합하여 활용하는 것이 더 적합합니다. 통계 기간 매개변수를 최적화하고 다른 지표나 모델과 결합하면 이 전략은 효율적인 추세 추종 전략이 될 수 있습니다.
/*backtest
start: 2023-11-25 00:00:00
end: 2023-12-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("SR TREND STRATEGY", shorttitle="SR TREND", overlay=true, calc_on_order_fills=true)
//based on by synapticEx SR indicator https://www.tradingview.com/script/O0F675Kv-Nebula-Advanced-Dynamic-Support-Resistance/
length = input(title="SR lookbak length", type=input.integer, defval=21)- 1

