Strategi ini menggunakan RSI untuk menilai keadaan overbought dan oversold, dan bekerjasama dengan saluran harga yang bergolak dengan indikator Burin, membentuk isyarat perdagangan. Apabila indikator RSI menunjukkan fenomena overbought atau oversold, dan apabila harga mendekati atau menyentuh Burin, ia menghasilkan isyarat beli dan jual.
Strategi ini dinilai berdasarkan dua petunjuk utama:
Mengira RSI yang relatif kuat dan lemah dalam tempoh tertentu, berdasarkan parameter yang telah ditetapkan untuk menentukan sama ada ia memasuki kawasan yang terlalu banyak atau terlalu banyak dijual, seperti batas atas kawasan yang terlalu banyak dibeli ditetapkan pada 40, dan batas bawah kawasan yang terlalu banyak dijual ditetapkan pada 45.
Hitung jalur Brin dalam jangka masa tertentu, membentuk saluran harga melalui lintasan atas dan bawahnya, menggambarkan ruang lingkup pergerakan harga.
Berdasarkan ini, strategi ini memberikan peraturan perdagangan berikut:
Apabila RSI melintasi 45 ke kawasan oversold, dan harga melintasi Bollinger Bands ke bawah, menghasilkan isyarat beli; Apabila RSI melepasi 40 dan memasuki zon oversold, dan harga melepasi Bollinger Bands, ia akan menghasilkan isyarat menjual.
Strategi ini menggabungkan RSI dengan Bollinger Bands dan mempunyai kelebihan berikut:
RSI menilai keadaan overbought dan oversold, dan Blinker menilai arah trend harga, kedua-duanya saling melengkapi;
Brin Belt atas dan bawah boleh digunakan sebagai penempatan stop loss, yang membantu mengawal risiko;
Pengaturan parameter mudah, mudah dilaksanakan dan diukur;
Ia boleh dioptimumkan untuk parameter RSI untuk menentukan jarak termaju yang optimum.
Anda boleh memilih input harga yang berbeza untuk menyesuaikan diri dengan pelbagai keadaan pasaran.
Strategi ini mempunyai beberapa risiko:
Blink band yang terlalu luas menyebabkan kerugian yang kurang dijangkakan
Parameter RSI tidak betul, kesalahan penghakiman dalam julat overbought dan oversold
Tidak dapat menentukan titik perubahan trend dengan tepat, risiko kehilangan isyarat
Tidak dapat mengawal kerugian dengan berkesan, terdapat risiko besar untuk menghentikan kejutan pasaran
Strategi ini boleh dioptimumkan dalam beberapa aspek:
Mengoptimumkan parameter RSI untuk menentukan julat terbaik untuk membeli dan menjual
Optimumkan parameter lebar jalur Brin, mengawal julat henti
Menambah petunjuk lain untuk menilai perubahan trend dan mengelakkan kehilangan isyarat
Menggunakan algoritma pembelajaran mesin untuk menentukan masa untuk membeli atau menjual
Menggunakan kombinasi parameter yang berbeza mengikut keadaan pasaran yang berbeza
Menambah mekanisme hentian kerugian dinamik
Program pengoptimuman automatik parameter pembangunan
Secara keseluruhannya, strategi ini membentuk asas keputusan perdagangan yang lebih stabil melalui penggunaan RSI dan indikator Bollinger Bands. Logik strategi mudah dan jelas, yang membantu mengawal risiko, tetapi ada ruang untuk pengoptimuman. Kesan strategi dapat dipertingkatkan lagi melalui pengoptimuman parameter, pengoptimuman stop loss, dan pengenalan algoritma.
/*backtest
start: 2023-08-18 00:00:00
end: 2023-09-17 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Mdemoio
//@version=4
strategy("Madri", shorttitle="Madri", overlay=true)
// Version 1.1
///////////// RSI
RSIlength = input(2,title="A")
RSIoverSold = 45
RSIoverBought = 40
price = close
vrsi = rsi(price, RSIlength)
///////////// Bollinger Bands
BBlength = input(150, minval=1,title="B")
BBmult = 2// input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation")
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)
///////////// Colors
//switch1=input(true, title="Enable Bar Color?")
//switch2=input(true, title="Enable Background Color?")
//TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) and BBbasis < BBbasis[1] ? red : RSIoverSold and (price[1] < BBlower and price > BBlower) and BBbasis > BBbasis[1] ? 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="Buy")
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="Sell")
else
strategy.cancel(id="RSI_BB_S")
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)