Strategi Tren Agregat Rata-rata Pergerakan yang Ditingkatkan


Tanggal Pembuatan: 2023-09-14 16:46:53 Akhirnya memodifikasi: 2023-09-14 16:46:53
menyalin: 6 Jumlah klik: 647
1
fokus pada
1617
Pengikut

Prinsip Strategi

Strategi ini didasarkan pada indikator MACD yang diperkuat untuk melacak tren. Ini menghitung rata-rata bergerak cepat, rata-rata bergerak lambat, dan diferensial keduanya secara bersamaan, dan kemudian melakukan rata-rata bergerak diferensial untuk menghasilkan sinyal perdagangan.

Logika yang tepat adalah:

  1. Perhitungan siklus EMA cepat, seperti 12 hari

  2. Perhitungan siklus EMA lambat, seperti 26 hari

  3. Perhitungan diferensial dari EMA adalah MACD

  4. EMA untuk MACD, seperti EMA 9

  5. Kemudian MACD dengan diferensial dari sinyal EMA menghasilkan sinyal yang diperkuat

  6. Ketika sinyal yang diperkuat melewati sumbu nol

  7. Saat sinyal penguat melewati sumbu nol

Strategi ini memanfaatkan sepenuhnya karakteristik pelacakan tren dari indikator MACD, dan melakukan filter pengoptimalan sekunder yang meningkatkan kualitas sinyal, mengejar tren garis tengah dan panjang.

Keunggulan Strategis

  • Peningkatan kebisingan MACD untuk meningkatkan akurasi sinyal

  • EMA berkolaborasi untuk menentukan arah dan intensitas

  • Tren garis panjang dengan parameter yang lebih lambat

Risiko Strategis

  • Parameter siklus EMA harus dipilih dengan hati-hati

  • Hanya dengan melakukan lebih banyak, Anda tidak bisa memanfaatkan kesempatan kosong.

  • Sinyal muncul dengan frekuensi rendah

Meringkaskan

Strategi ini mengidentifikasi peluang garis tengah dengan meningkatkan kemampuan MACD untuk melacak tren. Namun, pengoptimalan parameter dan pengendalian risiko sangat penting. Kombinasi yang tepat dari faktor-faktor lain dapat meningkatkan efek.

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

//@version=3
//study("MACDAS")
// strategy("macdas",shorttitle="macdas",overlay=true,default_qty_value=10000,initial_capital=10000,currency=currency.USD)

// Date range filter
testStartYear = input(2018, "Backtest Start Year")
testStartMonth = input(4, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, 0, 0)

testStopYear = input(2018, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(31, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)

inTimeRange = true


fastperiod = input(12,title="fastperiod",minval=1,maxval=500)
slowperiod = input(26,title="slowperiod",minval=1,maxval=500)
signalperiod = input(9,title="signalperiod",minval=1,maxval=500)
fastMA = ema(close, fastperiod)
slowMA = ema(close, slowperiod)
macd = fastMA - slowMA
signal = ema(macd, signalperiod)
macdAS = macd - signal
signalAS = ema(macdAS, signalperiod)
plot(macdAS, color=blue, linewidth=2)
plot(signalAS, color=red, linewidth=2)
plot(0, color=black)

strategy.entry("LONG", strategy.long, when =inTimeRange and crossover(macdAS,signalAS))
strategy.close("LONG", when= inTimeRange and crossunder(macdAS,signalAS))

plotshape(crossover(macdAS, signalAS) , style = shape.arrowup, text="Long",color=green,size=size.huge)
plotshape(crossover(signalAS,macdAS) , style = shape.arrowdown, text="End Long",color=red,size=size.huge)