Ini adalah strategi perdagangan trend berikut dan trend breakout berdasarkan penunjuk RSI dan EMA. Nama strategi adalah
Strategi ini menggunakan EMA 5 hari, EMA 20 hari dan EMA 50 hari untuk membina rangka kerja trend panjang dan pendek. Apabila EMA 5 hari melintasi EMA 20 hari, dan kedua-dua EMA berada di atas EMA 50 hari, ia menentukan penembusan trend menaik baru-baru ini untuk kemasukan panjang. Apabila EMA 5 hari melintasi EMA 20 hari, dan kedua-dua EMA berada di bawah EMA 50 hari, ia menentukan penembusan trend menurun baru-baru ini untuk kemasukan pendek.
Sementara itu, strategi ini juga menggabungkan penunjuk RSI untuk menilai sama ada ia mencapai zon overbought atau oversold. RSI dapat dengan berkesan mengenal pasti keadaan overbought dan oversold untuk mengelakkan isyarat yang salah apabila trend mendahului atau mengukuhkan. Apabila penunjuk RSI bergerak dari zon overbought ke zon neutral, kedudukan panjang keluar. Apabila penunjuk RSI bergerak dari zon oversold ke zona neutral, kedudukan pendek keluar.
Strategi ini menggabungkan penunjuk EMA dan RSI, yang dapat menangkap trend jangka sederhana hingga panjang dan mengelakkan risiko pada akhir trend, dengan ciri nisbah risiko-balasan yang sangat baik.
Terdapat juga beberapa risiko dalam strategi ini:
Untuk mengurangkan risiko ini, kita boleh menetapkan stop loss, menyesuaikan parameter RSI, atau menggabungkan penunjuk lain untuk pengesahan.
Terdapat ruang untuk mengoptimumkan lagi strategi ini:
Strategi penembusan trend RSI-EMA ini secara komprehensif mempertimbangkan penjejakan trend dan penilaian masa kemasukan untuk menangkap keuntungan trend berdasarkan kawalan risiko. Ini adalah strategi jangka menengah hingga panjang yang sangat praktikal. Kita boleh meningkatkan kestabilan dan keuntungan melalui pengoptimuman parameter, menambah penunjuk lain dan sebagainya.
/*backtest start: 2023-11-19 00:00:00 end: 2023-12-19 00:00:00 period: 1h 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/ // © BrendanW98 //@version=4 strategy("My Strategy", overlay=true) ema5 = ema(close, 9) ema20 = ema(close, 21) ema50 = ema(close, 55) //RSI Signals // Get user input rsiSource = close rsiLength = 14 rsiOverbought = 70 rsiOversold = 30 rsiMid = 50 // Get RSI value rsiValue = rsi(rsiSource, rsiLength) //See if RSI crosses 50 doBuy = crossover(rsiValue, rsiOversold) and rsiValue < 50 doSell = crossunder(rsiValue, rsiOverbought) and rsiValue > 50 emacrossover = crossover(ema5, ema20) and ema5 > ema50 and ema20 > ema50 and close > ema50 emacrossunder = crossunder(ema5, ema20) and ema5 < ema50 and ema20 < ema50 and close < ema50 //Entry and Exit longCondition = emacrossover closelongCondition = doSell strategy.entry("Long", strategy.long, 1, when=longCondition) strategy.close("Long", when=closelongCondition) shortCondition = emacrossunder closeshortCondition = doBuy strategy.entry("Short", strategy.short, 1, when=shortCondition) strategy.close("Short", when=closeshortCondition)