Strategi sinyal crossover berdasarkan indikator MACD dan RSI


Tanggal Pembuatan: 2023-12-18 17:19:03 Akhirnya memodifikasi: 2023-12-18 17:19:03
menyalin: 0 Jumlah klik: 967
1
fokus pada
1621
Pengikut

Strategi sinyal crossover berdasarkan indikator MACD dan RSI

Ringkasan

Strategi ini menggunakan indikator MACD untuk menilai tren pasar dan mencari titik jual beli potensial, dan digabungkan dengan indikator RSI untuk mengkonfirmasi fenomena overbought dan oversold, ketika indikator MACD mengirimkan sinyal beli / jual, hanya ketika RSI juga mengkonfirmasi pasar berada dalam keadaan overbought / oversold, sinyal perdagangan akan dihasilkan, untuk membeli atau menjual. Strategi ini dapat secara efektif memfilter sinyal palsu, meningkatkan stabilitas strategi.

Prinsip Strategi

Perhitungan indikator MACD

Indikator MACD terdiri dari perbedaan antara rata-rata bergerak cepat (EMA) dan rata-rata bergerak lambat, yang mencerminkan perbedaan antara tren perubahan harga rata-rata jangka pendek dan jangka panjang. Dalam strategi ini, garis cepat berperiode 12 hari dan garis lambat berperiode 26 hari.

Ketika garis cepat melewati garis lambat, sinyal garpu emas, menunjukkan tren naik pasar; ketika garis cepat melewati garis lambat, sinyal garpu mati, menunjukkan tren turun pasar.

Perhitungan RSI

Indikator RSI mencerminkan fenomena overbought dan oversold di pasar. Dalam strategi ini, parameter siklus RSI diatur menjadi 14.

RSI BELOW 30 when buyers outpaced sellers for an extended period suggests ASSET was OVERSOLD.

RSI ABOVE 70 when selling pressure outpaced buying pressure over the tracked timeline suggests ASSET was OVERBOUGHT.

Ketika RSI di bawah 30 berarti pasar berada dalam keadaan oversold; ketika RSI di atas 70, berarti pasar berada dalam keadaan overbought.

Sinyal strategi

Strategi ini menggunakan indikator RSI untuk memfilter sinyal, hanya ketika MACD mengirimkan sinyal, RSI juga mengkonfirmasi pasar overbought overbought, maka akan menghasilkan sinyal perdagangan yang sebenarnya.

Secara khusus, ketika MACD membentuk sinyal Gold Fork, jika saat ini RSI <= 34, mengkonfirmasi bahwa pasar berada dalam keadaan oversold, maka menghasilkan sinyal beli; ketika MACD membentuk sinyal Dead Fork, jika saat ini RSI> = 75, mengkonfirmasi bahwa pasar berada dalam keadaan oversold, maka menghasilkan sinyal jual.

Mekanisme double confirmation ini dapat menyaring banyak sinyal perdagangan yang tidak dapat diandalkan, sehingga meningkatkan stabilitas dan keandalan strategi.

Analisis Keunggulan

Filter ganda meningkatkan keandalan sinyal

Strategi ini menggunakan MACD dan RSI dalam kombinasi untuk melakukan double confirmation. Hal ini dapat secara efektif mengurangi gangguan dari sinyal palsu dan memfilter beberapa sinyal perdagangan yang tidak dapat diandalkan, sehingga meningkatkan keandalan dan stabilitas sinyal.

Pengertian Tren yang Jelas

MACD sebagai indikator harga kuantitatif, dapat dengan jelas menilai tren turun naik pasar. Pengadilan overbought dan oversold yang dikombinasikan dengan indikator RSI, dapat dengan akurat menangkap titik balik pasar yang penting, dan sinyal masuk dan keluar posisi yang jelas.

Parameter Optimasi Ruang Besar

Parameter MACD dan RSI dari strategi ini dapat disesuaikan secara optimal, beradaptasi dengan berbagai siklus dan varietas yang berbeda, ruang optimasi yang lebih besar. Dengan penyesuaian parameter dapat disesuaikan secara geografis, untuk mendapatkan efek strategi yang lebih baik.

Memahami dan menerapkan

Strategi ini menggunakan indikator MACD dan RSI yang sangat khas dan umum digunakan indikator teknis, mudah dipahami, implementasi kode sangat sederhana dan intuitif. Ini memudahkan untuk penyesuaian parameter dan optimasi.

Analisis risiko

Mungkin melewatkan beberapa peluang perdagangan

Strategi ini menggunakan strategi double confirmation yang lebih hati-hati, untuk memfilter sinyal palsu yang mungkin melewatkan beberapa peluang perdagangan yang dapat menghasilkan keuntungan dalam kondisi indikator tunggal.

  • Solusi: Meregangkan RSI dengan tepat, mengurangi kekakuan konfirmasi, dan memungkinkan strategi untuk mendapatkan lebih banyak peluang perdagangan.

Kehilangan dalam perubahan besar

MACD dan RSI dapat mengalami penundaan dalam membuat keputusan ketika terjadi perubahan besar di pasar, yang menyebabkan kerugian dalam menghasilkan sinyal perdagangan yang salah.

  • Solusi: Masukkan mekanisme stop loss untuk menghindari kerugian tunggal yang terlalu besar; menyesuaikan parameter agar indikator memiliki sensitivitas tertentu terhadap perubahan drastis.

