Strategi RSI Pembalikan Momentum

Penulis:ChaoZhang, Tarikh: 2023-11-15 16:29:25
Tag:

img

Ringkasan

Ini adalah strategi perdagangan jangka pendek berdasarkan penunjuk Indeks Kekuatan Relatif (RSI). Ia menggunakan RSI untuk mengenal pasti tahap overbought dan oversold dan menggabungkan penapisan lilin untuk mengelakkan isyarat palsu, memasuki kedudukan panjang dan pendek pada titik pembalikan. Strategi ini bertujuan untuk menangkap peluang pembalikan purata selepas keadaan overbought atau oversold yang melampau.

Penjelasan Strategi

Logik

Pertama, penunjuk RSI dikira berdasarkan harga penutupan dengan tempoh yang ditetapkan kepada 7. Tahap overbought ditetapkan pada 70 dan tahap oversold ditetapkan pada 30. Isyarat beli dihasilkan apabila RSI melintasi di atas 30 dan isyarat jual dihasilkan apabila RSI melintasi di bawah 70.

Untuk menapis isyarat palsu, saiz badan candlestick perlu berkembang menjadi 1-3 kali daripada julat normal apabila isyarat perdagangan dicetuskan.

Apabila RSI kekal di bawah 30 untuk 5 bar berturut-turut, isyarat panjang dihasilkan. Jika lilin seterusnya menunjukkan badan menaik berkembang lebih daripada 4 kali, kedudukan panjang akan dilaksanakan. Apabila RSI kekal di atas 70 untuk 5 bar berturut-turut, isyarat pendek dihasilkan. Jika lilin seterusnya menunjukkan badan menaik berkembang lebih daripada 4 kali, kedudukan pendek akan dilaksanakan.

Untuk mengunci keuntungan, kedudukan akan ditutup apabila arah lilin semasa adalah konsisten dengan arah kedudukan dan badan berkembang 2 kali.

Kelebihan

  1. Mencatatkan pembalikan purata selepas tahap melampau

RSI adalah baik dalam mengenal pasti keadaan overbought dan oversold. Apabila saham mencapai tahap yang melampau, terdapat kemungkinan tinggi penarikan balik, dan tahap yang melampau sering menyiratkan pembalikan yang akan datang. Strategi ini dapat menangkap peluang tersebut pada titik perubahan.

  1. Penapisan lilin mengurangkan isyarat palsu

Perdagangan semata-mata berdasarkan isyarat RSI boleh mengakibatkan banyak isyarat palsu. Strategi ini menggabungkan pengembangan badan candlestick sebagai penapis, memasuki kedudukan apabila badan yang diperbesar muncul di sekitar titik pembalikan, mengelakkan whipsaws dari pasaran huru-hara.

  1. Bar RSI berturut-turut meningkatkan kebolehpercayaan

Menghendaki 1-5 bar RSI berturut-turut di zon overbought atau oversold bertindak sebagai pengesahan, mengelakkan isyarat palsu dari bar yang aneh dan meningkatkan kebolehpercayaan isyarat.

  1. Pengganda pengembangan badan yang fleksibel

Pengganda pengembangan badan boleh diselaraskan untuk produk yang berbeza. Untuk stok dengan perubahan besar, kriteria boleh santai, sementara untuk stok dengan julat yang sempit, ia boleh diperketat. Ini membolehkan penyesuaian fleksibel untuk produk perdagangan yang berbeza.

Risiko

  1. Kemungkinan pemasangan berlebihan

Tetapan parameter mempunyai beberapa batasan yang melekat. Produk dan tempoh masa yang berbeza mungkin memerlukan penyesuaian parameter. Menggunakan tetapan tetap boleh membawa kepada masalah terlalu banyak.

  1. Ketepatan rendah dalam mengenal pasti belokan

RSI sendiri mempunyai beberapa sifat yang tertinggal. digabungkan dengan pengembangan badan keluar kedudukan lebih awal. jadi ketepatan menangkap bahagian bawah atau atas yang tepat biasanya tidak sangat tinggi.

  1. Tempoh pemegang yang berpotensi panjang di pasaran pelbagai

Dalam pasaran yang berkisar, RSI boleh mencetuskan isyarat beli dan jual yang kerap, mengakibatkan tempoh tahan yang panjang. Parameter harus diselaraskan atau strategi harus dihentikan sementara dalam kes sedemikian.

  1. Perlu strategi saiz kedudukan yang betul

Sebagai strategi perdagangan jangka pendek, strategi ukuran kedudukan yang betul harus digabungkan, seperti memindahkan stop loss, mengambil keuntungan, dan lain-lain, untuk mengunci keuntungan dan mengawal risiko.

Idea Peningkatan

  1. Uji set parameter yang berbeza

Kombinasi parameter RSI yang berbeza boleh diuji, seperti tempoh, tahap overbought / oversold, dan penapis candlestick, untuk mencari parameter yang dioptimumkan untuk produk yang berbeza.

  1. Tambah stop loss dan mengambil keuntungan

Pergerakan atau peratusan stop loss boleh ditambah untuk mengunci keuntungan. atau menetapkan stop loss berdasarkan nilai ATR atau saluran Donchain dan lain-lain.

  1. Menggabungkan penunjuk lain sebagai penapis

Keadaan berdasarkan MACD, KDJ dan penunjuk lain boleh ditambah untuk mengelakkan isyarat yang salah daripada pecah yang tidak sah.

  1. Tambah bias trend

Menggunakan purata bergerak untuk mengukur bias trend. Hanya mempertimbangkan isyarat perdagangan yang sejajar dengan trend. Strategi boleh dihentikan semasa pasaran terikat julat. Penunjuk kekuatan trend juga boleh digunakan sebagai penapis.

Kesimpulan

Ringkasnya, strategi pembalikan RSI ini adalah strategi perdagangan jangka pendek biasa dengan kelebihan dan kekurangannya sendiri. Kelebihan utamanya terletak pada menangkap penarikan balik selepas melampau sementara risiko utama berasal dari ketepatan isyarat yang rendah dan tempoh penahan yang panjang dalam julat. Kita boleh meningkatkan strategi dengan menyesuaikan parameter, menambah penapis, mengoptimumkan berhenti, dll, untuk menyesuaikan diri dengan lebih banyak produk dan keadaan pasaran, dan mencapai hasil yang lebih stabil.


/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title = "Noro's FRSI Strategy v1.21", shorttitle = "FRSI str 1.21", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_type = strategy.commission.percent, commission_value = 0.0)

//Settings
rsiperiod = input(7, defval = 7, minval = 2, maxval = 50, title = "RSI 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(2038, 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), rsiperiod)
fastdown = rma(-min(change(rsisrc), 0), rsiperiod)
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, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00)))
    sps := 1

if time > timestamp(toyear, tomonth, today, 00, 00) or exit
    strategy.close_all()
    sps := 0
    

Lebih lanjut