Strategi Perdagangan MACD DEMA


Tanggal Pembuatan: 2023-09-19 16:10:19 Akhirnya memodifikasi: 2023-09-19 16:10:19
menyalin: 0 Jumlah klik: 1114
1
fokus pada
1617
Pengikut

Ringkasan

Strategi ini menggabungkan MACD dan DEMA indikator dual-rail, dengan multi-linear gold-fork-dead-fork membentuk sinyal perdagangan. Strategi menangkap MACD indikator waktu berbalik, menggunakan DEMA filter gelombang untuk noise mencapai masuk yang lebih baik.

Prinsip Strategi

  1. Hitung garis cepat DEMAfast, ambil nilai DEMA dari harga, panjang siklusnya adalah fastmacd。

  2. Hitung DEMAslow garis lambat, ambil nilai DEMA dari prices, dan panjang siklusnya adalah slowmacd。

  3. Garis MACD adalah diferensial garis cepat-lambat: DEMAfast - DEMAslow。

  4. Garis sinyal adalah nilai DEMA dari garis MACD, dan panjang siklus adalah signalmacd。

  5. Garis silang multi-lubang sebagai sinyal perdagangan: garpu emas berlebih, garpu mati berkurang.

  6. Tambahkan filter tanggal dan tahun, hanya sinyal dalam kisaran tanggal yang ditentukan.

Analisis Keunggulan

Strategi ini memiliki beberapa keuntungan:

  1. Dalam kombinasi MACD dan DEMA, indikator saling melengkapi. MACD menangkap putaran, DEMA memfilter untuk meningkatkan kualitas sinyal.

  2. Desain dual-track DEMA mengurangi keterlambatan dan kebisingan indikator MACD.

  3. Intersection of multiple airlines dapat dengan mudah dinilai, dan menghasilkan sinyal dengan mudah dan jelas.

  4. Fleksibilitas dalam pengaturan jangka waktu perdagangan, sesuai dengan kebutuhan strategi yang berbeda.

  5. Parameter MACD dapat mengoptimalkan kombinasi, fleksibel untuk berbagai situasi.

Analisis risiko

Risiko utama dari strategi ini adalah sebagai berikut:

  1. MACD sebagai indikator trend tracking, tidak cocok untuk pasar horizontal yang bergoyang.

  2. Pembagian multi-ruang dapat menghasilkan sinyal palsu, yang harus disaring secara efektif.

  3. Strategi stop loss yang tidak sempurna, mudah untuk stop loss terlalu besar.

  4. Optimasi parameter tidak menyeluruh, dan efek bervariasi antara varietas.

  5. Filter tanggal transaksi terlalu kaku dan harus disesuaikan secara dinamis.

Solusi yang sesuai:

  1. Kombinasi dengan indikator momentum, hindari horizontal.

  2. Meningkatkan kondisi harga, memfilter sinyal silang palsu.

  3. Tetapkan stop loss awal yang wajar dan stop loss tracking.

  4. Uji efek parameter multi-varietas, optimasi dinamis.

  5. Jadwal penyaringan disesuaikan dengan situasi saat ini.

Arah optimasi

Strategi ini dapat dioptimalkan dengan:

  1. Meningkatkan indikator volume transaksi untuk memfilter sinyal.

  2. Mengoptimalkan kombinasi parameter MACD untuk menguji data varietas yang berbeda.

  3. Tetapkan strategi stop loss, seperti stop loss tetap, tracking stop loss, dan lain-lain.

  4. Stop loss position disesuaikan dengan volatilitas pasar.

  5. “Saya tidak tahu apa yang terjadi”, katanya.

Meringkaskan

Strategi MACD DEMA menggabungkan keunggulan dua indikator, memanfaatkan tren penangkapan sinyal silang. Namun, sifat MACD bersifat lag, perlu diperhatikan untuk memfilter sinyal palsu. Selain itu, strategi stop loss perlu dioptimalkan untuk mengurangi stop loss yang tidak rasional.

Kode Sumber Strategi
/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(" MACD DEMA STRATEGY ", overlay=true)

source=close
price=source



fastmacd = input(12,title='MACD Fast  Line Length')
slowmacd = input(26,title='MACD Slow Line Length')
signalmacd = input(9,title='Signal Line Length')

macdslowline1 = ema(close,slowmacd)
macdslowline2 = ema(macdslowline1,slowmacd)
DEMAslow = ((2 * macdslowline1) - macdslowline2 )

macdfastline1 = ema(close,fastmacd)
macdfastline2 = ema(macdfastline1,fastmacd)
DEMAfast = ((2 * macdfastline1) - macdfastline2)

MACDLine = (DEMAfast - DEMAslow)

SignalLine1 = ema(MACDLine, signalmacd)
SignalLine2 = ema(SignalLine1, signalmacd)
SignalLine = ((2 * SignalLine1) - SignalLine2 )


MACDSignal = SignalLine-MACDLine


colorbar= MACDSignal>0?green:red




yearfrom = input(2018)
yearuntil =input(2019)
monthfrom =input(1)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)







if ( crossover(MACDLine,SignalLine) ) 
    strategy.entry("MMAL", strategy.long, stop=close, oca_name="TREND",  comment="AL")
    
else
    strategy.cancel(id="MMAL")


if (  crossunder(MACDLine,SignalLine) ) 

    strategy.entry("MMSAT", strategy.short,stop=close, oca_name="TREND",  comment="SAT")
else
    strategy.cancel(id="MMSAT")