Strategi Crossover MACD dan RSI

Penulis:ChaoZhang, Tanggal: 2024-01-23 15:26:08
Tag:

img

Gambaran umum

Strategi ini menghasilkan sinyal perdagangan dengan menghitung crossover dari indikator MACD dan RSI. Ini menghasilkan sinyal beli dan jual ketika RSI terlalu banyak dibeli atau terlalu banyak dijual dan MACD crossover terjadi. Strategi ini menggabungkan keuntungan dari dua jenis indikator yang berbeda, dengan mempertimbangkan tren harga dan situasi overbought / oversold, sehingga meningkatkan efektivitas strategi.

Prinsip Strategi

Strategi ini terutama menggunakan kombinasi indikator MACD dan RSI untuk menghasilkan sinyal perdagangan. MACD umumnya digunakan untuk menentukan tren harga dan perubahan momentum, sedangkan RSI digunakan untuk menentukan kondisi overbought / oversold.

Strategi ini pertama-tama menghitung garis cepat, garis lambat dan garis sinyal dari MACD. Ketika garis cepat lebih besar dari garis lambat, sinyal salib emas dihasilkan. Ketika garis cepat kurang dari garis lambat, sinyal salib kematian dihasilkan. Ini menunjukkan bahwa tren harga dan momentum berubah.

Pada saat yang sama, strategi menghitung indikator RSI dan menetapkan garis overbought dan oversold. Ketika RSI lebih rendah dari garis oversold, itu menunjukkan overselling. Ketika RSI lebih tinggi dari garis overbought, itu menunjukkan overbuy.

Ketika RSI overbought/oversold terjadi, strategi menghasilkan sinyal beli ketika MACD golden cross terjadi, dan menghasilkan sinyal jual ketika MACD death cross terjadi. yaitu ketika tren harga terbalik, indikator MACD digunakan untuk menangkap titik balik karena sensitivitasnya. indikator RSI menghindari perdagangan yang salah ketika tidak terjadi overbought/oversold.

Analisis Keuntungan

Strategi ini menggabungkan keuntungan dari indikator MACD dan RSI untuk meningkatkan efektivitasnya:

  1. MACD dapat menangkap perubahan harga secara sensitif, sedangkan RSI mempertimbangkan situasi overbought/oversold, saling melengkapi.

  2. Menggabungkan kedua indikator dapat menyaring beberapa sinyal perdagangan yang bising dan mengurangi perdagangan yang tidak perlu.

  3. MACD mengukur perbedaan antara moving average, sedangkan RSI mengukur proporsi perubahan harga, kedua metode dapat saling memverifikasi.

  4. MACD merespons perubahan harga dengan cepat, sementara RSI divergensi overbought/oversold jelas, efek combo yang baik.

Risiko dan Solusi

Ada juga risiko tertentu dalam strategi ini:

  1. Baik MACD dan RSI rentan terhadap peristiwa mendadak, yang dapat menghasilkan sinyal yang salah. Parameter dapat disesuaikan untuk menyaring sinyal.

  2. Efek pada saham individu mungkin tidak ideal, indeks atau portofolio dapat dipertimbangkan.

  3. Memenuhi crossover MACD dan RSI overbought/oversold dapat kehilangan beberapa peluang.

Arahan Optimasi

Strategi ini juga dapat dioptimalkan dalam aspek berikut:

  1. Mengoptimalkan parameter MACD dan RSI agar sesuai dengan berbagai jenis perdagangan.

  2. Tambahkan strategi stop loss untuk menghentikan kerugian tepat waktu ketika kerugian mencapai persentase tertentu.

  3. Gabungkan dengan indikator lain seperti Bollinger Bands dan KDJ untuk menetapkan kondisi sinyal perdagangan yang lebih ketat.

  4. Jalankan strategi pada data frekuensi tinggi untuk memanfaatkan sifat cepat / lambat dari MACD dan meningkatkan kinerja strategi.

  5. Berdasarkan hasil backtest, sesuaikan garis RSI overbought/oversold untuk menemukan kombinasi parameter terbaik.

Ringkasan

Strategi crossover MACD dan RSI menggabungkan trend berikut dan overbought/oversold judgment, yang dapat secara efektif menangkap titik pembalikan harga dan meningkatkan kinerja strategi.


/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// © sabirt
strategy(title='MACD and RSI', overlay=true, shorttitle='MACD&RSI')
//MACD Settings
fastMA = input.int(title='Fast moving average', defval=12, minval=1)
slowMA = input.int(title='Slow moving average', defval=26, minval=1)
signalLength = input.int(9, minval=1)

//RSI settings
RSIOverSold = input.int(35, minval=1)
RSIOverBought = input.int(80, minval=1)
src = close
len = input.int(14, minval=1, title='Length')
up = ta.rma(math.max(ta.change(src), 0), len)
down = ta.rma(-math.min(ta.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, _, _] = ta.macd(close[0], fastMA, slowMA, signalLength)
[prevMacd, _, _] = ta.macd(close[1], fastMA, slowMA, signalLength)
signal = ta.ema(currMacd, signalLength)

avg_1 = math.avg(currMacd, signal)
crossoverBear = ta.cross(currMacd, signal) and currMacd < signal ? avg_1 : na
avg_2 = math.avg(currMacd, signal)
crossoverBull = ta.cross(currMacd, signal) and currMacd > signal ? avg_2 : na

strategy.entry('buy', strategy.long, when=crossoverBull and wasOversold)
strategy.close('buy', when=crossoverBear and wasOverbought)



Lebih banyak