Efek sangat terkait dengan kualitas pengaturan parameter

Efektivitas strategi ini sangat tergantung pada pengaturan parameter seperti MACD dan RSI. Jika parameter tidak diatur dengan benar, mudah untuk mendapatkan sinyal perdagangan terbalik.

  • Solusi: Optimalkan kombinasi parameter dengan melakukan pengukuran ulang untuk menemukan pengaturan parameter yang optimal.

Arah optimasi

Mendaftarkan diri untuk mengelola risiko Stop Loss

Anda dapat mengatur harga stop loss atau indikator stop loss aturan, stop loss keluar ketika kerugian berkembang ke tingkat tertentu, secara efektif mengendalikan kerugian tunggal.

Menyesuaikan parameter dengan karakteristik situasi

Parameter yang dapat dioptimalkan dapat diatur dengan menyesuaikan siklus MACD yang cepat dan lambat, RSI yang overbought dan oversold, dan sebagainya, sehingga lebih cocok untuk berbagai periode dan varietas karakteristik pasar.

Mencoba berbagai varietas untuk menemukan yang paling cocok

Anda dapat melakukan retesting pada berbagai varietas seperti indeks saham, mata uang digital, mata uang asing, komoditas, dan lain-lain untuk menemukan varietas yang paling efektif dalam strategi Anda.

Menambahkan indikator lain untuk pengesahan multi-dimensi

Indikator lain seperti stoch, OBV, CCI dapat diperkenalkan berdasarkan MACD dan RSI yang ada, untuk memastikan multi-indikator dan meningkatkan kualitas sinyal lebih lanjut.

Meringkaskan

Strategi ini didasarkan pada indikator MACD untuk menentukan arah tren pasar dan sinyal perdagangan. Untuk menyaring sinyal palsu, indikator RSI ditambahkan untuk mengkonfirmasi fenomena overbought dan oversold, dan hanya menghasilkan sinyal perdagangan jika keduanya memenuhi persyaratan secara bersamaan.

Efek dari strategi dapat ditingkatkan lebih lanjut melalui optimasi parameter, penerapan mekanisme stop loss, dan metode perbaikan seperti konfirmasi multi-indikator. Strategi ini mudah dioperasikan, lebih stabil, dan merupakan strategi perdagangan kuantitatif yang cocok untuk praktik pemula dan pengoptimalan.

Kode Sumber Strategi
/*backtest
start: 2023-11-17 00:00:00
end: 2023-12-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(default_qty_type = strategy.percent_of_equity, default_qty_value = 25, pyramiding = 10, title="MACD crossover while RSI Oversold/Overbought", overlay=true, shorttitle="MACD Cross + RSI Oversold Overbought", initial_capital = 1000)

//MACD Settings
fastMA = input(title="Fast moving average",  defval = 12, minval = 7) //7 16
slowMA = input(title="Slow moving average",  defval = 26, minval = 7) //24 26 
signalLength = input(9,minval=1) //9 6

//RSI settings
RSIOverSold = input(34 ,minval=1) //26
RSIOverBought = input(75 ,minval=1) //77
src = close, len = input(14, minval=1, title="Length")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
wasOversold = rsi[0] <= RSIOverSold or rsi[1] <= RSIOverSold or rsi[2] <= RSIOverSold or rsi[3] <= RSIOverSold or rsi[4] <= RSIOverSold or rsi[5] <= RSIOverSold
wasOverbought = rsi[0] >= RSIOverBought or rsi[1] >= RSIOverBought or rsi[2] >= RSIOverBought or rsi[3] >= RSIOverBought or rsi[4] >= RSIOverBought or rsi[5] >= RSIOverBought


[currMacd,_,_] = macd(close[0], fastMA, slowMA, signalLength)
[prevMacd,_,_] = macd(close[1], fastMA, slowMA, signalLength)
signal = ema(currMacd, signalLength)

crossoverBear = cross(currMacd, signal) and currMacd < signal ? avg(currMacd, signal) : na
crossoverBull = cross(currMacd, signal) and currMacd > signal ? avg(currMacd, signal) : na

plotshape(crossoverBear and wasOverbought , title='MACD-BEAR', style=shape.triangledown, text='overbought', location=location.abovebar, color=orange, textcolor=orange, size=size.tiny) 
plotshape(crossoverBull and wasOversold, title='MACD-BULL', style=shape.triangleup, text='oversold', location=location.belowbar, color=lime, textcolor=lime, size=size.tiny) 

// Configure backtest start date with inputs
startDate = input(title="Start Date",
     defval=8, minval=1, maxval=31)
startMonth = input(title="Start Month",
     defval=3, minval=1, maxval=12)
startYear = input(title="Start Year",
     defval=2021, minval=1800, maxval=2100)

afterStartDate = (time >= timestamp(syminfo.timezone,
     startYear, startMonth, startDate, 0, 0))
     
if (afterStartDate==true)
    posSize = abs(strategy.position_size)
    strategy.order("long", strategy.long, when = crossoverBull and wasOversold) 
    strategy.order("long", long=false, qty=posSize/3, when = crossoverBear and wasOverbought)