Strategi ini adalah pendekatan perdagangan kuantitatif yang menggabungkan Bollinger Bands dan Relative Strength Index (RSI). Strategi ini menangkap titik balik pasar dengan mengkoordinasikan price breakout dari Bollinger Bands dengan zona overbought/oversold RSI. Strategi ini menggunakan Bollinger Bands 20 periode dan RSI 14 periode, memasuki posisi panjang ketika harga menembus band bawah sementara RSI berada di wilayah oversold, dan menutup posisi ketika harga menembus band atas sementara RSI berada di wilayah overbought.
Logika inti didasarkan pada sinergi dua indikator teknis. Bollinger Band terdiri dari band tengah (20-periode SMA) dan band atas/bawah (pertengahan ±2 standar deviasi), mencerminkan volatilitas harga dan tren. RSI menghitung kekuatan relatif pergerakan harga untuk mengidentifikasi kondisi overbought/oversold. Ketika harga menyentuh band bawah dan RSI di bawah 30, itu menunjukkan kondisi oversold potensial dan peluang rebound. Ketika harga menyentuh band atas dan RSI di atas 70, itu menunjukkan kondisi overbought potensial dan risiko koreksi.
Ini adalah strategi kuantitatif yang secara inovatif menggabungkan indikator teknis klasik Bollinger Bands dan RSI. Melalui efek komplementer dari indikator ini, ia memastikan keandalan sinyal sambil secara efektif menangkap titik balik pasar. Strategi ini memiliki logika yang jelas dan perhitungan sederhana dengan kepraktisan yang kuat. Meskipun ada beberapa risiko yang melekat, arah optimasi yang disarankan dapat lebih meningkatkan stabilitas dan profitabilitas strategi. Strategi ini cocok untuk pasar tren dan dapat memberikan referensi sinyal perdagangan obyektif bagi investor.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-25 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Bands + RSI Strategy", overlay=true) // Bollinger Bands length = 20 src = close mult = 2.0 basis = ta.sma(src, length) dev = mult * ta.stdev(src, length) upper = basis + dev lower = basis - dev // RSI rsiLength = 14 rsiOverbought = 70 rsiOversold = 30 rsiValue = ta.rsi(src, rsiLength) // Plot Bollinger Bands plot(basis, color=color.blue, linewidth=1) plot(upper, color=color.red, linewidth=1) plot(lower, color=color.green, linewidth=1) // Plot Buy/Sell signals buySignal = ta.crossover(close, lower) and rsiValue < rsiOversold sellSignal = ta.crossunder(close, upper) and rsiValue > rsiOverbought plotshape(series=buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(series=sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Strategy Entry/Exit if (buySignal) strategy.entry("Buy", strategy.long) if (sellSignal) strategy.close("Buy") // RSI Plot (not on overlay, for reference) rsiPlot = plot(rsiValue, title="RSI", color=color.purple, linewidth=1, offset=-1) hline(rsiOverbought, "Overbought", color=color.red) hline(rsiOversold, "Oversold", color=color.green)