Strategi ini menggunakan indikator RSI ganda untuk mengidentifikasi kondisi overbought dan oversold, dikombinasikan dengan breakout Bollinger Band untuk menghasilkan sinyal perdagangan.
Strategi ini menggunakan dua RSI dengan kerangka waktu yang berbeda untuk menilai status overbought / oversold jangka pendek dan jangka panjang. Sinyal perdagangan hanya dihasilkan ketika kedua RSI mencapai nilai ambang secara bersamaan. Ini menghindari sinyal palsu dari satu RSI.
Bollinger Bands juga digunakan untuk mengidentifikasi price breakout. Hanya ketika kondisi RSI terpenuhi dan harga melanggar Boll Band band atas/bawah sinyal perdagangan akan dihasilkan. Konfirmasi breakout membantu menghindari sinyal di pasar non-trending.
Akhirnya, MAs cepat dan lambat diperiksa untuk arah tren. Perdagangan hanya dibuka ketika breakout sejajar dengan arah sinyal RSI.
Penggunaan gabungan dari beberapa indikator membantu menyaring sinyal palsu, hanya memperdagangkan tren yang jelas. MAs cepat / lambat juga memfasilitasi mengikuti tren.
Risiko utama adalah kegagalan untuk segera mengidentifikasi pembalikan tren. pembalikan V yang tajam dapat menyebabkan kerugian yang signifikan tanpa stop loss yang tepat waktu. penyesuaian parameter juga dapat mempengaruhi kinerja.
Tambahkan strategi stop loss untuk keluar dengan cepat pada pembalikan.
Sertakan filter lain seperti volume untuk menghindari kebocoran palsu.
Optimalkan parameter untuk menemukan kombinasi terbaik.
Tambahkan model pembelajaran mesin untuk lebih mengidentifikasi rezim pasar.
Meningkatkan manajemen risiko termasuk ukuran posisi, kontrol kerugian.
Strategi ini menggabungkan dua RSI dan Bollinger Bands untuk mendapatkan keuntungan dari tren jangka pendek. Meskipun sederhana dan langsung, keterbatasan ada seperti sinyal pembalikan tertunda.
/*backtest start: 2023-09-11 00:00:00 end: 2023-09-12 04:00:00 period: 2m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy(title = "Madrugada strat copy", overlay = true, pyramiding = 0, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, currency = currency.USD) // === GENERAL INPUTS === // RSI 1 RSIlength = input(10,title="RSI") RSIoverSold = input(65,title="OSold") RSIoverBought = input(35,title="OBought") price = close vrsi = rsi(price, RSIlength) // RSI 2 RSIlength2 = input(6,title="RSI2") RSIoverSold2 = input(65,title="OSold2") RSIoverBought2 = input(35,title="OBought2") price2 = close vrsi2 = rsi(price2, RSIlength2) //Bollinger Bands source = close Bollinger = input(20, minval=1), Desv = input(1.7, minval=0.001, maxval=50) basis = sma(source, Bollinger) dev = Desv * stdev(source, Bollinger) upper = basis + dev lower = basis - dev plot(basis, color=red, title="BB ma") p1 = plot(upper, color=blue, title="BBajo") p2 = plot(lower, color=blue, title="BAlto") fill(p1, p2) //Media movil short = input(3, minval=1, title="Media corta") long = input(10, minval=1, title="Media larga") src = close plot(sma(src, short), color=#00FF00, transp=0, linewidth=1, title="Media rapida") plot(sma(src, long), color=white, transp=0, linewidth=2, title="Media lenta") // === STRATEGY - LONG POSITION EXECUTION === enterLong() => vrsi < 30 and vrsi2 < 27 and cross(lower, price) exitLong() => short < long strategy.entry(id = "Long", long = true, when = enterLong()) // use function or simple condition to decide when to get in // === STRATEGY - SHORT POSITION EXECUTION === enterShort() => vrsi > 70 and vrsi2 > 70 and cross(upper, price) strategy.entry(id = "Short", long = false, when = enterShort()) // Definición señales de compra buy_signals = vrsi < 30 and vrsi2 < 27 and cross(lower, price) // Definición señales de venta sell_signals = vrsi > 70 and vrsi2 > 70 and cross(upper, price) // Dibuja las señales de compra venta en franjas de color b_color = (sell_signals) ? color(red,65) : (buy_signals) ? color(green,65) : na bgcolor(b_color) // Dibuja las señales de compra venta coloreando las velas barcolor(buy_signals ? white : sell_signals ? white : na) plot(vrsi, color=white, linewidth=1) plot(vrsi, color=white, linewidth=2) // Crea alarmas usables desde el desplegable para poder enviar mails a haas alertcondition(buy_signals, title='Buy-Signal', message='compra') alertcondition(sell_signals, title='Sell-Signal', message='vende')