
Strategi perdagangan indikator RSI ganda menggunakan kombinasi beberapa indikator RSI untuk mengidentifikasi peluang perdagangan dan melacak tren. Strategi ini menggunakan 1-5 indikator RSI secara fleksibel untuk menentukan kapan masuk dan keluar berdasarkan nilai indikator.
Strategi ini menggunakan 1-5 indikator RSI dengan pilihan parameter masukan, dan setiap indikator RSI dapat dikonfigurasi secara independen dengan jumlah periode dan batas parameter. Ketika nilai indikator RSI apa pun yang lebih rendah dari batas yang sesuai menghasilkan sinyal beli, intensitas sinyal ditentukan oleh jumlah periode RSI yang memicu sinyal, semakin tinggi periode, semakin kuat sinyal.
Keuntungan terbesar dari strategi ini adalah bahwa Anda dapat mengevaluasi indikator RSI dari beberapa siklus sekaligus, menilai tren dan peluang pembalikan dari beberapa dimensi panjang dan pendek, meningkatkan akurasi keputusan perdagangan. Selain itu, strategi ini memungkinkan konfigurasi bebas parameter masing-masing indikator RSI, dapat disesuaikan dengan pasar yang berbeda, dapat memperluas fleksibilitas strategi.
Risiko utama dari strategi ini adalah bahwa ketika beberapa RSI digabungkan, sinyal dapat berkonflik. Misalnya, RSI jangka pendek menghasilkan sinyal beli, tetapi RSI jangka panjang masih oversold, yang mana sinyal yang tepat untuk mengambil keputusan berdasarkan pengalaman trader sendiri. Selain itu, RSI mudah tertipu oleh situasi yang bergoyang, yang perlu diverifikasi dengan indikator tambahan atau akun dengan modal besar.
Strategi ini dapat mempertimbangkan untuk menambahkan indikator pendukung tren seperti moving averages atau Brinks untuk memverifikasi sinyal RSI dan meningkatkan akurasi penilaian. Selain itu, Anda juga dapat mempertimbangkan untuk menambahkan algoritma pembelajaran mesin tertentu yang secara otomatis menilai keandalan sinyal Entry dan Close menggunakan metode penilaian multi-faktor.
Strategi perdagangan indikator RSI ganda sangat inovatif secara keseluruhan, dengan kombinasi indikator dan pengaturan parameter yang fleksibel yang memungkinkan untuk beradaptasi dengan cepat terhadap perubahan pasar. Desain fungsionalitas modular yang ditambahkan juga membuat ruang untuk pengoptimalan strategi sangat besar. Efeknya dapat ditingkatkan lebih lanjut jika didukung dengan pembelajaran mesin atau metode pengendalian risiko.
/*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"}]
*/
//Noro
//2018
//@version=2
strategy(title = "Noro's Symphony Strategy v1.1", shorttitle = "Symphony str 1.1", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 20)
//Settings
//needlong = input(true, defval = true, title = "Long")
//needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
usersi1 = input(true, defval = true, title = "Use RSI 1")
rsiperiod1 = input(4, defval = 4, minval = 2, maxval = 100, title = "RSI 1 Period")
rsilimit1 = input(20, defval = 20, minval = 2, maxval = 50, title = "RSI 1 Limit")
usersi2 = input(true, defval = true, title = "Use RSI 2")
rsiperiod2 = input(7, defval = 7, minval = 2, maxval = 100, title = "RSI 2 Period")
rsilimit2 = input(25, defval = 25, minval = 2, maxval = 50, title = "RSI 2 Limit")
usersi3 = input(true, defval = true, title = "Use RSI 3")
rsiperiod3 = input(14, defval = 14, minval = 2, maxval = 100, title = "RSI 3 Period")
rsilimit3 = input(30, defval = 30, minval = 2, maxval = 50, title = "RSI 3 Limit")
usersi4 = input(false, defval = false, title = "Use RSI 4")
rsiperiod4 = input(21, defval = 21, minval = 2, maxval = 100, title = "RSI 4 Period")
rsilimit4 = input(35, defval = 35, minval = 2, maxval = 50, title = "RSI 4 Limit")
usersi5 = input(false, defval = false, title = "Use RSI 5")
rsiperiod5 = input(28, defval = 28, minval = 2, maxval = 100, title = "RSI 5 Period")
rsilimit5 = input(40, defval = 40, minval = 2, maxval = 50, title = "RSI 5 Limit")
cf = input(false, defval = false, title = "Use color filter")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From Day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To Day")
//RSI
rsi1 = rsi(close, rsiperiod1)
rsi2 = rsi(close, rsiperiod2)
rsi3 = rsi(close, rsiperiod3)
rsi4 = rsi(close, rsiperiod4)
rsi5 = rsi(close, rsiperiod5)
//Signals
up1 = rsi1 < rsilimit1 and usersi1
up2 = rsi2 < rsilimit2 and usersi2
up3 = rsi3 < rsilimit3 and usersi3
up4 = rsi4 < rsilimit4 and usersi4
up5 = rsi5 < rsilimit5 and usersi5
str = up5 ? 5 : up4 ? 4 : up3 ? 3 : up2 ? 2 : up1 ? 1 : str[1]
up = up1 or up2 or up3 or up4 or up5
exit = (rsi1 > rsilimit1 and str == 1) or (rsi2 > rsilimit2 and str == 2) or (rsi3 > rsilimit3 and str == 3) or (rsi4 > rsilimit4 and str == 4) or (rsi5 > rsilimit5 and str == 5)
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1]
//Background
col = up ? lime : na
bgcolor(col, transp = 0)
//Trading
if up and (close < open or cf == false)
strategy.entry("Long", strategy.long, lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
strategy.close_all()