Strategi ini menghasilkan sinyal perdagangan berdasarkan MACD dari indikator RSI. Ini menggabungkan kemampuan indikator RSI untuk menilai tingkat overbought dan oversold di pasar, serta keuntungan MACD dalam menentukan tren pasar dan perubahan momentum, untuk merancang strategi yang memanfaatkan beberapa indikator untuk memberikan sinyal perdagangan.
Strategi ini pertama-tama menghitung indikator RSI, kemudian menghitung MACD berdasarkan indikator RSI. Indikator RSI dapat menentukan kondisi overbought dan oversold di pasar, sementara MACD menangkap perubahan tren dan momentum pasar.
Secara khusus, strategi pertama menghitung indikator RSI 14 periode. Kemudian berdasarkan RSI, indikator MACD dihitung, termasuk EMA 12 dan 26 periode, serta garis sinyal 9 periode. histogram MACD kemudian dihitung.
Ketika histogram MACD melintasi di atas 0, sinyal beli dihasilkan. Ketika histogram MACD melintasi di bawah 0, sinyal jual dipicu. Dengan cara ini, strategi menggunakan RSI untuk menilai tingkat overbought / oversold, sementara juga menggunakan MACD untuk menentukan perubahan tren dan momentum, untuk menghasilkan sinyal perdagangan.
Strategi ini menggabungkan kekuatan dari indikator RSI dan MACD, memungkinkan penilaian kondisi pasar yang lebih komprehensif, menghasilkan sinyal yang lebih dapat diandalkan.
Menggunakan RSI untuk menilai tingkat overbought / oversold membantu dengan pemilihan saham dan mencegah pecah palsu.
Penghakiman MACD terhadap perubahan tren dan momentum membuat sinyal perdagangan lebih jelas.
Kombinasi RSI dan MACD, dengan penilaian berdasarkan beberapa faktor, membantu menyaring sinyal palsu.
Pengaturan parameter untuk RSI dan MACD mempengaruhi kinerja strategi dan membutuhkan penyesuaian dan optimalisasi.
Kombinasi dari beberapa indikator meningkatkan kompleksitas strategi dan kemungkinan kesalahan.
Sinyal perdagangan MACD mungkin tertinggal dan perlu dilengkapi dengan indikator lain.
Mengoptimalkan parameter RSI dan MACD untuk menemukan kombinasi parameter terbaik.
Menggabungkan indikator lain seperti KDJ, Bollinger Bands untuk membentuk kelompok indikator dan meningkatkan akurasi sinyal.
Menggabungkan strategi stop loss untuk mengendalikan kerugian per perdagangan.
Mengoptimalkan masuk dan keluar logika untuk mencegah sinyal yang bertentangan.
Strategi ini memanfaatkan kekuatan gabungan dari indikator RSI dan MACD untuk membentuk sinyal perdagangan, menilai tingkat overbought / oversold sambil juga mempertimbangkan faktor tren dan momentum, secara efektif menyaring sinyal palsu dan memberikan sinyal berkualitas. Langkah selanjutnya melibatkan peningkatan lebih lanjut seperti optimasi parameter, stop loss, menambahkan lebih banyak indikator dll untuk meningkatkan akurasi dan keandalan sinyal.
/*backtest start: 2022-12-18 00:00:00 end: 2023-12-24 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title = "MACD of RSI", overlay = false) //////////////////////// RSI /////////////////////////// src = close, len = input(14, minval=1, title="Length") up = sma(max(change(src), 0), len) down = sma(-min(change(src), 0), len) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down)) //////////////////////// RSI ////////////////////////// //////////////// MACD //////////////////////////// sourcemacd = rsi fastLength = input(12, minval=1), slowLength=input(26,minval=1) signalLength=input(9,minval=1) fastMA = ema(sourcemacd, fastLength) slowMA = ema(sourcemacd, slowLength) macd = fastMA - slowMA signal = ema(macd, signalLength) delta=macd-signal swap1 = delta>0?green:red plot(delta,color=swap1,style=columns,title='Histo',histbase=0,transp=20) p1 = plot(macd,color=blue,title='MACD Line') p2 = plot(signal,color=red,title='Signal') fill(p1, p2, color=blue) hline(0) /////////////////////////MACD ////////////////////////// // Conditions longCond = na sellCond = na longCond := crossover(delta,0) sellCond := crossunder(delta,0) monthfrom =input(6) monthuntil =input(12) dayfrom=input(1) dayuntil=input(31) if ( longCond ) strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY") else strategy.cancel(id="BUY") if ( sellCond ) strategy.close("BUY")