이 전략은 동적인 수익 목표와 현재 가격과 변동성에 따라 조정되는 손해를 멈추는 것을 사용합니다.
논리는 다음과 같습니다.
한 기간 (예를 들어 20일) 동안의 평균 실제 범위 (ATR) 를 계산합니다.
상승 추세에서, 이익 목표/정지 값은 ATR 곱하기 가장 높은 가격
하락 추세에서 수익 목표/정지 값은 최저 가격과 ATR 곱하기
이윤 목표/정지값을 초과할 때 역거래
가격이 수익 목표/정지 기준을 넘을 때 트렌드 변경
새로운 트렌드 상태에 따라 수익 목표/정지 조정
이 전략은 ATR을 활용하여 동적 인 후속 수익 목표 및 정지를 자동으로 설정합니다. 이것은 적시에 수익을 잠금하고 과도한 손실을 방지 할 수 있습니다.
ATR은 자동으로 수익/정지 수준을 계산합니다.
동적 조정 경로 실시간 가격
적시에 수익 취득 및 중단 통제 위험
ATR 매개 변수 최적화
너무 가깝게 멈춰서면 멈출 위험이 있습니다.
실시간 ATR 변화를 모니터링해야 합니다.
이 전략은 ATR을 사용하여 자동 트레일링을 위해 수익/스톱 수준을 동적으로 설정합니다. ATR 튜닝은 스톱 성능을 향상시킬 수 있습니다. 그러나 너무 긴 스톱에는 주의가 필요합니다.
/*backtest start: 2023-01-01 00:00:00 end: 2023-09-13 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Dhananjay Volatility stop strategy v1.0", overlay=true) length = input(20) mult = input(1) atr_ = atr(length) max1 = max(nz(max_[1]), close) min1 = min(nz(min_[1]), close) is_uptrend_prev = nz(is_uptrend[1], true) stop = is_uptrend_prev ? max1 - mult * atr_ : min1 + mult * atr_ vstop_prev = nz(vstop[1]) vstop1 = is_uptrend_prev ? max(vstop_prev, stop) : min(vstop_prev, stop) is_uptrend = close - vstop1 >= 0 is_trend_changed = is_uptrend != is_uptrend_prev max_ = is_trend_changed ? close : max1 min_ = is_trend_changed ? close : min1 vstop = is_trend_changed ? is_uptrend ? max_ - mult * atr_ : min_ + mult * atr_ : vstop1 plot(vstop, color = is_uptrend ? green : red, style=line, linewidth=2) bearish = close < vstop bullish = close > vstop if (bullish) strategy.entry("Buy", strategy.long, 1) if (bearish) strategy.entry("Sell", strategy.short, 1)