Chiến lược này là một phương pháp giao dịch định lượng kết hợp nhiều đường trung bình động với các tín hiệu chéo dao động chứng khoán. Nó sử dụng đường trung bình động ngắn hạn, trung hạn và dài hạn, cùng với các đặc điểm mua quá mức / bán quá mức của dao động chứng khoán, để nắm bắt sự đảo ngược xu hướng thị trường và cơ hội giao dịch thông qua nhiều xác nhận tín hiệu.
Chiến lược sử dụng năm đường trung bình động (3 ngày, 5 ngày, 6 ngày, 10 ngày và 80 ngày) và Stochastic Oscillator. 1. Buy Signal: Khi MA10 vượt qua cả MA5 và MA6, trùng với đường Stochastic %K vượt qua đường %D. 2. Báo hiệu bán: Khi MA5 vượt dưới cả MA10 và MA6, trùng với đường Stochastic %D vượt dưới đường %K. Chiến lược sử dụng %K 15 giai đoạn và %D 9 giai đoạn với việc làm mịn thêm thông qua các đường trung bình động.
Chiến lược này thiết lập một hệ thống giao dịch toàn diện thông qua sự kết hợp của nhiều đường trung bình động và dao động stochastic.
/*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)