
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.
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.
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.
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.
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.
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 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.
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.
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.
MACD dan RSI dapat mengalami penundaan dalam membuat keputusan ketika terjadi perubahan besar di pasar, yang menyebabkan kerugian dalam menghasilkan sinyal perdagangan yang salah.
Efektivitas strategi ini sangat tergantung pada pengaturan parameter seperti MACD dan RSI. Jika parameter tidak diatur dengan benar, mudah untuk mendapatkan sinyal perdagangan terbalik.
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.
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.
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.
Indikator lain seperti stoch, OBV, CCI dapat diperkenalkan berdasarkan MACD dan RSI yang ada, untuk memastikan multi-indikator dan meningkatkan kualitas sinyal lebih lanjut.
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.
/*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)