
Strategi ini adalah sistem perdagangan jangka masa yang dinamik yang menggabungkan Bollinger Bands dan indeks yang agak kuat RSI. Ia menangkap titik-titik perubahan pasaran dengan memantau persilangan harga dengan Bollinger Bands dan tahap overbought dan oversold RSI. Idea teras strategi adalah mencari peluang rebound apabila pasaran oversold dan berhenti tepat pada masanya apabila pasaran oversold.
Strategi ini menggunakan 20 kitaran Burin dan 14 kitaran RSI sebagai petunjuk teknikal teras. Burin terdiri daripada tiga garis: rel tengah ((20 kitaran purata bergerak sederhana), rel atas ((rel tengah + 2 kali selisih standard) dan rel bawah ((rel tengah - 2 kali selisih standard)). Isyarat beli dicetuskan apabila dua syarat dipenuhi: harga dari bawah ke atas menembusi rel bawah Burin, dan RSI di bawah 45 ((1.5 kali 30 biasa). Isyarat jual dicetuskan apabila harga ke bawah menembusi rel dan RSI di atas 70.
Risiko pasaran yang bergolak: Isyarat pecah palsu yang kerap mungkin berlaku dalam pasaran yang bergolak. Cadangan: Anda boleh menambah penapis trend dan hanya mengambil kedudukan apabila trend jelas.
Risiko kelewatan: kelewatan yang disebabkan oleh pengiraan purata bergerak boleh menjejaskan ketepatan masa isyarat. Cadangan: Pertimbangkan untuk menggunakan kitaran yang lebih pendek sebagai pengesahan tambahan.
Risiko pengoptimuman berlebihan: pengoptimuman parameter boleh menyebabkan data sejarah yang terlalu sesuai. Cadangan: Uji sepenuhnya dalam tempoh masa dan keadaan pasaran yang berbeza.
Tambahkan penapis trend: ADX atau purata bergerak jangka panjang boleh diperkenalkan untuk menilai kekuatan trend, hanya berdagang apabila trend jelas.
Pengaturan hentian yang dioptimumkan: anda boleh menetapkan kedudukan hentian secara dinamik berdasarkan ATR, meningkatkan fleksibiliti kawalan risiko.
Pengenalan pengesahan kuantiti pertukaran: penambahan analisis kuantiti pertukaran, yang memerlukan pengesahan kuantiti tambahan semasa penembusan, meningkatkan kebolehpercayaan isyarat.
Pengurusan kedudukan yang lebih baik: menyesuaikan saiz kedudukan secara automatik mengikut turun naik pasaran dan risiko akaun.
Ini adalah strategi matang yang menggabungkan analisis teknikal dengan indikator klasik, dengan penggunaan gabungan Brin dan RSI, dapat memahami trend besar dan mengawal risiko. Konsep reka bentuk strategi jelas, cara pelaksanaannya ringkas, dan mempunyai kepraktisan yang baik. Walaupun terdapat beberapa risiko yang wujud, tetapi dengan pengaturan parameter yang munasabah dan langkah-langkah pengurusan risiko, anda boleh membina sistem perdagangan yang mantap.
/*backtest
start: 2024-02-21 00:00:00
end: 2025-02-19 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"DOGE_USDT"}]
*/
//@version=5
strategy("Bollinger Bands + RSI Strategy", overlay=true)
// Bollinger Bands Parameters
length = input.int(20, title="Bollinger Length")
src = close
mult = input.float(2.0, title="Bollinger Multiplier")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
// RSI Parameters
rsiLength = input.int(14, title="RSI Length")
rsiOverbought = input.int(70, title="RSI Overbought Level", minval=50)
rsiOversold = input.int(30, title="RSI Oversold Level", maxval=50)
rsiValue = ta.rsi(src, rsiLength)
// Buy and Sell Conditions
buyCondition = ta.crossover(src, lower) and rsiValue < 1.5 * rsiOversold
sellCondition = ta.crossunder(src, upper) and rsiValue > rsiOverbought
// Plot Bollinger Bands
plot(basis, color=color.blue, title="Basis")
p1 = plot(upper, color=color.red, title="Upper Band")
p2 = plot(lower, color=color.green, title="Lower Band")
fill(p1, p2, color=color.gray, transp=90)
// Plot RSI
//hline(rsiOverbought, "Overbought", color=color.red)
//hline(rsiOversold, "Oversold", color=color.green)
// Execute Orders
if (buyCondition)
strategy.entry("Buy", strategy.long)
if (sellCondition)
strategy.close("Buy")
// Display signals on the chart
plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")