Strategi dagangan penunjuk RSI menggabungkan purata bergerak dan MACD


Tarikh penciptaan: 2024-02-20 14:28:59 Akhirnya diubah suai: 2024-02-20 14:28:59
Salin: 0 Bilangan klik: 880
1
fokus pada
1617
Pengikut

Strategi dagangan penunjuk RSI menggabungkan purata bergerak dan MACD

Gambaran keseluruhan

Strategi ini menggunakan gabungan purata bergerak, MACD dan RSI untuk mengenal pasti trend harga saham, mencapai harga rendah dan harga tinggi. Strategi ini menghasilkan isyarat beli apabila purata bergerak jangka pendek melintasi purata bergerak jangka panjang dan harga penutupan berada di atas purata bergerak 50 hari.

Prinsip Strategi

Strategi ini bergantung kepada strategi purata bergerak ganda, iaitu apabila purata bergerak jangka pendek ((EMA 3 hari) melintasi purata bergerak jangka panjang ((EMA 30 hari) menghasilkan isyarat beli, dan apabila purata bergerak jangka pendek melintasi purata bergerak jangka panjang di bawah rata-rata bergerak jangka pendek menghasilkan isyarat jual. Ini adalah teknik yang biasa digunakan untuk menentukan trend harga saham jangka pendek dan jangka panjang.

Selain itu, strategi ini juga memperkenalkan purata bergerak 50 hari, yang menghasilkan isyarat beli hanya apabila harga lebih tinggi daripada garis 50 hari, dan menghasilkan isyarat jual apabila ia lebih rendah, untuk mengelakkan perdagangan yang kerap dan menyaring beberapa isyarat palsu.

Di samping itu, RSI digunakan untuk menentukan sama ada terdapat overbought atau oversold. Jika RSI melebihi 70 ia dianggap sebagai overbought, di mana walaupun momentum jangka pendek yang kuat mungkin menghadapi penyesuaian. Jika RSI di bawah 30 ia dianggap sebagai oversold, di mana walaupun penurunan jangka pendek yang kuat mungkin berlaku.

Akhirnya, MACD straight graph digunakan untuk menentukan trend jangka panjang. Jika MACD straight graph> 0, maka garis tengah adalah trend ke atas, maka isyarat masuk lebih dipercayai; Jika MACD straight graph< 0, maka garis tengah adalah trend ke bawah, maka isyarat beli boleh disesuaikan walaupun dalam jangka pendek.

Kelebihan Strategik

Kelebihan terbesar strategi ini adalah kombinasi pelbagai petunjuk yang menjadikan isyarat masuk dan keluar lebih tepat dan boleh dipercayai. Satu petunjuk mudah menghasilkan isyarat palsu, dan strategi ini menilai trend jangka pendek melalui purata bergerak, RSI menilai overbought dan oversold, MACD menilai trend jangka panjang, yang meningkatkan kemungkinan kejayaan setiap perdagangan.

Satu lagi kelebihan ialah menggabungkan perdagangan trend dan perdagangan berlawanan. Mengikuti trend, mengikuti momentum adalah kepercayaan semua pedagang trend. Tetapi strategi canggih tidak akan menahan trend, dan perdagangan berlawanan yang sesuai juga dapat memperoleh keuntungan tambahan yang besar.

Risiko Strategik

Risiko utama strategi ini berasal dari peristiwa yang tidak dijangka yang menyebabkan penyesuaian cepat. Strategi kuantitatif mana pun sukar untuk menangani turun naik harga yang teruk yang disebabkan oleh kekurangan keuntungan yang besar atau berita yang baik.

Risiko lain ialah penyesuaian jangka pendek dalam pergerakan berbilang arah menyebabkan berhenti kehilangan. Walaupun garis panjang tengah masih berada di pasaran lembu, penyesuaian jangka pendek mungkin terhenti untuk menutup kedudukan panjang.

Pengoptimuman Strategi

Strategi ini boleh dioptimumkan dari segi berikut:

  1. Pengoptimuman parameter. Anda boleh menguji lebih banyak kombinasi parameter untuk mencari parameter yang optimum.

  2. Tambah lebih banyak penunjuk. Anda boleh menguji penambahan penunjuk lain seperti Brinline, KDJ, dan lain-lain untuk menambah gabungan pelbagai penunjuk dan meningkatkan kualiti isyarat.

  3. Mekanisme penangguhan yang dioptimumkan. Cara penangguhan yang lebih maju seperti penangguhan penjejakan, penangguhan penembusan jarak jauh boleh diuji, mengurangkan kemungkinan penangguhan yang terkena.

  4. Ia boleh mengoptimumkan beberapa parameter strategi yang membolehkan ia memperoleh keuntungan yang stabil dalam lebih banyak jenis pasaran.

ringkaskan

Strategi ini menggunakan gabungan purata bergerak, indikator RSI dan indikator MACD untuk menghasilkan isyarat berkualiti tinggi, mengelakkan batasan satu indikator, dan memberikan keyakinan yang kuat dalam setiap keputusan membeli dan menjual. Strategi ini juga menggabungkan perdagangan trend dan perdagangan berlawanan, dan memastikan pergerakan yang baik, tetapi juga dapat memilih operasi berlawanan yang cekap pada masa-masa penting.

Kod sumber strategi
/*backtest
start: 2023-02-13 00:00:00
end: 2024-02-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('sachin 3.30 ', overlay=true)

// Input parameters
length = input.int(14, title='RSI Length', minval=1)
overbought = input.int(70, title='RSI Overbought Level', minval=0, maxval=100)
oversold = input.int(30, title='RSI Oversold Level', minval=0, maxval=100)
ema3_length = input(3, title='EMA 3 Length')
ema30_length = input(30, title='EMA 30 Length')
ema50_length = input(50, title='EMA 50 Length')

// Calculate EMAs
ema3 = ta.ema(close, ema3_length)
ema30 = ta.ema(close, ema30_length)
ema50 = ta.ema(close, ema50_length)

// Calculate RSI
rsiValue = ta.rsi(close, length)

// Calculate MACD
[macdLine, signalLine, hist] = ta.macd(close, 12, 26, 9)

var float buyPrice = na

// Buy condition: EMA 3 crosses above EMA 30 and price is above EMA 50
buyCondition = ta.crossover(ema3, ema30) and close > ema50
if (buyCondition)
    buyPrice := close
    strategy.entry('Buy', strategy.long)

// Exit long position when close is below EMA30 and below the low of the previous 3 candles after the buy entry
exitLongCondition = close < ema30 and close < ta.lowest(low, 3) and close < buyPrice
if (exitLongCondition)
    strategy.close('BuyExit')

// Sell condition: EMA 3 crosses below EMA 30 and price is below EMA 50
sellCondition = ta.crossunder(ema3, ema30) and close < ema50
if (sellCondition)
    strategy.entry('Sell', strategy.short)

// Exit short position when close is above EMA30 and above the high of the previous 3 candles after the sell entry
exitShortCondition = close > ema30 and close > ta.highest(high, 3)
if (exitShortCondition)
    strategy.close('SellExit')

// Plot EMAs on the chart
plot(ema3, color=color.new(color.blue, 0), title='EMA 3')
plot(ema30, color=color.new(color.red, 0), title='EMA 30')

// Change color of EMA 50 based on MACD histogram
ema50Color = hist > 0 ? color.new(color.blue, 0) : hist < 0 ? color.new(color.black, 0) : color.new(color.blue, 0)
plot(ema50, color=ema50Color, title='EMA 50 Colored')

// Change color of EMA 30 based on RSI trend
ema30Color = rsiValue > oversold ? color.new(color.green, 0) : rsiValue < overbought ? color.new(color.red, 0) : color.new(color.blue, 0)
plot(ema30, color=ema30Color, title='EMA 30 Colored')

// Highlight Buy and Sell signals on the chart
bgcolor(buyCondition ? color.new(color.green, 90) : na)
bgcolor(sellCondition ? color.new(color.red, 90) : na)

// Plotting Buy and Sell Signals on the Chart until strategy exit
barcolor(strategy.position_size > 0 and rsiValue > overbought ? color.new(color.yellow, 0) : strategy.position_size < 0 and rsiValue < oversold ? color.new(color.black, 0) : na)