RSI Bollinger Bands Strategi Perdagangan

Penulis:ChaoZhang, Tanggal: 2024-01-24 14:56:02
Tag:

img

Gambaran umum

Strategi ini terutama menggunakan Indeks Kekuatan Relatif (RSI) dikombinasikan dengan Bollinger Bands untuk penilaian sinyal perdagangan. Secara khusus, itu pergi panjang ketika RSI melintasi di atas tingkat oversold dan di bawah Bollinger Band bawah, dan pergi pendek ketika RSI melintasi di bawah tingkat overbought dan di atas Bollinger Band atas.

Logika Strategi

Strategi ini pertama-tama menghitung indikator RSI dan Bollinger Bands. Indikator RSI mencerminkan kekuatan relatif instrumen perdagangan. Ketika RSI berada di bawah zona oversold (default 30), itu berarti instrumen tersebut oversold dan harus membeli. Bollinger Bands mencakup band atas, band tengah dan band bawah, yang mencerminkan rentang fluktuasi harga dengan baik. Membeli di dekat band bawah dan menjual di dekat band atas dapat memberikan sinyal yang relatif dapat diandalkan. Strategi ini menggabungkan indikator RSI dan Bollinger Bands untuk penilaian sinyal perdagangan. Ini menghasilkan sinyal beli ketika RSI naik dari zona oversold ke atasnya (default 30), dan harga naik dari band bawah ke atasnya; ini menghasilkan sinyal jual ketika RSI turun dari zona oversold ke bawahnya (default 70), dan harga turun dari band atas ke bawahnya.

Keuntungan

  1. Menggabungkan RSI dan Bollinger Bands meningkatkan akurasi sinyal
  2. RSI menyaring keluar beberapa kebisingan
  3. Bollinger Bands mencerminkan rentang volatilitas pasar saat ini, sinyal yang dapat diandalkan
  4. Aturan perdagangan yang ketat, menghindari perdagangan yang tidak valid

Risiko

  1. Parameter Bollinger Bands yang tidak tepat dapat menyebabkan sinyal yang tidak akurat
  2. RSI yang tidak tepat dalam zona overbought/oversold dapat mempengaruhi penilaian
  3. Strategi yang ketat, mungkin kehilangan beberapa kesempatan

Solusi:

  1. Mengoptimalkan Bollinger Bands dan parameter RSI untuk menemukan kombinasi terbaik
  2. Meredakan kondisi moderat, memungkinkan beberapa perdagangan yang tidak valid untuk lebih banyak kesempatan

Arahan Optimasi

  1. Uji dan optimalkan parameter RSI dan Bollinger untuk optimum
  2. Tambahkan stop loss untuk mengontrol risiko
  3. Pertimbangkan untuk menambahkan indikator lain seperti MACD untuk verifikasi sinyal
  4. Hasil pengujian optimasi di berbagai produk dan kerangka waktu

Ringkasan

Strategi keseluruhan yang kuat, secara efektif menggabungkan RSI dan Bollinger Bands untuk stop loss. Perbaikan lebih lanjut dapat dicapai dengan pengujian dan pengoptimalan parameter. Juga perlu menyadari potensi sinyal hilang risiko karena aturan yang ketat. Secara umum, ini adalah strategi perdagangan kuantitatif yang andal.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("BB + RSI 20MIN,", shorttitle="BBRSI 20MIN", overlay=true )
     
     // Strategy Tester Start Time
sYear = input(2019, title = "Start Year")
sMonth = input(04, title = "Start Month", minval = 01, maxval = 12)
sDay = input(01, title = "Start Day", minval = 01, maxval = 31)
sHour = input(00, title = "Start Hour", minval = 00, maxval = 23)
sMinute = input(00, title = "Start Minute", minval = 00, maxval = 59)
startTime = true


///////////// RSI
RSIlength = input(9,title="RSI Period Length") 
RSIoverSold = input(30, minval=1,title="RSIL")
RSIoverBought = input(69, minval=1,title="RSIh")
price = open
vrsi = rsi(price, RSIlength)


///////////// Bollinger Bands
BBlength = input(60, minval=1,title="Bollinger Period Length")
BBmult = input(2.0, minval=0.001, maxval=50,title="Bb")
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
buyEntry = crossover(source, BBlower)
sellEntry = crossunder(source, BBupper)
plot(BBbasis, color=aqua,title="Bollinger Bands SMA Basis Line")
p1 = plot(BBupper, color=silver,title="Bollinger Bands Upper Line")
p2 = plot(BBlower, color=silver,title="Bollinger Bands Lower Line")
fill(p1, p2)


///////////// Colors
switch1=input(true, title="Enable Bar Color?")
switch2=input(true, title="Enable Background Color?")
TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) and BBbasis < BBbasis[1] ? red : RSIoverSold and (price[1] < BBlower and price > BBlower) and BBbasis > BBbasis[1] ? green : na
barcolor(switch1?TrendColor:na)
bgcolor(switch2?TrendColor:na,transp=50)


///////////// RSI + Bollinger Bands Strategy
if (not na(vrsi))

    if (crossover(vrsi, RSIoverSold) and crossover(source, BBlower))
        strategy.entry("RSI_BB_L", strategy.long and startTime, stop=BBlower,  comment="RSI_BB_L")
    else
        strategy.cancel(id="RSI_BB_L")
        
    if (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper))
        strategy.entry("RSI_BB_S", strategy.short and startTime, stop=BBupper,comment="RSI_BB_S")
    else
        strategy.cancel(id="RSI_BB_S")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Lebih banyak