Bollinger Bands RSI Crossover Strategy


Tarikh penciptaan: 2023-12-29 16:40:19 Akhirnya diubah suai: 2023-12-29 16:40:19
Salin: 2 Bilangan klik: 679
1
fokus pada
1621
Pengikut

Bollinger Bands RSI Crossover Strategy

Gambaran keseluruhan

Strategi ini menggabungkan penggunaan indikator teknikal Bollinger Bands dan RSI (Relative Strength Index) untuk menentukan sama ada harga menyentuh atau menembusi Bollinger Bands ke atas atau ke bawah untuk menghantar isyarat beli dan jual apabila RSI berlaku.

Prinsip Strategi

  1. Hitung SMA 20 kitaran sebagai garis asas, garis atas adalah garis asas + 2 kali perbezaan standard, garis bawah adalah garis asas - 2 kali perbezaan standard, membina Boring Belt.

  2. Berhitung 14 kitaran RSI nilai, RSI lebih tinggi daripada 70 adalah kawasan membeli-belah, RSI bawah 30 adalah kawasan menjual-belah.

  3. Apabila penembusan RSI di bawah 30 menghasilkan isyarat beli jika harga berada di bawah rel bawah; apabila penembusan RSI di atas 70 menghasilkan isyarat jual jika harga berada di atas rel atas.

Analisis kelebihan

  1. Bollinger Bands menggunakan standard deviation range untuk menilai pergerakan harga dan pergerakan masa depan, dan mempunyai kebolehan yang lebih kuat untuk menilai trend.

  2. Indeks RSI menilai keadaan overbought dan oversold, yang digabungkan dengan penilaian lintasan Bollinger Bands, dapat secara berkesan mengesan peluang untuk berbalik.

  3. Indeks RSI mudah membentuk isyarat terobosan, yang dikombinasikan dengan Boring Band, isyarat lebih tepat dan boleh dipercayai.

Analisis risiko

  1. Ia juga tidak pasti sama ada harga akan terus naik atau turun.

  2. Indeks RSI juga boleh membentuk isyarat pecah palsu yang tidak selaras dengan keputusan penghakiman Bollinger Bands.

  3. Penyesuaian parameter yang betul adalah sangat penting, kerana parameter yang tidak betul boleh menyebabkan isyarat perdagangan terlalu kerap atau jarang berlaku.

Arah pengoptimuman

  1. Anda boleh menguji parameter untuk tempoh yang berbeza untuk mencari kombinasi parameter yang terbaik.

  2. Ia boleh digabungkan dengan penunjuk lain, seperti KD, MACD dan lain-lain, untuk meningkatkan kebolehpercayaan isyarat.

  3. Anda boleh mengoptimumkan strategi hentian kerugian dan mengawal risiko berdasarkan keputusan ujian semula.

ringkaskan

Strategi ini mengintegrasikan analisis trend Boring Belt dan penilaian overbought dan oversold RSI untuk membentuk isyarat perdagangan. Secara keseluruhan, strategi ini jelas, mudah dilaksanakan, dan mempunyai nilai sebenar. Tetapi ada juga risiko tertentu, perlu berhati-hati dengan penyesuaian parameter dan penunjuk integrasi, terus dioptimumkan, agar sesuai dengan keadaan pasaran yang berbeza.

Kod sumber strategi
/*backtest
start: 2023-12-21 00:00:00
end: 2023-12-28 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bollinger Bands and RSI Strategy", overlay=false)

// Define the parameters
length = input.int(20, "Length", minval=1)
src = input(close, "Source")
mult = input.float(2.0, "StdDev", minval=0.001, maxval=50)
rsiLength = input.int(14, "RSI Length", minval=1)
rsiOverbought = input.int(70, "RSI Overbought Level", minval=1, maxval=100)
rsiOversold = input.int(30, "RSI Oversold Level", minval=1, maxval=100)

// Calculate the Bollinger Bands
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev

// Plot the Bollinger Bands
plot(basis, "Basis", color=#FF6D00)
p1 = plot(upper, "Upper", color=#2962FF)
p2 = plot(lower, "Lower", color=#2962FF)
fill(p1, p2, color=color.rgb(33, 150, 243, 90), title="Background")

// Calculate the RSI
rsi = ta.rsi(src, rsiLength)

// Plot the RSI
plot(rsi, "RSI", color=#FF6D00)

// Define the entry and exit conditions
longCondition = ta.crossover(rsi, rsiOversold) and src < lower // Use ta.crossover here
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = ta.crossunder(rsi, rsiOverbought) and src > upper // Use ta.crossunder here
if (shortCondition)
    strategy.entry("Short", strategy.short)

// Plot the buy and sell signals
plotshape(longCondition, title="Buy", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(shortCondition, title="Sell", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)