RSI Moving Average Crossover Trend Strategy adalah strategi yang menggunakan sinyal crossover rata-rata bergerak dari indikator RSI untuk menentukan tren dan mengeluarkan sinyal perdagangan.
Indikator inti dari strategi ini adalah RSI. Ini menghitung EMA dan SMA dari RSI. Sinyal beli hanya dikeluarkan ketika RSI EMA berada di atas SMA sementara harga berada di atas EMA. Sinyal jual dikeluarkan ketika RSI EMA jatuh di bawah SMA untuk mengikuti tren.
Indikator RSI dapat secara efektif mencerminkan kondisi overbought dan oversold di pasar. Menembus di atas 70 pada RSI dianggap overbought sementara melanggar di bawah 30 adalah oversold. Strategi ini menggunakan EMA dan SMA untuk menemukan tren dan titik balik dari indikator RSI. EMA bereaksi lebih cepat terhadap perubahan harga baru-baru ini sementara SMA lebih bergantung pada data yang lebih lama.
Ketika RSI EMA mulai naik, itu menandakan stabilisasi di pasar. SMA kemudian memverifikasi arahnya. Ketika SMA juga mulai naik, itu mengkonfirmasi RSI berada dalam tren naik. Strategi sekarang akan mengeluarkan sinyal beli mengingat harga di atas EMA untuk mengikuti tren.
Ini adalah strategi mengikuti tren, mampu menangkap peluang arah secara efektif dalam jangka menengah hingga panjang. Dibandingkan dengan indikator tunggal, strategi ini menggunakan RSI EMA dan SMA crossover untuk verifikasi, mengurangi sinyal palsu dan meningkatkan stabilitas.
Strategi ini juga menggabungkan EMA harga untuk memastikan pembelian hanya dalam tren kenaikan harga, menghindari risiko pasar yang terikat rentang dan meningkatkan profitabilitas.
Strategi ini terutama bergantung pada indikator RSI. Sinyal RSI yang salah akan menyebabkan sinyal strategi yang salah. Juga, RSI lebih cocok untuk mengidentifikasi tingkat overbought/oversold dengan beberapa keterlambatan dalam menangkap tren jangka menengah dan panjang.
Ada juga beberapa keterlambatan waktu, terutama ketika RSI EMA dan SMA lebih terikat kisaran. Periode ini membawa beberapa risiko kerugian sebelum sinyal dipicu.
RSI dapat dioptimalkan dengan memilih parameter yang lebih tepat untuk meningkatkan efektivitas.
Logika stop loss dapat ditambahkan ke posisi keluar setelah kerugian mencapai tingkat tertentu untuk mengelola risiko secara efektif.
Parameter dapat diuji dan dioptimalkan dalam jangka waktu yang berbeda sehingga strategi dapat berjalan stabil pada lebih banyak produk dan periode.
RSI Moving Average Crossover Trend Strategy adalah strategi sederhana mengikuti tren menggunakan RSI untuk menentukan arah tren dan crossover untuk verifikasi. Strategi ini menggabungkan harga EMA untuk membeli pada tren naik. Strategi ini memiliki stabilitas tinggi untuk kepemilikan jangka menengah dan panjang tetapi risiko lag perlu dikelola. Optimasi lebih lanjut dapat meningkatkan kinerja strategi.
/*backtest start: 2022-11-21 00:00:00 end: 2023-11-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //Created by Sv3nla 5-Jan-2021 strategy(title="Sv3nla RSI EMA SMA Strat", shorttitle="Sv3nla RSI EMA SMA Strat", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100) // === BACKTEST RANGE === FromMonth = input(defval = 5, title = "From Month", minval = 1) FromDay = input(defval = 1, title = "From Day", minval = 1) FromYear = input(defval = 2015, title = "From Year", minval = 2015) ToMonth = input(defval = 1, title = "To Month", minval = 1) ToDay = input(defval = 1, title = "To Day", minval = 1) ToYear = input(defval = 9999, title = "To Year", minval = 2022) // syminfo.mintick = 0.01$ for BTCUSDT testPeriod() => true //INPUTS rsilen = input(defval = 16, minval=1, title="RSILength") RSIemaLen = input(defval = 12, minval=1, title="RSI EMA Length") RSIsmaLen2 = input(defval = 29, minval=1, title="RSI SMA Length2") length = input(defval = 8, minval=1, title="EMA price Length") // RSI RSIsrc = close RSIup = rma(max(change(RSIsrc), 0), rsilen) RSIdown = rma(-min(change(RSIsrc), 0), rsilen) rsi = RSIdown == 0 ? 100 : RSIup == 0 ? 0 : 100 - 100 / (1 + RSIup / RSIdown) emavalue=ema(rsi,RSIemaLen) smavalue=sma(rsi,RSIsmaLen2) //EMA ema=ema(close,length) //PLOT plot(ema(rsi, RSIemaLen), color=color.yellow, linewidth=2, title="EMA", transp=0) plot(sma(rsi, RSIsmaLen2), color=color.aqua, linewidth=2, title="SMA", transp=0) //ORDERS if (testPeriod()) strategy.entry("long",strategy.long, comment="RSIEMA", when=(emavalue > smavalue and close>ema)) strategy.close(id="long", when=(emavalue < smavalue)) // Colour background when in a trade and 50 horizontal line backgroundColour = (strategy.position_size > 0) ? color.green : na bgcolor(color=backgroundColour, transp=85) hline(50, color=color.yellow)