Strategi Crossover EMA dan MACD yang Dinamis

Penulis:ChaoZhang, Tanggal: 2024-02-06 14:29:23
Tag:

img

Gambaran umum

Strategi ini menentukan entri dan keluar berdasarkan situasi persilangan garis EMA cepat (3), garis EMA lambat (11) dan garis EMA lambat (18), dikombinasikan dengan persilangan garis nol MACD. Ini adalah strategi dinamis yang memanfaatkan kombinasi indikator EMA dan MACD ganda untuk keputusan perdagangan.

Logika Strategi

Strategi ini terutama didasarkan pada dua indikator analisis teknis:

  1. EMA Crossover. Ia menggunakan crossover EMA cepat (3), EMA lambat (11) dan EMA lambat (18) untuk menentukan tren dan sebagai sinyal masuk dan keluar.

  2. Indikator MACD dan Zero Line Crossover. MACD terdiri dari DIFF dan DEA. DIFF dibangun oleh EMA cepat (3) dikurangi EMA lambat (11). DEA adalah EMA (27) dari MACD. MACD>0 menunjukkan bullishness dan MACD<0 menunjukkan bearishness. Zero line crossover bertindak sebagai sinyal masuk dan keluar.

Menurut kombinasi EMA crossover dan MACD zero line crossover, ada 3 peluang masuk dan 2 peluang keluar:

  1. Peluang panjang pertama terjadi ketika MACD berada di atas garis nol dan memiliki crossover ke atas.
  2. Peluang panjang kedua terjadi ketika EMA cepat (3) melintasi EMA lambat (11).
  3. Peluang panjang ketiga dengan posisi penuh terjadi ketika EMA cepat (3) melintasi EMA yang lebih lambat (18).
  4. Sinyal keluar pertama terjadi ketika EMA cepat (3) melintasi di bawah EMA lambat (11).
  5. Sinyal keluar kedua terjadi ketika MACD berada di bawah garis nol dan memiliki crossover ke bawah.

Singkatnya, strategi ini memanfaatkan sepenuhnya keuntungan sistem silang EMA ganda dan indikator MACD. Dengan menyesuaikan secara dinamis parameter rata-rata bergerak dan MACD, dapat meningkatkan profitabilitas strategi.

Keuntungan dari Strategi

  1. Ini memanfaatkan kekuatan dari crossover EMA dan indikator MACD, meningkatkan akurasi melalui konfirmasi dua indikator.

  2. Ada 3 peluang masuk panjang dan 2 peluang keluar, meningkatkan frekuensi perdagangan dan potensi keuntungan.

  3. Panjang EMA cepat, EMA lambat, EMA garis nol dan MACD semua dapat dioptimalkan.

  4. Logika yang jelas membuatnya mudah untuk debug dan mengoptimalkan.

Risiko dari Strategi

  1. Baik crossover EMA maupun indikator MACD memiliki beberapa sinyal palsu, yang dapat menyebabkan kerugian yang tidak perlu.

  2. Frekuensi perdagangan yang tinggi dengan ukuran stop loss yang kecil di setiap perdagangan, sehingga kerugian dapat terkumpul.

  3. Kesulitan dalam optimasi parameter. Optimasi yang tidak benar dapat menyebabkan overfit.

  4. Dampak dari biaya perdagangan harus dipertimbangkan sepenuhnya.

Untuk mengurangi risiko:

  1. Atur stop loss yang tepat untuk membatasi kerugian dalam perdagangan tunggal.

  2. Sesuaikan parameter dengan tepat untuk menghindari overfitting.

  3. Pertimbangkan dampak biaya perdagangan, seperti mengurangi frekuensi perdagangan.

Arahan untuk Optimalisasi

  1. Alternatif uji seperti Bollinger Bands, KDJ dll.

  2. Mengoptimalkan parameter silang EMA: Mengubah panjang EMA cepat dan lambat.

  3. Mengoptimalkan parameter MACD: Mengubah panjang EMA perhitungan DIFF dan DEA.

  4. Tambahkan strategi stop loss: jumlah stop perdagangan, stop waktu, trailing stop dll.

  5. Sesuaikan frekuensi masuk dengan biaya perdagangan.

Ringkasan

Strategi ini menggabungkan sistem crossover EMA ganda dan indikator MACD untuk membangun strategi parameter dinamis dengan frekuensi perdagangan yang tinggi dan profitabilitas yang kuat. Juga, logika yang jelas membuatnya mudah dipahami dan dioptimalkan. Tetapi ada juga risiko sinyal palsu dan overfitting yang perlu ditangani melalui stop loss yang tepat, langkah-langkah anti-overfitting dll. Secara keseluruhan, strategi ini memiliki kegunaan praktis yang besar.


/*backtest
start: 2024-01-29 00:00:00
end: 2024-02-05 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("MACD+EMA crossovers Strategy custom",initial_capital=10000,max_bars_back=150,commission_type=strategy.commission.percent , commission_value=0.1, shorttitle="MACD+EMAcross",pyramiding = 10,default_qty_type=strategy.percent_of_equity,default_qty_value=33,overlay=false)

short = ema(close,3)
long = ema(close, 11)
long2 = ema(close, 18)
//plot(short, color = red, linewidth = 4)
//plot(long, color = blue, linewidth = 4)
//plot(long2, color = green, linewidth = 4)

isCross1 = crossover(short, long)
isCross2 = crossover(short, long2)
isCrossSell = crossunder(short, long)
//isCross3 = crossover(long, long2)

//plotshape(isCross1 and not isCross2, color=lime, style=shape.arrowup, text="1st in",size = size.tiny, location = location.belowbar)
//plotshape(isCross2 , color=lime, style=shape.arrowup, text="2nd in",size = size.tiny, location = location.belowbar)

//plotshape(isCross3 , color=lime, style=shape.arrowdown, text="All in",size = size.normal, location = location.abovebar)

//plotshape(isCrossSell , color=red, style=shape.arrowdown, text="SELL",size = size.small, location = location.abovebar)

fastLength = input(3)
slowlength = input(11)
MACDLength = input(27)

MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = ema(MACD, MACDLength) //signal
delta = MACD - aMACD // histograma

strategy.entry("MacdLE 1st in", strategy.long, comment="MacdLE 1st in",when=crossover(delta, 0))

strategy.entry("2nd in", strategy.long, comment="2nd in",when=isCross1)

strategy.entry("all in", strategy.long, comment="all in",when=isCross2)

strategy.close("2nd in",when=isCrossSell) 
strategy.close("all in",when=isCrossSell)
//strategy.close("2nd in",when=crossunder(delta, 0)) 
//strategy.close("all in",when=crossunder(delta, 0))
strategy.close("MacdLE 1st in",when=crossunder(delta, 0)) 
    
histColour = (delta > 0) ? green : (delta < 0) ? red :  #4169E1
    
plot(MACD,color=red,linewidth=2)
plot(aMACD,color=blue,linewidth=2)
plot(delta,style=histogram, color=histColour, linewidth=10)
plot(0,color=white)






Lebih banyak