
Strategi ini adalah strategi perdagangan yang menggunakan indikator RSI untuk mengidentifikasi tren bergolak dan menangkap peluang untuk membalikkan tren selama golak. Strategi ini menggunakan indikator RSI cepat untuk menilai apakah harga memasuki zona bergolak dan menggabungkan entitas K-line dan sinyal polygon dari RSI cepat untuk menilai waktu masuk.
Strategi ini didasarkan pada prinsip-prinsip berikut:
Secara khusus, strategi menggunakan RSI siklus ganda untuk menentukan apakah harga masuk ke dalam kisaran getaran 30-70 yang ditetapkan. Pada saat yang sama, entitas K-line diminta untuk menerobos garis rata-rata 1 / 4 atau 1 / 2 untuk menghasilkan sinyal perdagangan. Dengan demikian, melalui penilaian kondisi ganda, sinyal palsu dari situasi getaran dapat disaring secara efektif dan memastikan hanya masuk saat getaran benar terjadi.
Strategi ini memiliki keuntungan yang signifikan sebagai berikut:
Strategi ini juga memiliki beberapa risiko yang perlu diperhatikan:
Untuk mengontrol risiko, disarankan untuk menyesuaikan kombinasi parameter, verifikasi langsung, dan mengatur mekanisme stop loss.
Strategi ini masih bisa dioptimalkan lebih jauh:
Strategi ini diharapkan dapat meningkatkan stabilitas dan tingkat pengembalian melalui integrasi multi-indikator, pengaturan parameter adaptif, dan perdagangan algoritmik.
Strategi perdagangan RSI yang cepat bergoyang, dengan indikator RSI yang cepat untuk menangkap pergerakan harga dan mekanisme penyaringan ganda untuk menentukan kapan masuk, adalah strategi yang efektif yang layak untuk diteliti dan diterapkan secara mendalam. Dalam praktiknya, perlu memperhatikan risiko dan melakukan penyesuaian optimasi multi-dimensi untuk meningkatkan efektivitas strategi lebih lanjut.
/*backtest
start: 2023-01-07 00:00:00
end: 2024-01-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title = "Noro's FRSI Strategy v1.22", shorttitle = "FRSI str 1.22", overlay = true )
//Settings
uprsiperiod = input(2, defval = 2, minval = 2, maxval = 50, title = "RSI UP Period")
dnrsiperiod = input(9, defval = 9, minval = 2, maxval = 50, title = "RSI DN Period")
limit = input(30, defval = 30, minval = 1, maxval = 100, title = "RSI limit")
rsisrc = input(close, defval = close, title = "RSI Price")
rb = input(1, defval = 1, minval = 1, maxval = 5, title = "RSI Bars")
sps = 0
fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2018, defval = 2018, 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")
//Fast RSI
fastup = rma(max(change(rsisrc), 0), uprsiperiod)
fastdown = rma(-min(change(rsisrc), 0), dnrsiperiod)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))
//Limits
bar = close > open ? 1 : close < open ? -1 : 0
uplimit = 100 - limit
dnlimit = limit
//RSI Bars
ur = fastrsi > uplimit
dr = fastrsi < dnlimit
uprsi = rb == 1 and ur ? 1 : rb == 2 and ur and ur[1] ? 1 : rb == 3 and ur and ur[1] and ur[2] ? 1 : rb == 4 and ur and ur[1] and ur[2] and ur[3] ? 1 : rb == 5 and ur and ur[1] and ur[2] and ur[3] and ur[4] ? 1 : 0
dnrsi = rb == 1 and dr ? 1 : rb == 2 and dr and dr[1] ? 1 : rb == 3 and dr and dr[1] and dr[2] ? 1 : rb == 4 and dr and dr[1] and dr[2] and dr[3] ? 1 : rb == 5 and dr and dr[1] and dr[2] and dr[3] and dr[4] ? 1 : 0
//Body
body = abs(close - open)
emabody = ema(body, 30)
//Signals
up = bar == -1 and sps == 0 and dnrsi and body > emabody / 4
dn = bar == 1 and sps == 0 and uprsi and body > emabody / 4
exit = bar == 1 and fastrsi > dnlimit and body > emabody / 2
//Trading
if up
strategy.entry("Long", strategy.long)
sps := 1
if exit
strategy.close_all()
sps := 0