Strategi RSI rentang musiman rata-rata bergerak

Penulis:ChaoZhang, Tanggal: 2023-10-27 16:04:21
Tag:

img

Gambaran umum

Strategi ini menggabungkan rata-rata bergerak dan indeks kekuatan relatif (RSI), dua indikator teknis, untuk menangkap karakteristik siklus musiman dan menghasilkan sinyal perdagangan. Keuntungan dari strategi ini adalah bahwa ia dapat mengidentifikasi tren musiman dengan sangat jelas, tetapi juga memiliki risiko tertipu oleh sinyal yang salah. Optimasi lebih lanjut dapat dilakukan dengan menyesuaikan pengaturan parameter untuk meningkatkan kinerja strategi.

Logika Strategi

Strategi ini pertama-tama menghitung moving average dari periode tertentu n untuk menangkap arah tren jangka menengah hingga panjang. Kemudian menghitung indikator RSI dari moving average untuk menilai apakah saat ini berada dalam keadaan overbought atau oversold. RSI mengukur sentimen pasar dengan menghitung rasio keuntungan versus kerugian selama periode tertentu.

Ketika RSI melintasi band bawah, sinyal beli dihasilkan, yang menunjukkan status oversold, dan posisi panjang dapat dibuka. Ketika RSI melintasi di bawah band atas, sinyal jual dihasilkan, yang menunjukkan status overbought, dan posisi pendek dapat dibuka. Selain itu, strategi juga menetapkan kisaran untuk bulan dan tanggal untuk diperdagangkan hanya selama bulan dan hari tertentu, untuk menangkap pola musiman.

Keuntungan dari Strategi

  • Menggunakan rata-rata bergerak untuk menentukan tren utama, dan RSI untuk menilai skenario overbought / oversold, menggabungkan indikator ganda untuk meningkatkan akurasi

  • Menetapkan rentang bulanan dan tanggal dapat secara efektif mengidentifikasi tren musiman dan menangkap peluang perdagangan tersebut

  • Pengaturan parameter RSI yang fleksibel untuk menyesuaikan sensitivitas dalam menentukan tingkat overbought/oversold

  • Parameter rata-rata bergerak yang dapat disesuaikan untuk menyesuaikan sensitivitas dalam menilai tren utama

Risiko dan Solusi

  • Risiko tertipu oleh sinyal yang salah, misalnya pembalikan tren yang dipicu oleh peristiwa non-musim, dapat menghasilkan sinyal perdagangan yang tidak tepat.

  • Divergensi mungkin muncul antara rata-rata bergerak dan RSI ketika tren berbalik. Solusinya adalah dengan mempersingkat periode rata-rata bergerak untuk menangkap perubahan tren lebih cepat.

  • Jangkauan bulanan dan tanggal yang telah ditetapkan sebelumnya dapat menyimpang dari tren musiman yang sebenarnya.

  • Sinyal perdagangan mungkin mengalami kebocoran palsu. Solusinya adalah dengan mengatur rentang yang lebih luas untuk menghindari tertipu oleh fluktuasi kecil.

Arahan Optimasi

  • Memperkenalkan indikator tambahan lainnya, misalnya Stochastic Oscillator, untuk menetapkan kondisi penyaringan yang lebih ketat dan mengurangi sinyal yang salah.

  • Uji lebih banyak kombinasi parameter yang berbeda untuk menemukan parameter yang optimal dan meningkatkan kinerja strategi, misalnya menyesuaikan periode rata-rata bergerak, band RSI dll.

  • Menggunakan metode optimasi parameter untuk secara otomatis mencari ruang parameter untuk set parameter optimal.

  • Kumpulkan data historis lebih banyak dan gunakan pembelajaran mesin untuk melatih dan mengoptimalkan aturan strategi.

  • Pertimbangkan untuk menambahkan strategi stop loss / take profit untuk mengoptimalkan manajemen uang.

Ringkasan

Strategi ini menggabungkan rata-rata bergerak dan RSI, dengan penambahan penilaian musiman, untuk membentuk sistem yang relatif lengkap untuk identifikasi tren dan overbought / oversold. Keuntungannya terletak pada kemampuannya untuk dengan jelas mengenali pola musiman dan memanfaatkan peluang perdagangan tersebut. Ada risiko tertentu untuk disesatkan, tetapi optimasi dapat dilakukan melalui penyesuaian parameter, memperkenalkan indikator bantu, pembelajaran mesin dll untuk meningkatkan kinerja strategi. Secara keseluruhan, strategi ini menyediakan kerangka kerja perdagangan musiman yang andal dan efektif yang layak diuji dan diterapkan secara langsung.


/*backtest
start: 2023-09-26 00:00:00
end: 2023-10-26 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title = " RSI of MA Strategy ",shorttitle="MARSI Strategy",default_qty_type = strategy.percent_of_equity, default_qty_value = 100,commission_type=strategy.commission.percent,commission_value=0.1,initial_capital=1)



lengthofma = input(15,minval=1,title="Length of MA")
len = input(14, minval=1, title="Length")
upperband = input(70,minval=1,title='Upper Band for RSI')
lowerband = input(30,minval=1,title="Lower Band for RSI")

src=sma(close,lengthofma)
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(rsi, color=purple)

band1 = hline(upperband)
band0 = hline(lowerband)
fill(band1, band0, color=purple, transp=90)



longCond =  crossover(rsi,lowerband)

shortCond =  crossunder(rsi,upperband)




monthfrom =input(1)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)

if (  longCond ) 
    strategy.entry("LONG", strategy.long, stop=close, oca_name="TREND",  comment="LONG")
    
else
    strategy.cancel(id="LONG")
    



if ( shortCond ) 

    strategy.entry("SHORT", strategy.short,stop=close, oca_name="TREND",  comment="SHORT")
else
    strategy.cancel(id="SHORT")





Lebih banyak