
Strategi RSI berbalik menghasilkan sinyal beli dan jual dengan menghitung indikator RSI dan rata-rata bergerak yang bergerak untuk menentukan apakah saham berada dalam kondisi overbought atau oversold. Strategi ini memanfaatkan karakteristik berbalik dari indikator RSI untuk mendapatkan keuntungan ketika harga saham berbalik.
Strategi ini pertama-tama menghitung nilai RSI selama 14 periode, dan melakukan pengolahan 0-100 secara formal. Kemudian menghitung rata-rata pergerakan tertimbang RSI selama 5 periode, kemudian memetakan antara -1 dan 1 melalui fungsi pemotongan positif. Ketika RSI yang dipetakan menghasilkan sinyal beli saat melewati -0.8, dan menghasilkan sinyal jual saat melewati 1.
Kebijakan ini juga mengatur rentang bulan dan tanggal yang digunakan, sehingga hanya dapat digunakan pada bulan dan tanggal yang ditentukan.
Strategi reversal RSI adalah strategi yang mudah dan efektif untuk menangkap peluang reversal harga dengan membangun aturan trading reversal dari indikator RSI. Strategi ini mudah untuk diterapkan, tetapi dapat dioptimalkan dengan optimasi parameter, peningkatan mekanisme kontrol risiko, dan lain-lain, sehingga menjadi strategi perdagangan kuantitatif yang stabil dan menguntungkan.
/*backtest
start: 2023-01-12 00:00:00
end: 2024-01-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title="RSI Reverse", shorttitle="RSI Reverse")
RSI_main = input(14, title="RSI Main Period")
RSI_smooth = input(5, title="RSI Smooth Period")
//Functions
RVS(input) => (exp(2*input)-1) / (exp(2*input)+1)
//RSI Calculation
raw_RSI=0.1*(rsi(close,RSI_main)-50)
wma_RSI=wma(raw_RSI,RSI_smooth)
RVS_RSI = RVS(wma_RSI)
threshold1 = RVS_RSI < 0.8? 1 : 0
threshold2 = -0.8
plot(RVS_RSI,color=red)
plot(threshold1,color=blue)
plot(threshold2,color=blue)
buycon = crossover(RVS_RSI,threshold2)
sellcon = crossunder(RVS_RSI , threshold1)
monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)
if ( buycon )
strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY")
else
strategy.cancel(id="BUY")
if ( sellcon)
strategy.close("BUY")