Strategi ini menggunakan Bollinger Bands dan indikator RSI Stochastic untuk menghasilkan sinyal yang dapat menunjukkan pembalikan harga. Secara default, sinyal bearish ditampilkan sebagai panah merah dan sinyal bullish sebagai panah hijau. Sebelum mengirim sinyal, strategi mencari kondisi berikut: (bullish) lilin ditutup di atas Bollinger Band atas, lilin berikutnya ditutup di dalam band atas, dan RSI Stochastic berada di bawah ambang batas yang telah ditetapkan sebelumnya (default 10); (bearish) lilin ditutup di bawah Bollinger Band bawah, lilin berikutnya ditutup di dalam band bawah, dan RSI Stochastic berada di atas ambang batas yang telah ditetapkan sebelumnya (default 90).
Prinsip inti dari strategi ini adalah menggunakan Bollinger Bands dan Stochastic RSI, dua indikator teknis, untuk menangkap sinyal pembalikan harga potensial. Bollinger Bands terdiri dari sebuah band tengah (biasanya rata-rata bergerak) dan dua band atas dan bawah (band tengah ditambah / dikurangi standar deviasi), yang dapat mencerminkan volatilitas harga. Ketika harga menembus band atas atau bawah, biasanya menunjukkan bahwa sentimen pasar terlalu optimis atau pesimis, dan harga dapat terbalik.
Bollinger Bands Stochastic RSI Extreme Signal Strategy menggabungkan dua indikator teknis, Bollinger Bands dan Stochastic RSI, menggunakan price breakout dari Bollinger Bands atas dan bawah dan Stochastic RSI mencapai area ekstrim overbought/oversold sebagai sinyal pembalikan potensial, membentuk strategi trading yang sederhana dan mudah digunakan. Strategi ini memiliki keuntungan seperti sinyal yang dapat diandalkan dan penerapan luas, tetapi berkinerja buruk di pasar rentang, mungkin tertinggal di pasar tren, dan sangat sensitif terhadap pengaturan parameter. Oleh karena itu, dalam aplikasi praktis, kita dapat mempertimbangkan mengoptimalkan dan meningkatkan strategi dari aspek seperti konfirmasi tren, parameter dinamis, stop-loss dan take-profit, dan menggabungkannya dengan indikator lain, untuk meningkatkan keuntungannya dan praktik kuantitatif yang lebih baik.
/*backtest start: 2023-04-06 00:00:00 end: 2024-04-11 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(shorttitle='BBSR Extreme', title='Bollinger Bands Stochastic RSI Extreme Signal', overlay=true) //General Inputs src = input(close, title='Source') offset = input.int(0, 'Offset', minval=-500, maxval=500) //Bollinger Inputs length = input.int(20, title='Bollinger Band Length', minval=1) mult = input.float(2.0, minval=0.001, maxval=50, title='StdDev') //Bollinger Code basis = ta.sma(src, length) dev = mult * ta.stdev(src, length) upper = basis + dev lower = basis - dev plot(basis, 'BB Basis', color=color.new(#872323, 0), offset=offset) p1 = plot(upper, 'BB Upper', color=color.new(color.teal, 0), offset=offset) p2 = plot(lower, 'BB Lower', color=color.new(color.teal, 0), offset=offset) fill(p1, p2, title='BB Background', color=color.new(#198787, 95)) //Stoch Inputs smoothK = input.int(3, 'K', minval=1) smoothD = input.int(3, 'D', minval=1) lengthRSI = input.int(14, 'RSI Length', minval=1) lengthStoch = input.int(14, 'Stochastic Length', minval=1) upperlimit = input.float(90, 'Upper Limit', minval=0.01) lowerlimit = input.float(10, 'Upper Limit', minval=0.01) //Stochastic Code rsi1 = ta.rsi(src, lengthRSI) k = ta.sma(ta.stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK) d = ta.sma(k, smoothD) //Evaluation Bear = close[1] > upper[1] and close < upper and k[1] > upperlimit and d[1] > upperlimit Bull = close[1] < lower[1] and close > lower and k[1] < lowerlimit and d[1] < lowerlimit //Plots plotshape(Bear, style=shape.triangledown, location=location.abovebar, color=color.new(color.red, 0), size=size.tiny) plotshape(Bull, style=shape.triangleup, location=location.belowbar, color=color.new(color.green, 0), size=size.tiny) // Alert Functionality alertcondition(Bear or Bull, title='Any Signal', message='{{exchange}}:{{ticker}}' + ' {{interval}}' + ' BB Stochastic Extreme!') alertcondition(Bear, title='Bearish Signal', message='{{exchange}}:{{ticker}}' + ' {{interval}}' + ' Bearish BB Stochastic Extreme!') alertcondition(Bull, title='Bullish Signal', message='{{exchange}}:{{ticker}}' + ' {{interval}}' + ' Bullish BB Stochastic Extreme!') if Bear strategy.entry('Enter Long', strategy.long) else if Bull strategy.entry('Enter Short', strategy.short)