이 전략은 트렌드를 설정하기 위해 서로 다른 기간의 이동 평균의 조합을 사용하고 가능한 반전을 예측하기 위해 유한차분 파생 근사법을 사용합니다. 덜 변동적인 통화 쌍의 시간 차트에서 가장 잘 작동합니다.
이 전략은 20~40~80주기 간단한 이동평균을 동시에 사용합니다. 종료 가격이 이 3개의 이동평균보다 높을 때, 그것은 상승세로 정의됩니다. 종료 가격이 이 3개의 이동평균보다 낮을 때, 그것은 하락세로 정의됩니다. 가장 낮은 가격이 이 3개의 이동평균보다 높거나 가장 높은 가격이 이 3개의 이동평균보다 낮을 때만 트렌드가 확인됩니다.
가능한 반전 지점을 예측하기 위해 전략은 40주기 간단한 이동 평균의 첫 번째 파생의 유한차 분모 추정을 사용합니다. 첫 번째 파생이 긍정적 인 경우 안정적인 상승 추세를 나타냅니다. 첫 번째 파생이 부정적인 경우 안정적인 하락 추세를 나타냅니다.
구체적인 거래 규칙은 다음과 같습니다.
빠른 선이 중간 선 위에 있고 중간 선이 느린 선 위에 있고 첫 번째 파생값이 0이 되면, 긴 선으로 이동합니다.
빠른 선이 중간 선 아래와 중간 선이 느린 선 아래에 있고 첫 번째 파생값이 <0일 때, 짧은 선으로 이동합니다.
첫 번째 파생물 <= 0이 되면 긴 포지션을 닫습니다.
첫 번째 파생상태 >= 0이 되면 짧은 포지션을 닫습니다.
이 전략의 장점은 다음과 같습니다.
트렌드를 결정하기 위해 여러 이동 평균을 사용하는 것은 트렌드 판단을 더 신뢰할 수 있게 합니다.
파생상품의 반전점을 예측하는 것은 신속한 스톱 로스 및 더 작은 드라운드를 가능하게 합니다.
논리는 간단하고 이해하기 쉽고 초보자도 쉽게 이해할 수 있습니다.
트렌드를 따라 반전하는 거래만 함정에 빠지지 않고 더 높은 승률을 가지고 있습니다.
이 전략에는 몇 가지 위험도 있습니다.
이동평균 조합은 범위에 묶인 시장에서 잘못된 신호를 줄 수 있습니다.
파생제 반전 신호는 지연할 수 있고 손실을 완전히 피할 수 없습니다.
잘못된 스톱 로스 설정은 손실을 증가시킬 수 있습니다.
이러한 위험을 해결하기 위해 우리는 이동 평균의 매개 변수를 최적화하고, 스톱 로스를 조정하고, 다른 지표와 결합하여 전략을 개선할 수 있습니다.
이 전략은 다음과 같은 측면에서 최적화 될 수 있습니다.
이동 평균 기간을 최적화하여 다른 시장 조건에 더 잘 맞출 수 있습니다.
EMA와 같은 다른 종류의 이동 평균을 시도해보세요.
변동성 지표를 사용하여 동적 스톱을 설정합니다.
거짓 신호를 피하기 위해 확인을 위해 다른 지표를 결합하십시오.
이 이동 평균 조합 트렌드 전략은 트렌드 방향을 결정하기 위해 여러 이동 평균과 변동을 예측하기 위해 파생산을 사용하며 위험을 효과적으로 제어 할 수 있으며 중장기 거래에 적합합니다. 전략은 간단하고 최적화하기가 쉽고, 초보자도 트렌드 다음 전략을 배우고 연습하는 데 이상적입니다. 추가 최적화는 더 나은 결과를 위해 매개 변수를 다른 제품에 더 적응시킬 수 있습니다.
/*backtest start: 2022-12-04 00:00:00 end: 2023-12-10 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Big 3",overlay=true, default_qty_type=strategy.percent_of_equity) // enter on Arrows // take profit on touch with 80 SMA, gray, or at discretion fast = sma(close,20) mid = sma(close,40) slow = sma(close,80) plot(fast,linewidth=1) plot(mid,linewidth=2) plot(slow,linewidth=4) isUptrend = close > fast and close > mid and close > slow isDowntrend = close < fast and close < mid and close < slow confirmed = (low > fast and low > mid and low > slow) or (high < fast and high < mid and high < slow) deriv = 3 * mid[0] - 4 * mid[1] + mid[2] stableUptrend = (fast > mid) and (mid > slow) and (deriv > 0) stableDowntrend = (fast < mid) and (mid < slow) and (deriv < 0) barcolor(isUptrend ? green : isDowntrend ? red : gray) plotshape(not confirmed[1] and confirmed and isUptrend ? close : na,style=shape.arrowup,location=location.belowbar,color=green) plotshape(not confirmed[1] and confirmed and isDowntrend ? close : na,style=shape.arrowdown,location=location.abovebar,color=red) stop = na //stop = input(1000, "Stop") strategy.entry("long", strategy.long, when=(stableUptrend), stop=stop) strategy.close("long", when=(deriv <= 0)) strategy.entry("short", strategy.short, when=(stableDowntrend), stop=stop) strategy.close("short", when=(deriv >= 0))