Strategi Perdagangan RSI yang Bergerak Cepat

Penulis:ChaoZhang, Tarikh: 2024-01-08 11:50:38
Tag:

img

Ringkasan

Ini adalah strategi dagangan yang mengenal pasti pasaran berayun menggunakan penunjuk RSI dan menangkap peluang pembalikan trend semasa goyangan pasaran. Strategi ini menilai sama ada harga telah memasuki zon goyangan oleh penunjuk RSI pantas dan menentukan masa kemasukan dalam kombinasi dengan badan lilin dan isyarat RSI pantas.

Logika Strategi

Strategi ini terutamanya beroperasi di atas prinsip berikut:

  1. Mengenal pasti pergerakan harga berayun dengan menilai RSI pantas jika harga telah memasuki zon overbought/oversold
  2. Tentukan masa kemasukan khusus dengan penembusan badan candlestick dan isyarat RSI pantas
  3. Elakkan isyarat palsu dalam trend yang tidak berayun melalui mekanisme penapis berganda

Secara khusus, strategi ini menggunakan RSI dua tempoh untuk menilai sama ada harga telah memasuki julat osilasi 30-70 yang telah ditetapkan sebelumnya. Ia juga memerlukan badan lilin untuk menembusi 1/4 atau 1/2 MA sebelum menghasilkan isyarat perdagangan. Dengan pemeriksaan bersyarat berganda seperti itu, isyarat palsu dapat ditapis dengan berkesan untuk memastikan memasuki pasaran hanya apabila osilasi sebenar berlaku.

Analisis Kelebihan

Strategi ini menunjukkan kelebihan penting seperti berikut:

  1. Indikator RSI pantas sensitif untuk dengan cepat mengenal pasti harga memasuki / meninggalkan zon goyangan
  2. Analisis kerangka masa berganda menghalang gangguan dari bunyi bising pasaran
  3. Penapis lilin memastikan masuk pada pembalikan trend sebenar
  4. Frekuensi perdagangan sederhana menghalang perdagangan berlebihan

Analisis Risiko

Terdapat juga beberapa risiko yang perlu diketahui:

  1. Kemungkinan peluang pembalikan trend yang hilang yang membawa kepada keuntungan yang tidak mencukupi
  2. Isyarat Whipsw boleh menyebabkan kehilangan
  3. Tetapan parameter yang tidak betul mempengaruhi prestasi strategi

Untuk mengawal risiko, penyesuaian kombinasi parameter, pengesahan dagangan langsung dan mekanisme stop loss disyorkan.

Arahan pengoptimuman

Terdapat ruang untuk pengoptimuman lanjut:

  1. Mengintegrasikan isyarat penunjuk lain untuk membina model Kebarangkalian
  2. Tambah modul penyesuaian parameter adaptif
  3. Tingkatkan modul dagangan algo untuk pelaksanaan dagangan yang lebih cepat

Dengan teknik seperti integrasi pelbagai penunjuk, penyesuaian parameter adaptif dan perdagangan algo, kestabilan strategi dan keuntungan dapat dinaikkan ke tahap seterusnya.

Kesimpulan

Strategi perdagangan RSI berosilasi pantas mengenal pasti turun naik harga dan menentukan masa kemasukan melalui RSI pantas dan mekanisme penapis berganda.


/*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
    

Lebih lanjut