이 전략은 여러 이동 평균과 스토카스틱 오시일레이터 크로스오버 신호를 결합한 양적 거래 접근법이다. 이는 스토카스틱 오시일레이터의 과반 구매/ 과반 판매 특성과 함께 단기, 중기 및 장기 이동 평균을 활용하여 여러 신호 확인을 통해 시장 트렌드 역전 및 거래 기회를 포착합니다. 전략의 핵심 강점은 신호 신뢰성을 향상시키기 위해 여러 가지 기술적 지표를 사용하여 크로스 검증하는 데 있습니다.
이 전략은 5개의 이동 평균 (3일, 5일, 6일, 10일, 80일) 과 스토카스틱 오시레이터를 사용한다. 거래 신호는 다음과 같은 조건에 따라 트리거된다.
이 전략은 여러 이동 평균과 스토카스틱 오시레이터의 조합을 통해 포괄적인 거래 시스템을 구축합니다. 이 전략의 강점은 신호 신뢰성과 시스템 안정성, 거래 비용과 시장 조건 적응성에주의를 기울여야만합니다. 지속적인 최적화와 정교화를 통해이 전략은 실제 거래 조건에서 안정적인 수익을 달성하는 것을 약속합니다.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-10 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="Moving Average and Stochastic Crossover Strategy", overlay=true) // Calculate the moving averages ma3 = ta.sma(close, 3) ma5 = ta.sma(close, 5) ma6 = ta.sma(close, 6) ma10 = ta.sma(close, 10) ma80 = ta.sma(close, 80) // Stochastic Oscillator with settings %K(15), %D(9), and slowing 9 k = ta.stoch(close, high, low, 15) d = ta.sma(k, 9) slow_d = ta.sma(d, 9) // Buy signal confirmation: MA10 crosses above MA5, MA6, and K line crosses above D line buySignalConfirmation = ta.crossover(ma10, ma5) and ta.crossover(ma10, ma6) and ta.crossover(k, d) // Sell signal confirmation: MA5 crosses above MA10, MA6, and D line crosses above K line sellSignalConfirmation = ta.crossunder(ma5, ma10) and ta.crossunder(ma5, ma6) and ta.crossunder(d, k) // Strategy logic if (buySignalConfirmation) strategy.entry("Buy", strategy.long) if (sellSignalConfirmation) strategy.entry("Sell", strategy.short) // Plot the moving averages and Stochastic Oscillator for visualization plot(ma3, color=color.orange, title="MA3", linewidth=2) plot(ma5, color=color.blue, title="MA5", linewidth=2) plot(ma6, color=color.purple, title="MA6", linewidth=2) plot(ma10, color=color.green, title="MA10", linewidth=2) plot(ma80, color=color.red, title="MA80", linewidth=2) plot(k, color=color.blue, title="%K", linewidth=2) plot(d, color=color.red, title="%D", linewidth=2) plot(slow_d, color=color.purple, title="Slow %D", linewidth=2)