
Strategi ini dikenali sebagai strategi penapis dua indikator untuk perdagangan kuantitatif. Strategi ini menggunakan kedua-dua indikator Brin dan indikator yang agak kuat sebagai isyarat perdagangan, mewujudkan strategi perdagangan penapis dua indikator.
Logik utama strategi ini adalah untuk menyaring isyarat perdagangan dengan menggunakan kedua-dua indikator Brin dan RSI untuk menilai keadaan jual beli yang berlebihan di pasaran.
Khususnya, lintasan atas dan bawah Brin Belt dapat menentukan sama ada harga berada di luar jangkauan turun naik, dan dengan itu menentukan sama ada pasaran terlalu beli atau terlalu jual. Indeks RSI yang agak kuat dapat menentukan kekuatan pasaran yang lemah, RSI lebih tinggi dari 55 adalah isyarat membeli lebih banyak, dan lebih rendah dari 45 adalah isyarat menjual lebih banyak.
Strategi ini ditetapkan untuk melakukan pembelian atau penjualan yang sesuai hanya apabila indikator Brin dan RSI menunjukkan isyarat overbought atau oversold pada masa yang sama. Ini dapat menyaring beberapa isyarat yang menyesatkan dan meningkatkan kestabilan strategi.
Kelebihan utama strategi ini adalah penapisan menggunakan dua kali ganda, yang dapat mengurangkan perdagangan yang mengelirukan dan meningkatkan kebolehpercayaan isyarat.
Berbanding dengan satu indikator Brin, strategi Brin ganda dapat mengurangkan kemungkinan isyarat palsu. Berbanding dengan satu indikator RSI, anda boleh menggunakan Brin untuk mengetahui sama ada anda berada di luar kawasan goyah, dan mencegah isyarat salah dalam pasaran goyah.
Secara keseluruhannya, strategi berpatutan berganda mempertimbangkan pelbagai keadaan dan mempunyai daya adaptasi dan kestabilan yang lebih baik.
Risiko utama strategi ini adalah bahawa kedua-dua tetapan parameter Brin dan parameter RSI mungkin tidak tepat. Jika tetapan parameter Brin terlalu sensitif, ia mudah menghasilkan isyarat berlebihan; jika parameter RSI terlalu longgar, kesannya lemah.
Di samping itu, kombinasi dua indikator itu sendiri bermakna kurang isyarat. Strategi ini tidak akan menghasilkan isyarat jika pasaran hanya memenuhi isyarat satu indikator dan indikator lain tidak mencapai tahap mencetuskan. Oleh itu, frekuensi perdagangan strategi ini akan lebih rendah berbanding dengan strategi satu indikator.
Penyelesaiannya adalah dengan menetapkan parameter yang lebih tepat, mengubah trigger level RSI dan Brin Belt. Jika frekuensi perdagangan terlalu rendah, anda boleh mempertimbangkan untuk mengurangkan keperluan parameter dan meningkatkan peluang masuk.
Strategi ini boleh dioptimumkan dengan cara berikut:
Uji pelbagai kombinasi parameter Brin dan RSI untuk mencari kombinasi yang lebih sesuai. Parameter yang ada mungkin tidak sesuai untuk semua jenis dan tempoh masa.
Menambah strategi stop-loss dan meningkatkan hasil keuntungan. Strategi semasa tidak mempertimbangkan aspek ini.
Menambah mekanisme pengurusan kedudukan. Menggunakan kedudukan dinamik boleh meningkatkan kedudukan apabila bergerak baik dan mengurangkan kerugian apabila bergerak buruk.
Tambah fungsi penyesuaian parameter berdasarkan data sejarah. Biarkan parameter penunjuk dioptimumkan secara automatik untuk menyesuaikan diri dengan keadaan pasaran terkini.
Strategi ini adalah strategi penapisan dua indikator, dengan kestabilan dan adaptasi yang lebih baik secara keseluruhan. Ia mengurangkan peratusan isyarat palsu, tetapi juga mengurangkan frekuensi perdagangan. Dengan mengoptimumkan parameter indikator dan menambah fungsi tambahan, ruang keuntungan strategi dapat dipertingkatkan lagi.
/*backtest
start: 2024-01-07 00:00:00
end: 2024-01-11 23:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Bollinger Bands + RSI, Double Strategy (by SlumdogTrader)", shorttitle="BolBand_RSI_Strat", overlay=true)
// SlumdogTrader's Bollinger Bands + RSI Double Strategy - Profit Trailer
//
// Version 1.0
// Script by SlumdogTrader on July Fri 13(!), 2018.
//
// This strategy uses a normalise Bollinger Bands + RSI.
//
// Bollinger Band triggers
// SELL - when the price is above the upper band.
// BUY - when the price is below the lower band.
//
// RSI triggers
// SELL - when the price is above 55.
// BUY - when the price is below 45.
//
// This simple strategy only triggers when
// both the BB and the RSI
// indicators, at the same time, are in
// a overbought or oversold condition.
//
// Visit my TradingView work at:
// https://www.tradingview.com/u/SlumdogTrader/
//
// Visit my website at:
// https://www.slumdogtrader.com
//
///////////// Bollinger Bands Settings
BBlength = input(20, minval=1,title="Bollinger Bands SMA Period Length")
BBmult = input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation")
price = input(close, title="Source")
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
buyEntry = crossover(source, BBlower)
sellEntry = crossunder(source, BBupper)
plot(BBbasis, color=aqua,title="BBs SMA Basis Line")
p1 = plot(BBupper, color=silver,title="BBs Upper Line")
p2 = plot(BBlower, color=silver,title="BBs Lower Line")
fill(p1, p2)
///////////// RSI Settings
RSIlength = input( 16 ,title="RSI Period Length")
RSIvalue = input( 45 ,title="RSI Value Range")
RSIoverSold = 0 + RSIvalue
RSIoverBought = 100 - RSIvalue
vrsi = rsi(price, RSIlength)
///////////// Colour Settings
switch1=input(true, title="Enable Bar Color?")
switch2=input(true, title="Enable Background Color?")
TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) ? red : RSIoverSold and (price[1] < BBlower and price > BBlower) ? green : na
barcolor(switch1?TrendColor:na)
bgcolor(switch2?TrendColor:na,transp=50)
///////////// RSI + Bollinger Bands Strategy
if (not na(vrsi))
if (crossover(vrsi, RSIoverSold) and crossover(source, BBlower))
strategy.entry("RSI_BB_L", strategy.long, stop=BBlower, comment="RSI_BB_L")
else
strategy.cancel(id="RSI_BB_L")
if (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper))
strategy.entry("RSI_BB_S", strategy.short, stop=BBupper, comment="RSI_BB_S")
else
strategy.cancel(id="RSI_BB_S")
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)