돈치안 트렌드 전략 (Donchian Trend strategy) 은 시장의 잠재적 진입점과 출구점을 식별하기 위해 돈치안 채널 지표를 사용하는 트렌드 추후 접근법이다. 이 전략의 핵심 매개 변수는 높은 가격과 낮은 가격을 계산하기 위한 룩백 기간을 결정하는 돈치안 채널의 길이다.
거래 신호를 더욱 정밀화하기 위해 전략은 두 개의 이동 평균을 포함합니다. 빠른 MA (5 기간) 및 느린 MA (45 기간). 빠른 MA가 느린 MA를 넘을 때 구매 신호가 생성되며 빠른 MA가 느린 MA를 넘을 때 판매 신호가 생성됩니다.
이 전략의 핵심 지표는 돈치안 채널이다. 돈치안 채널은 지정된 기간 동안 가장 높은 최고와 가장 낮은 최저치를 취함으로써 그래프화되며, 상위 및 하위 채널 라인이 각각 그 최고와 최저치를 연결합니다. 채널의 폭은 시장의 변동성을 나타냅니다.
이 전략은 트렌드 방향을 결정하기 위해 돈치안 채널을 이용한다. 구체적으로, 상위 채널 위의 가격은 상승세를 나타내고, 전략은 가격이 상위 채널에 접근할 다음 번에 긴 포지션을 설정하는 것을 고려할 것이다. 반대로, 하위 채널 아래의 가격은 하락세를 나타내고, 전략은 가격이 다음 번에 하위 채널에 접근할 때 짧은 포지션을 구축하는 것을 고려할 것이다.
가짜 브레이크오웃을 필터링하기 위해 전략은 빠른 이동 평균 (5 기간) 과 느린 이동 평균 (45 기간) 을 결합하여 거래 신호를 생성합니다. 빠른 MA가 느린 MA를 넘을 때 구매 신호가 생성됩니다. 빠른 MA가 느린 MA를 넘을 때 판매 신호가 생성됩니다.
스톱 로스 출구는 진입 후 다시 돈치안 채널에 접근하는 가격에 따라 설정됩니다.
이 전략의 중요한 장점은 트렌드가 확립된 후에야 시장에 진입하여 잘못된 파업에 잘못 구매하여 발생하는 손실을 효과적으로 줄이는 것입니다. 돈치안 채널 자체는 이미 매우 강력한 트렌드 식별 기능을 가지고 있으며 필터링을위한 이중 이동 평균과 결합하면 신뢰도가 높습니다.
또한, 돈치안 채널 매개 변수의 조정 가능성은 이 전략에 유연성을 제공합니다. 채널 길이가 길어질수록, 참조 역사 데이터 시간이 길어질수록, 트렌드 판단이 더 보수적이며, 잘못된 브레이크오웃을 피할 확률이 높지만, 일부 단기 기회는 놓칠 수 있습니다. 우리는 시장 조건과 개인적인 선호도에 따라 채널 매개 변수를 선택할 수 있습니다.
이 전략의 최대 마감도 잘 통제됩니다. 특성을 따라가는 추세 덕분에 시장의 큰 변동 중에 손실을 효과적으로 제어 할 수 있습니다.
이 전략의 주요 위험은 트렌드를 잘못 판단하여 잘못된 시간에 긴 또는 짧은 포지션을 설정하는 것입니다. 이것은 가격이 더 큰 반전 또는 하락을 숨겼을 때 발생할 수 있습니다. 우리는 이동 평균 매개 변수를 적절하게 조정함으로써 그러한 상황을 줄일 수 있습니다.
또 다른 잠재적인 위험은 범위 제한 시장에서 과도한 거래입니다. 이것은 거래 수와 수수료 비용을 증가시킬 것입니다. 우리는 스톱 로스 마진을 증가시키거나 보유 기간을 적절히 연장함으로써 이를 해결할 수 있습니다.
이 전략은 다음과 같은 측면에 주로 초점을 맞추어 많은 최적화 공간을 가지고 있습니다.
돈치안 채널의 길이를 테스트해서 최적의 매개 변수를 찾을 수 있습니다
이동 평균 기간은 더 많은 조합을 시도하여
손실을 멈추는 방법 절대점 또는 ATR 중지 시도할 수 있습니다.
엔트리 필터. 우리는 기본 거래 신호 외에도 필터링을 위해 RSI, MACD 등과 같은 지표를 추가 할 수 있습니다.
요약하자면, 돈치안 트렌드 전략은 트렌드 방향을 결정하기 위해 돈치안 채널을 활용하고, 진입에 대한 이중 이동 평균을 보충하여 전략에 따른 안정적인 트렌드로 만들어진다. 트렌드가 명확하게 형성되고 손실을 효과적으로 제어한 후에야 시장에 진출한다. 동시에, 전략은 시장 조건에 따라 조정할 수 있는 매개 변수에 대한 큰 최적화 공간을 가지고 있다. 위험을 효과적으로 제어하면 이 전략은 안정적인 장기 수익을 얻을 수 있다.
/*backtest start: 2022-11-21 00:00:00 end: 2023-11-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="DON-SS-TREND", overlay=true,default_qty_type = strategy.percent_of_equity,default_qty_value=100,initial_capital=1000,pyramiding=0,commission_value=0.01)//@version=5 length = input.int(42, minval=1) lower = ta.lowest(length) upper = ta.highest(length) basis = math.avg(upper, lower) updiff = upper - close downdiff = lower - close dontrend = updiff + downdiff emalength = input.int(45, minval=1) emax = ta.ema(-dontrend,emalength) plot(-dontrend, "DON-SS", color=color.blue,style = plot.style_histogram) plot(emax, "EMA-SS", color=color.black) emalength1 = input.int(5, minval=1) emax1 = ta.ema(-dontrend,emalength1) plot(emax1, "EMA-FF", color=color.black) /////////////////////// STRATEGY // Check for Long Entry longCondition = ta.crossover(emax1,emax) if longCondition strategy.entry('Long', strategy.long, comment = "BUY") buyclose = ta.crossunder(emax1,emax) // Exit condition with trailing stop and take profit strategy.close('Long', when=buyclose, comment = "BUY STOP") // Check for Short Entry ShortCondition = ta.crossunder(emax1,emax) if ShortCondition strategy.entry('Short', strategy.short, comment = "SELL") sellclose = ta.crossover(emax1,emax) // Exit condition with trailing stop and take profit strategy.close('Short', when=sellclose, comment = "SELL STOP")