Artikel ini terutamanya memperkenalkan strategi perdagangan kuantitatif berdasarkan RSI dan WMA. Strategi ini menghasilkan isyarat beli dan jual dengan mengira nilai RSI dan WMA untuk menemui titik pembalikan harga saham, bertujuan untuk membeli rendah dan menjual tinggi.
Indikator teras strategi ini termasuk RSI dan WMA. RSI (Relative Strength Index) adalah penunjuk turun naik yang digunakan untuk mengukur perubahan kelajuan kenaikan dan kejatuhan harga baru-baru ini. WMA (Weighted Moving Average) adalah purata bergerak tertimbang.
Isyarat beli strategi ini dihasilkan apabila RSI melintasi di atas WMA, yang menunjukkan pembalikan harga dan kemungkinan permulaan trend menaik. Isyarat jual dihasilkan apabila RSI melintasi di bawah WMA, yang menyiratkan pembalikan harga dan kemungkinan permulaan trend menurun.
Secara khusus, strategi ini mula-mula mengira RSI 14 hari, kemudian mengira WMA 45 hari. Jika RSI melintasi di atas WMA, isyarat beli dihasilkan. Jika RSI melintasi di bawah WMA, isyarat jual dihasilkan. Gabungan RSI dan WMA dapat menangkap titik pembalikan harga dengan lebih tepat.
Strategi ini mempunyai kelebihan berikut:
Risiko termasuk:
Risiko ini boleh dikurangkan dengan penyesuaian parameter, stop loss, penapisan risiko pasaran dan lain-lain.
Strategi ini boleh dioptimumkan dari aspek berikut:
Strategi ini mengintegrasikan RSI dan WMA untuk menangkap persilangan untuk isyarat perdagangan, membolehkan perdagangan algo yang mudah dan berkesan. Ia mudah dilaksanakan dan menguntungkan di pasaran lembu. Pengujian parameter lanjut, penyesuaian, dan mekanisme stop loss yang betul dapat meningkatkan kestabilan dan keuntungan.
/*backtest start: 2024-01-05 00:00:00 end: 2024-02-04 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("RSI WMA Strategy", overlay=true) // Input parameters rsiLength = input(14, title="RSI Length") wmaLength = input(45, title="WMA Length") // Calculate RSI and WMA rsiValue = ta.rsi(close, rsiLength) wmaValue = ta.wma(rsiValue, wmaLength) // Define overbought and oversold levels for RSI overboughtLevel = 70 oversoldLevel = 30 // Strategy logic longCondition = ta.crossover(rsiValue, wmaValue) shortCondition = ta.crossunder(rsiValue, wmaValue) // Execute trades if (longCondition) strategy.entry("Long", strategy.long, comment="BUY") if (shortCondition) strategy.entry("Short", strategy.short, comment="SELL") // Plotting for visualization plot(rsiValue, title="RSI", color=color.blue) plot(wmaValue, title="WMA", color=color.orange) hline(overboughtLevel, "Overbought Level", color=color.red) hline(oversoldLevel, "Oversold Level", color=color.green) // Plot buy and sell signals on the chart plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar) plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)