
Strategi ini menggunakan pita Brin dan indikator RSI acak untuk menghasilkan sinyal yang mungkin menunjukkan harga berbalik. Secara default, sinyal bearish ditampilkan sebagai panah merah dan sinyal bullish ditampilkan sebagai panah hijau. Sebelum mengirim sinyal, strategi ini akan mencari situasi berikut:
Prinsip inti dari strategi ini adalah menggunakan Brin band dan RSI acak, dua indikator teknis untuk menangkap sinyal reversal harga potensial. Brin band terdiri dari satu lintasan tengah (biasanya rata-rata bergerak) dan dua lintasan atas dan bawah (rata-rata plus minus standar deviasi), yang dapat mencerminkan pergerakan harga. Ketika harga menerobos lintasan atas atau bawah, biasanya berarti sentimen pasar terlalu optimis atau pesimis, harga mungkin akan berbalik.
Strategi sinyal RSI acak Brin dengan menggabungkan dua indikator teknis Brin dan RSI acak, dengan harga menembus Brin untuk turun ke bawah dan RSI acak mencapai zona overbought oversold sebagai sinyal potensial, membentuk satu set strategi perdagangan yang sederhana dan mudah digunakan. Strategi ini memiliki keunggulan sinyal yang handal dan luas, tetapi kinerja yang buruk di pasar bergolak, mungkin lag di pasar tren, parameter pengaturan juga lebih sensitif.
/*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)