Strategi perdagangan moving average golden cross dan dead cross


Tanggal Pembuatan: 2024-02-22 16:25:13 Akhirnya memodifikasi: 2024-02-22 16:25:13
menyalin: 0 Jumlah klik: 364
1
fokus pada
1182
Pengikut

Strategi perdagangan moving average golden cross dan dead cross

Ringkasan

Strategi perdagangan moving average adalah strategi perdagangan kuantitatif yang melacak persimpangan rata-rata bergerak jangka pendek dan jangka panjang (EMA) dan melakukan operasi beli dan jual pada saat berbinar dan berbinar. Strategi ini digunakan untuk menilai sinyal perdagangan dengan indikator MACD.

Prinsip Strategi

Strategi ini bergantung pada indikator EMA 12, EMA 26 dan MACD. Logika spesifiknya adalah:

  1. EMA 12 dan 26 dihitung.
  2. Hitung MACD (atau 12 hari EMA dikurangi 26 hari EMA).
  3. Menghitung MACD 9 hari EMA sebagai garis sinyal.
  4. Ketika MACD melewati kabel sinyal, menghasilkan sinyal beli.
  5. Ketika MACD melewati jalur sinyal, menghasilkan sinyal jual.
  6. Pada saat penutupan kabel K kedua yang menghasilkan sinyal, melakukan pembelian atau penjualan yang sesuai.

Selain itu, kebijakan ini juga menetapkan beberapa kondisi penyaringan:

  1. Waktu perdagangan adalah setiap hari pada waktu non-pertokoan.
  2. Nilai mutlak dari MACD dan perbedaan garis sinyal harus lebih besar dari 0,08 .
  3. Hanya satu arah yang diizinkan untuk memegang posisi.

Analisis Keunggulan

Strategi ini menggabungkan crossover rata-rata bergerak dan indikator MACD untuk secara efektif menangkap titik balik tren pasar jangka pendek dan menengah. Keuntungan utama adalah:

  1. Peraturan-peraturan strategi ini sederhana dan jelas, mudah dipahami dan diterapkan.
  2. Parameter indikator telah dioptimalkan, kinerja relatif stabil.
  3. Mengikuti tren jangka pendek dengan penarikan stop loss yang tepat waktu.
  4. Logika transaksi yang ketat untuk menghindari transaksi yang tidak valid.

Analisis risiko

Strategi ini juga memiliki beberapa risiko:

  1. Risiko penyesuaian data pengemasan. Dalam penggunaan nyata, parameter dan nilai-nilai mungkin perlu disesuaikan.
  2. Risiko biaya slippage yang terlalu tinggi karena sering melakukan transaksi.
  3. Jika tidak segera keluar dari pasar, risiko kerugian akan berkurang.
  4. Perdagangan kuantitatif meningkatkan risiko leverage.

Metode mitigasi yang sesuai:

  1. Parameter optimasi dinamis, penyesuaian nilai tipis.
  2. Meredakan aturan transaksi dengan tepat, mengurangi transaksi yang tidak perlu.
  3. Ini adalah salah satu indikator yang digunakan untuk menilai sinyal pembalikan.
  4. Kontrol ketat terhadap posisi dan leverage.

Arah optimasi

Strategi ini dapat dioptimalkan dengan cara:

  1. Uji kombinasi rata-rata bergerak dengan periode yang lebih panjang untuk mencari parameter optimal.
  2. Faktor-faktor mendasar seperti peningkatan kinerja perusahaan, peristiwa-peristiwa besar sebagai filter.
  3. Ini adalah salah satu indikator yang digunakan untuk mengevaluasi perubahan tren, seperti Blink, KDJ, dan lain-lain.
  4. Mengembangkan mekanisme stop loss. Stop loss aktif ketika kerugian mencapai titik stop loss yang telah ditetapkan sebelumnya.
  5. Tambahkan rasio bahaya untuk mengontrol penarikan maksimum.

Meringkaskan

Moving average linear forks dan dead forks yang digabungkan dengan strategi perdagangan MACD, yang membentuk sinyal perdagangan melalui pelacakan tren sederhana, mudah untuk diterapkan, dan dikombinasikan dengan kondisi penyaringan yang tepat untuk mengendalikan risiko, adalah strategi perdagangan kuantitatif yang efektif. Strategi ini dapat ditingkatkan dengan cara pengoptimalan parameter, peningkatan mekanisme stop loss, dan kombinasi lebih banyak indikator tambahan.

Kode Sumber Strategi
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMMA", max_bars_back = 200)

var up1 = #26A69A
var up2 = #B2DFDB
var down1 = #FF5252
var down2 = #FFCDD2
var confirmationLength = 2

var earliest = timestamp("20 Jan 2024 00:00 +0000")

// Regn u
shortEMA = ta.ema(close, 12)
longEMA = ta.ema(close, 26)
macd = shortEMA - longEMA
signal = ta.ema(macd, 9)
delta = macd - signal
absDelta = math.abs(delta)
previousDelta = delta[1]

signalCrossover = ta.crossover(macd, signal)
signalCrossunder = ta.crossunder(macd, signal)

harskiftetdag = hour(time[confirmationLength]) > hour(time)

enterLongSignal = signalCrossover[confirmationLength] and (macd > signal) and (absDelta >= 0.08)
exitLongSignal = signalCrossunder[confirmationLength] and (macd < signal)

enterShortSignal = signalCrossunder[confirmationLength] and (macd < signal) and (absDelta >= 0.08)
exitShortSignal = signalCrossover[confirmationLength] and (macd > signal)

// Så er det tid til at købe noe
qty = math.floor(strategy.equity / close)

if time >= earliest and not harskiftetdag
    if exitLongSignal 
        strategy.close("long")
    else if enterLongSignal
        strategy.close("short")
        strategy.entry("long", strategy.long, qty = qty)

    if exitShortSignal
        strategy.close("short")
    else if enterShortSignal
        strategy.close("long")
        strategy.entry("short", strategy.short, qty = qty)

// Så er det tid til at vise noe

plot(macd, color=color.blue)
plot(signal, color=color.orange)

// bgcolor(color = delta > 0.1 ? color.new(color.green, 90) : color.new(color.green, 100))
// bgcolor(color = signalCrossover ? color.purple : signalCrossunder ? color.aqua : color.new(color.green, 100))

histogramColor = delta > 0 ? (previousDelta < delta ? up1 : up2) : (previousDelta > delta ? down1 : down2)

plot(
     delta,
     style=plot.style_columns,
     color=histogramColor
     )