
Strategi ini menggunakan gabungan RSI 5 hari dengan purata bergerak 200 hari untuk membentuk isyarat keputusan perdagangan. Strategi ini adalah strategi gabungan indikator teknikal. Prinsip perdagangan utamanya adalah: apabila harga berjalan ke kawasan overbought, isyarat menjual; apabila harga jatuh ke kawasan overbought, isyarat membeli.
Strategi ini menggunakan gabungan RSI 5 hari dengan purata bergerak 200 hari untuk menentukan kawasan jual-beli yang berlebihan di mana harga bergerak dan membentuk keputusan perdagangan:
Indeks RSI 5 hari menentukan kawasan jual beli yang lebih tinggi daripada harga yang berjalan. Ditetapkan garis jual beli 72 dan kawasan jual beli 30 . Apabila indikator RSI dari bawah ke atas menembusi 30 menghasilkan isyarat beli; Apabila indikator RSI dari atas ke bawah menembusi 72 menghasilkan isyarat jual .
Rata-rata bergerak 200 hari menentukan arah trend garis panjang harga. Apabila harga berada di bawah garis purata 200 hari, ia adalah tahap penurunan harga; Apabila harga berada di atas garis purata 200 hari, ia adalah tahap kenaikan harga.
Dengan menggunakan penghakiman 1, 2, strategi ini akan membeli apabila RSI 5 hari melampaui dan melepasi 72 dan membeli apabila RSI 5 hari melampaui 30 dan harga di bawah garis purata 200 hari.
Isyarat strategi lebih jelas, menggunakan kawasan Penghakiman RSI untuk menentukan isyarat overbought dan oversold.
Garis purata 200 hari menilai arah trend besar, mengelakkan operasi berlawanan arah.
Anda boleh menetapkan jumlah maksimum untuk mengawal risiko.
Terdapat ruang yang luas untuk mengoptimumkan parameter strategi, dan parameter RSI boleh disesuaikan dengan parameter rata-rata.
Risiko penarikan balik yang lebih rendah, strategi kawalan yang berkesan untuk penarikan balik maksimum.
Dengan hanya menggunakan RSI dan rata-rata, isyarat strategi mungkin tidak stabil dan terdapat risiko kerugian dalam pasaran yang bergolak.
Perlu mengoptimumkan dan menguji parameter RSI dan parameter garis purata untuk mendapatkan kesan strategi yang lebih baik.
Indikator atau model penilaian lain boleh diperkenalkan, untuk mengoptimumkan isyarat strategi.
Menggunakan lebih banyak kombinasi penunjuk penilaian. Seperti MACD, KD, penunjuk kadar turun naik dan sebagainya.
Menambah penilaian model pembelajaran mesin. Sebagai contoh, LSTM menilai kestabilan isyarat perdagangan.
Menambah faktor kuantitatif. Faktor kewangan seperti perubahan jumlah urus niaga, aliran dana dan sebagainya.
Parameter strategi pengoptimuman. Seperti parameter RSI, parameter garis purata dan sebagainya.
Mengoptimumkan mekanisme penangguhan, seperti penangguhan bergerak, penangguhan masa dan sebagainya.
Strategi ini digunakan untuk menentukan kawasan harga yang lebih baik daripada harga yang lebih baik daripada 5 hari RSI dan 200 hari rata-rata, membentuk isyarat perdagangan, termasuk dalam strategi gabungan indikator teknikal. Isyarat strategi lebih jelas, risiko penarikan balik maksimum lebih kecil. Tetapi anda boleh mengoptimumkan lebih lanjut untuk meningkatkan kesan strategi melalui kombinasi pelbagai indikator dan penilaian pembelajaran mesin.
/*backtest
start: 2024-01-24 00:00:00
end: 2024-01-31 00:00:00
period: 3m
basePeriod: 1m
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/
// ©chewyScripts.
//@version=5
strategy("96er RSI+200EMA Strategy + Alerts", overlay=true)
// This works best on a small account $100, with 50% of equity and up to 10 max open trades.
// 96% Profitable, turns $100 into $350 in 1 month. very few losses. super happy with it.
// So far it triples the account on a 1m chart in 1 month back testing on the SEI-USD pair.
// I did not test on FX pairs or other instruments.
// had some issues with the inputs not working so had to hard code some, also the lastClose var sometimes breaks and starts following every candle, not sure why.
in_r1 = input.int(5,"5 day input or RSI1")
in_openOrders = input.int(3,"max open orders")
in_lowerRSI = input.int(30,"RSI Lower")
in_upperRSI = input.int(72,"RSI Upper ")
in_emaperiod = input.int(200,"EMA Period")
in_buybreakout = input.int(50,"Buy breakout range")
in_buyTP = input.float(1.05,"Buy TP: 1+TP %, .05 seems to work well.")
in_sellTP = input.float(0.9850, "Sell TP: 1-TP%. .025 seems to work well. ")
simple int rsi5 = in_r1
// 3 rsi strategy , when all of them are overbought we sell, and vice versa
rsi7 = ta.rsi(close,rsi5)
lastClose = request.security(syminfo.tickerid, "D", close, lookahead = barmerge.lookahead_on)
rsi3 = ta.rsi(close[5],rsi5)
ma = ta.ema(close,in_emaperiod)
plot(rsi7,"5 Day RSI",color.red)
plot(lastClose,"Yesterdays Close",color.green)
plot(rsi3,"Previous 5th candles RSI",color.purple)
// sell condition
//sell = ta.crossunder(rsi7,70) and ta.crossunder(rsi14,70) and ta.crossunder(rsi21,70)
//buy condition
//buy = ta.crossover(rsi7,in_lowerRSI) and close < ma and rsi3 <= in_upperRSI and strategy.opentrades < in_openOrders
//sell = ta.crossunder(rsi7,in_upperRSI) and close > ma and rsi3 >= in_lowerRSI3 and strategy.opentrades < in_openOrders
buy = ta.crossover(rsi7,in_lowerRSI) and close < ma and close < lastClose and strategy.opentrades < in_openOrders
sell = ta.crossunder(rsi7,in_upperRSI) and close > ma and close > lastClose and strategy.opentrades < in_openOrders
var lastBuy = close
var lastSell = close
if (buy)
strategy.entry("BUY", strategy.long)
lastBuy := close
alert("Buy")
if ((close >= lastBuy*in_buyTP ) or rsi7 > in_buybreakout and close >= lastClose and (close >= lastClose*in_buyTP or close >= lastBuy*in_buyTP ) )
strategy.close("BUY", "BUY Exit")
alert("Buy Exit")
if (sell)
strategy.entry("SELL", strategy.short)
lastSell := close
alert("Sell")
if ( close < ma and (close <= lastSell*in_sellTP ) or (close < lastClose*in_sellTP) )
strategy.close("SELL", "Sell Exit")
alert("Sell Exit")