RSI Moving Average Crossover Strategy


Tarikh penciptaan: 2023-11-28 17:03:56 Akhirnya diubah suai: 2023-11-28 17:03:56
Salin: 1 Bilangan klik: 450
1
fokus pada
1166
Pengikut

RSI Moving Average Crossover Strategy

Gambaran keseluruhan

RSI Moving Average Crossover Trend Strategy adalah strategi yang menggunakan isyarat rentas rata-rata RSI untuk menentukan trend dan menghantar isyarat perdagangan. Strategi ini menggabungkan harga EMA, dan hanya menghantar isyarat beli apabila harga lebih tinggi daripada EMA.

Prinsip Strategi

Indikator teras strategi ini adalah RSI, dan kedua-dua garis rata RSI EMA dan SMA dihitung. Isyarat beli dikeluarkan hanya apabila garis EMA RSI lebih tinggi daripada garis SMA dan harga lebih tinggi daripada EMA; isyarat jual dikeluarkan apabila garis EMA RSI lebih rendah daripada garis SMA, dan trend dijejaki.

Indeks RSI dapat mencerminkan dengan berkesan fenomena jual beli di pasaran. Penembusan 70 di RSI dianggap sebagai jual beli di pasaran, dan penembusan 30 dianggap sebagai jual beli. Strategi ini menggunakan EMA dan SMA untuk mencari trend dan titik perubahan RSI. Garis EMA lebih sensitif terhadap perubahan harga terkini, sementara garis SMA lebih bergantung pada data lama, yang dapat membentuk kombinasi.

Apabila RSI EMA mula naik, menunjukkan tanda-tanda pasaran untuk menstabilkan diri, maka SMA digunakan untuk mengesahkan arahnya; Apabila SMA juga mula naik, menunjukkan bahawa RSI jelas memasuki trend menaik, maka strategi akan menghantar isyarat beli, mengikuti trend dengan asumsi harga lebih tinggi daripada EMA.

Analisis kelebihan

Ini adalah strategi untuk mengesan trend yang dapat menangkap peluang arah yang berkesan di garis tengah dan panjang. Strategi ini menggunakan EMA dan SMA RSI untuk membentuk cross-verifikasi berbanding dengan satu petunjuk, yang dapat mengurangkan isyarat yang salah dan meningkatkan kestabilan.

Strategi ini juga menggabungkan harga EMA untuk memastikan hanya membeli dalam trend kenaikan harga dan mengelakkan risiko pergerakan yang bergolak, yang meningkatkan peluang keuntungan.

Analisis risiko

Strategi ini adalah berdasarkan kepada RSI, apabila RSI menghasilkan isyarat yang salah, strategi ini juga akan menghantar isyarat yang salah. Selain itu, RSI lebih sesuai untuk menilai fenomena overbought dan oversold, dan terdapat beberapa keterlambatan untuk menilai trend garis tengah.

Strategi ini juga mempunyai kelewatan masa tertentu, terutamanya apabila EMA dan SMA rata-rata RSI disesuaikan, yang akan menyebabkan penundaan isyarat. Dalam tempoh ini, terdapat juga risiko kerugian tertentu.

Arah pengoptimuman

  1. Anda boleh mempertimbangkan untuk mengoptimumkan RSI, memilih parameter yang lebih sesuai, dan meningkatkan kesesuaian.

  2. Anda boleh mempertimbangkan untuk memasukkan logik henti rugi, keluar dari kedudukan selepas kerugian mencapai tahap tertentu, dan mengawal risiko dengan berkesan.

  3. Tetapan parameter yang boleh diuji untuk tempoh masa yang berbeza, parameter yang dioptimumkan supaya strategi dapat berjalan dengan stabil pada lebih banyak varieti dan lebih banyak tempoh masa.

ringkaskan

Strategi trend persilangan RSI, adalah strategi yang mudah menggunakan petunjuk RSI untuk menentukan arah trend dan verifikasi silang. Ia digabungkan dengan harga EMA, dapat menangkap peluang arah dalam trend menaik. Strategi ini lebih stabil dan sesuai untuk memegang garis panjang dan tengah, tetapi juga perlu berhati-hati untuk mengelakkan risiko ketinggalan tertentu. Dengan pengoptimuman lanjut, prestasi strategi ini dapat dibuat lebih baik.

Kod sumber strategi
/*backtest
start: 2022-11-21 00:00:00
end: 2023-11-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Created by Sv3nla 5-Jan-2021
strategy(title="Sv3nla RSI EMA SMA Strat", shorttitle="Sv3nla RSI EMA SMA Strat", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// === BACKTEST RANGE ===
FromMonth = input(defval = 5, title = "From Month", minval = 1)
FromDay   = input(defval = 1, title = "From Day", minval = 1)
FromYear  = input(defval = 2015, title = "From Year", minval = 2015)
ToMonth   = input(defval = 1, title = "To Month", minval = 1)
ToDay     = input(defval = 1, title = "To Day", minval = 1)
ToYear    = input(defval = 9999, title = "To Year", minval = 2022) 
// syminfo.mintick = 0.01$ for BTCUSDT

testPeriod() => true

//INPUTS
rsilen = input(defval = 16, minval=1, title="RSILength")
RSIemaLen = input(defval = 12, minval=1, title="RSI EMA Length")
RSIsmaLen2 = input(defval = 29, minval=1, title="RSI SMA Length2")
length = input(defval = 8, minval=1, title="EMA price Length")

// RSI
RSIsrc = close
RSIup = rma(max(change(RSIsrc), 0), rsilen)
RSIdown = rma(-min(change(RSIsrc), 0), rsilen)
rsi = RSIdown == 0 ? 100 : RSIup == 0 ? 0 : 100 - 100 / (1 + RSIup / RSIdown)
emavalue=ema(rsi,RSIemaLen)
smavalue=sma(rsi,RSIsmaLen2)

//EMA
ema=ema(close,length)

//PLOT
plot(ema(rsi, RSIemaLen), color=color.yellow, linewidth=2, title="EMA", transp=0)
plot(sma(rsi, RSIsmaLen2), color=color.aqua, linewidth=2, title="SMA", transp=0)

//ORDERS
if (testPeriod())
    strategy.entry("long",strategy.long, comment="RSIEMA", when=(emavalue > smavalue and close>ema))
    strategy.close(id="long", when=(emavalue < smavalue))

// Colour background when in a trade and 50 horizontal line
backgroundColour = (strategy.position_size > 0) ? color.green : na    
bgcolor(color=backgroundColour, transp=85)
hline(50, color=color.yellow)