Strategi Perdagangan Bollinger Band dan Stoch RSI

Penulis:ChaoZhang, Tanggal: 2023-09-21 21:02:02
Tag:

Gambaran umum

Strategi ini menggabungkan indikator Bollinger Bands dan Stoch RSI untuk perdagangan beberapa indikator. Ini termasuk dalam jenis strategi indikator gabungan yang khas. Bollinger Bands menentukan arah tren dan Stoch RSI mengoptimalkan waktu masuk untuk sinyal perdagangan.

Logika Strategi

Strategi ini didasarkan pada dua indikator utama:

  1. Bollinger Bands

    Perhitungkan band atas, tengah dan bawah. Sinyal beli dihasilkan ketika harga menembus band bawah.

  2. Stoch RSI

    Sinyal beli dihasilkan ketika garis K melintasi garis D.

Logika perdagangan spesifiknya adalah: buka panjang ketika kedua Bollinger Bands lower breakout dan Stoch RSI golden cross terjadi bersamaan.

Logika keluar menggunakan band untuk mengambil keuntungan dan stop loss: tutup untuk keuntungan ketika harga menyentuh band atas atau tengah lagi, tutup untuk kerugian ketika harga pecah kembali di bawah band bawah.

Keuntungan

  • Menggabungkan Bollinger Bands dan Stoch RSI
  • Band menilai tren keseluruhan, Stoch RSI mengoptimalkan entri
  • Stoch RSI menyaring penyemburan band palsu
  • Band tengah dan bawah menyediakan pintu keluar
  • Beberapa parameter yang dapat disesuaikan untuk optimasi

Risiko

  • Indikator berbasis MA tertinggal, tidak ada entri terbaik
  • Hanya didorong oleh indikator, reaksi lambat terhadap kejadian mendadak
  • Pengaturan band yang tidak benar membatalkan berhenti
  • Parameter RSI Stoch yang buruk menghasilkan sinyal palsu
  • Pengaturan parameter terpisah diperlukan untuk produk yang berbeda

Risiko dapat dikurangi dengan:

  • Mengoptimalkan parameter untuk akurasi yang lebih tinggi
  • Menambahkan filter konfirmasi seperti MACD
  • Menggunakan trailing stop alih-alih band stop
  • Parameter pengujian untuk produk yang berbeda
  • Sistem pengukuran posisi

Arah Peningkatan

Strategi dapat ditingkatkan dengan:

  1. Mengoptimalkan parameter Bollinger Bands

    Sesuaikan rasio perhitungan atas/bawah untuk pencocokan terbaik

  2. Mengoptimalkan parameter Stoch RSI

    Menemukan nilai K dan D yang optimal

  3. Menambahkan indikator konfirmasi seperti MACD

    Hindari sinyal palsu yang bergantung pada satu indikator

  4. Menggunakan stop profit trailing alih-alih stop tetap

    Stop Trail berdasarkan volatilitas harga

  5. Parameter pengujian secara terpisah untuk produk yang berbeda

    Parameter optimal bervariasi di berbagai produk

Ringkasan

Strategi ini memanfaatkan Bollinger Bands untuk arah tren dan Stoch RSI untuk optimasi entri, memanfaatkan pendekatan multi-indikator. Namun tantangan seperti optimasi parameter yang sulit dan akurasi sinyal ada. backtesting yang ketat untuk optimasi parameter, menambahkan filter, dan terus menyesuaikan aturan berdasarkan hasil dapat meningkatkan akurasi sambil mempertahankan kekuatan sistem gabungan.


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

//@version=3

strategy(title = "BB+RSI v2", overlay = true)

price=close
////////// ///////  BB /////////////////////////

bblength = input(50)
bbupmult =input(2,step=0.1,title="Multiplier for BB Upper Band")
bblowmult = input(2,step=0.1,title="Multiplier for BB Lower Band")

basis =  sma(close,bblength)

devup = bbupmult * stdev(close, bblength)
devlow = bblowmult * stdev(close, bblength)

upper = basis + devup
lower = basis - devlow
plot(basis, color=red)
p1 = plot(upper, color=blue)
p2 = plot(lower, color=blue)
fill(p1, p2)


bbbuy= crossover(price,lower)
bbsell = crossunder(price,upper) or price>upper or crossunder(price,basis)



//////////////////// BB //////////////////////




////////////////////////  S RSI  /////////////////////

lengthrsi = input(6)
overSold = input( 20 )
overBought = input( 70 )
vrsi = rsi(price, lengthrsi)

smoothK = input(3, minval=1)
smoothD = input(3, minval=1)
lengthRSI = input(14, minval=1)
lengthStoch = input(14, minval=1)
src = input(close, title="RSI Source")

rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)

SRSIbuy=crossover(k,d)

////////////////////// S  RSI  ///////////////////////

// Conditions



longcond = bbbuy and SRSIbuy
closelong = bbsell


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



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


if ( closelong  ) 

    strategy.close("BUY")







Lebih banyak