Strategi Kuantitatif RSI dan Bollinger Bands


Tarikh penciptaan: 2024-01-24 14:56:02 Akhirnya diubah suai: 2024-01-24 14:56:02
Salin: 3 Bilangan klik: 637
1
fokus pada
1617
Pengikut

Strategi Kuantitatif RSI dan Bollinger Bands

Gambaran keseluruhan

Strategi ini menggunakan indikator RSI yang agak lemah untuk menentukan isyarat perdagangan dengan Brin. Secara khusus, RSI melakukan lebih banyak apabila RSI rendah berhadapan dengan Brin bawah dan RSI tinggi berhadapan dengan Brin atas.

Prinsip Strategi

Strategi ini mula-mula mengira RSI dan Bollinger Bands. RSI mencerminkan kekuatan relatif barangan yang diperdagangkan. RSI mewakili barangan yang berada di zon oversold ketika RSI berada di bawah zon oversold (default 30). Bollinger Bands merangkumi uptrend, midtrend, dan downtrend, yang sangat baik untuk mencerminkan pergerakan harga.

Kelebihan Strategik

  1. Gabungan RSI dengan Brinband untuk meningkatkan ketepatan penilaian isyarat
  2. Indeks RSI menapis sebahagian daripada isyarat bising
  3. Blinking Band mencerminkan julat besar turun naik pasaran semasa, dan isyaratnya lebih dipercayai
  4. Strategi perdagangan yang lebih ketat, mengelakkan transaksi yang tidak sah

Risiko Strategik

  1. Seting parameter Brinband yang tidak betul boleh menyebabkan isyarat dagangan tidak tepat
  2. RSI overbought overbought parameter yang tidak betul juga boleh mempengaruhi keputusan isyarat
  3. Strategi yang lebih ketat, mungkin terlepas peluang perdagangan

Penyelesaian risiko:

  1. Mengoptimumkan parameter Brin dan RSI untuk mencari kombinasi parameter terbaik
  2. Syarat-syarat perdagangan yang sesuai untuk melonggarkan strategi, menambah jumlah perdagangan yang tidak sah untuk mendapatkan lebih banyak peluang

Arah pengoptimuman strategi

  1. Uji dan optimumkan parameter RSI dan parameter Brin untuk mencari parameter yang optimum
  2. Meningkatkan strategi hentikan kerugian untuk mengawal risiko perdagangan
  3. Pertimbangkan untuk menambah petunjuk teknikal lain untuk pengesahan isyarat, seperti MACD dan sebagainya
  4. Uji kesan pengoptimuman parameter untuk pelbagai jenis dan tempoh masa

ringkaskan

Strategi ini secara keseluruhannya lebih kukuh, dengan berkesan menggabungkan indikator RSI dan Bolling Stop. Dengan menguji dan mengoptimumkan parameter, anda dapat meningkatkan lagi keberkesanan strategi. Anda juga perlu berjaga-jaga terhadap risiko kehilangan isyarat yang mungkin disebabkan oleh strategi yang lebih ketat.

Kod sumber strategi
/*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)