Strategi ini adalah sistem dagangan adaptif yang menggabungkan Bollinger Bands dan Indeks Kekuatan Relatif (RSI). Ia mengenal pasti peluang dagangan yang berpotensi dengan menggunakan saluran harga Bollinger Bands
Inti strategi ini adalah untuk menangkap peluang turun naik pasaran melalui Bollinger Bands
Strategi ini membina sistem perdagangan yang agak lengkap melalui aplikasi gabungan Bollinger Bands dan RSI. Kekuatannya terletak pada keupayaannya untuk menyesuaikan diri dengan turun naik pasaran dan memberikan isyarat perdagangan yang boleh dipercayai, walaupun kesan persekitaran pasaran terhadap prestasi strategi memerlukan perhatian. Melalui arah pengoptimuman yang dicadangkan, kestabilan dan kebolehpercayaan strategi dapat ditingkatkan lagi. Dalam aplikasi praktikal, peniaga dinasihatkan untuk menyesuaikan parameter mengikut ciri pasaran tertentu dan menggabungkannya dengan alat analisis teknikal lain untuk keputusan perdagangan.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-09 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Bands and RSI Strategy with Buy/Sell Signals", overlay=true) // Input settings bb_length = input.int(20, title="Bollinger Bands Length", minval=1) bb_mult = input.float(2.0, title="Bollinger Bands Multiplier", minval=0.1) rsi_length = input.int(14, title="RSI Length", minval=1) rsi_overbought = input.int(70, title="RSI Overbought Level", minval=50) rsi_oversold = input.int(30, title="RSI Oversold Level", minval=1) // Bollinger Bands calculation basis = ta.sma(close, bb_length) dev = bb_mult * ta.stdev(close, bb_length) upper_band = basis + dev lower_band = basis - dev // RSI calculation rsi = ta.rsi(close, rsi_length) // Buy signal: Price touches lower Bollinger Band and RSI is oversold buy_signal = ta.crossover(close, lower_band) and rsi < rsi_oversold // Sell signal: Price touches upper Bollinger Band and RSI is overbought sell_signal = ta.crossunder(close, upper_band) and rsi > rsi_overbought // Execute orders if (buy_signal) strategy.entry("Buy", strategy.long) if (sell_signal) strategy.close("Buy") // Plotting Bollinger Bands and RSI plot(upper_band, color=color.red, linewidth=2, title="Upper Band") plot(lower_band, color=color.green, linewidth=2, title="Lower Band") plot(basis, color=color.blue, linewidth=1, title="Middle Band") hline(rsi_overbought, "Overbought", color=color.red, linestyle=hline.style_dashed) hline(rsi_oversold, "Oversold", color=color.green, linestyle=hline.style_dashed) plot(rsi, "RSI", color=color.orange) // Add Buy/Sell signals on the chart plotshape(series=buy_signal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(series=sell_signal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")