Strategi ini adalah sistem perdagangan yang mengikuti tren yang menggabungkan Indeks Kekuatan Relatif (RSI), Rata-rata Gerak Berimbang (WMA), dan Rata-rata Gerak Eksponensial (EMA). Strategi ini mengidentifikasi perubahan tren pasar dengan memantau tingkat RSI dan persilangan antara WMA dan EMA untuk menghasilkan sinyal beli dan jual. Metode kombinasi ini mempertimbangkan kondisi pasar yang terlalu banyak dibeli / terlalu banyak dijual dan penilaian tren dari rata-rata bergerak periode yang berbeda, memungkinkan penangkapan titik balik pasar yang lebih akurat.
Logika inti dari strategi ini didasarkan pada elemen kunci berikut: 1. Menggunakan RSI 14 periode untuk menghitung kondisi pasar overbought / oversold 2. Menghitung WMA 45 periode dan EMA 89 periode Ketentuan masuk: - Sinyal panjang: Ketika RSI di bawah 50 dan WMA melintasi di atas EMA - Sinyal pendek: Ketika RSI di atas 50 dan WMA melintasi di bawah EMA Strategi menggunakan fungsi ta.rma untuk memperlancar perhitungan RSI, meningkatkan stabilitas sinyal 5. Menggunakan fungsi grafik untuk menandai titik beli / jual pada grafik untuk penilaian intuitif
Strategi ini membangun sistem trend-mengikuti yang relatif lengkap dengan menggabungkan indikator RSI, WMA, dan EMA. Keuntungannya utama terletak pada keandalan sinyal dan kemampuan kontrol risiko, sementara perhatian harus diberikan pada risiko sinyal palsu di berbagai pasar. Melalui langkah-langkah optimalisasi seperti menambahkan penyaringan volatilitas dan konfirmasi kekuatan tren, stabilitas dan profitabilitas strategi dapat ditingkatkan lebih lanjut. Secara keseluruhan, ini adalah strategi perdagangan dengan nilai praktis, terutama cocok untuk pedagang tren jangka menengah hingga panjang.
/*backtest start: 2024-12-17 00:00:00 end: 2025-01-16 00:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy(title="RSI + WMA + EMA Strategy", shorttitle="RSI Strategy", overlay=true) // RSI Settings rsiLengthInput = input.int(14, minval=1, title="RSI Length", group="RSI Settings") rsiSourceInput = input.source(close, "Source", group="RSI Settings") // WMA and EMA Settings wmaLengthInput = input.int(45, minval=1, title="WMA Length", group="WMA Settings") wmaColorInput = input.color(color.blue, title="WMA Color", group="WMA Settings") emaLengthInput = input.int(89, minval=1, title="EMA Length", group="EMA Settings") emaColorInput = input.color(color.purple, title="EMA Color", group="EMA Settings") // RSI Calculation change = ta.change(rsiSourceInput) up = ta.rma(math.max(change, 0), rsiLengthInput) down = ta.rma(-math.min(change, 0), rsiLengthInput) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down)) // WMA and EMA Calculation wma = ta.wma(rsi, wmaLengthInput) ema = ta.ema(rsi, emaLengthInput) // Plot RSI, WMA, and EMA plot(rsi, "RSI", color=#7E57C2) plot(wma, title="WMA", color=wmaColorInput, linewidth=2) plot(ema, title="EMA", color=emaColorInput, linewidth=2) // Entry and Exit Conditions longCondition = ta.crossover(wma, ema) and rsi < 50 shortCondition = ta.crossunder(wma, ema) and rsi > 50 if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Optional: Plot Buy/Sell Signals on Chart plotshape(series=longCondition, style=shape.labelup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal") plotshape(series=shortCondition, style=shape.labeldown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")