Strategi Crossover Rata-rata Pergerakan Ganda EMA

EMA MA
Tanggal Pembuatan: 2024-06-07 15:58:15 Akhirnya memodifikasi: 2024-06-07 15:58:15
menyalin: 0 Jumlah klik: 695
1
fokus pada
1617
Pengikut

Strategi Crossover Rata-rata Pergerakan Ganda EMA

Ringkasan

Strategi ini menggunakan dua indeks moving average (EMA) untuk menangkap perubahan tren harga. Ketika EMA jangka pendek melintasi EMA jangka panjang dari arah bawah, menghasilkan sinyal beli; Ketika EMA jangka pendek melintasi EMA jangka panjang dari arah atas, menghasilkan sinyal jual. Strategi ini juga menetapkan batas stop loss dan stop loss harian untuk mengendalikan kerugian dan keuntungan dalam satu hari.

Prinsip Strategi

  1. Hitung EMA jangka pendek (default period 9) dan EMA jangka panjang (default period 21).
  2. Ketika EMA jangka pendek naik melewati EMA jangka panjang, maka posisi dibuka; ketika EMA jangka pendek turun melewati EMA jangka panjang, maka posisi dibuka.
  3. Mencatat ekuitas di awal setiap hari perdagangan dan menghitung perbedaan ekuitas dan ekuitas di akun saat ini, yaitu kerugian pada hari tersebut.
  4. Jika kerugian pada hari itu melebihi kerugian maksimum yang diizinkan (,25% dari modal awal akun), maka semua posisi akan dihapus.
  5. Jika keuntungan pada hari tersebut melebihi keuntungan maksimum yang diizinkan (% dari modal awal akun), maka semua posisi akan dihapus.

Keunggulan Strategis

  1. Sederhana dan mudah dipahami: Strategi ini logisnya jelas, hanya menggunakan dua moving averages untuk menghasilkan sinyal perdagangan, mudah dipahami dan diterapkan.
  2. Pelacakan tren: dengan persimpangan garis EMA cepat dan lambat, dapat menangkap perubahan tren harga dengan lebih baik, cocok untuk digunakan di pasar tren.
  3. Pengendalian risiko: Pembatasan stop loss dan stop loss harian yang dapat mengontrol kerugian dan keuntungan dalam sehari secara efektif, mencegah akun mengalami fluktuasi yang terlalu besar.

Risiko Strategis

  1. Optimasi Parameter: Kinerja strategi ini sangat tergantung pada pilihan siklus EMA, dan pengaturan parameter yang berbeda dapat menghasilkan hasil yang sangat berbeda. Oleh karena itu, perlu dilakukan optimasi parameter dan pengujian ulang dalam lingkungan pasar yang berbeda.
  2. Pasar bergoyang: Dalam pasar bergoyang, harga sering berfluktuasi di atas dan di bawah EMA, yang dapat menghasilkan lebih banyak sinyal palsu, yang menyebabkan perdagangan yang lebih sering dan kehilangan dana.
  3. Trend reversal: Ketika tren pasar berbalik, strategi ini dapat menunda masuk atau keluar, kehilangan waktu perdagangan terbaik.

Arah optimasi strategi

  1. Masukkan indikator teknis lainnya, seperti RSI, MACD, dan lain-lain, untuk membantu menentukan kekuatan dan arah tren, meningkatkan akurasi sinyal.
  2. Optimalkan aturan stop loss dan stop loss, seperti menggunakan stop loss bergerak atau stop loss dinamis, untuk lebih melindungi keuntungan dan mengendalikan risiko.
  3. Adaptasi siklus EMA berdasarkan dinamika volatilitas pasar untuk menyesuaikan dengan kondisi pasar yang berbeda.
  4. Ini adalah analisis fundamental, seperti data ekonomi, peristiwa besar, dan lain-lain, untuk memfilter dan mengkonfirmasi sinyal perdagangan.

Meringkaskan

EMA adalah strategi perdagangan yang mudah dipahami dan cocok untuk pasar yang sedang tren. Dengan persimpangan rata-rata yang cepat dan lambat, perubahan tren harga dapat ditangkap dengan lebih baik. Sementara itu, pengaturan stop loss dan stop loss setiap hari dapat secara efektif mengendalikan risiko. Namun, strategi ini mungkin berkinerja buruk ketika pasar bergoyang atau berbalik arah, dan perlu dioptimalkan dan ditingkatkan dalam kombinasi dengan indikator teknis dan metode analisis lainnya.

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

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © DD173838

//@version=5
strategy("Moving Average Strategy with Daily Limits", overlay=true)

// Moving Average settings
shortMaLength = input.int(9, title="Short MA Length")
longMaLength = input.int(21, title="Long MA Length")

// Calculate MAs
shortMa = ta.ema(close, shortMaLength)
longMa = ta.ema(close, longMaLength)

// Plot MAs
plot(shortMa, title="9 EMA", color=color.blue)
plot(longMa, title="21 EMA", color=color.red)

// Strategy conditions
crossUp = ta.crossover(shortMa, longMa)
crossDown = ta.crossunder(shortMa, longMa)

// Debug plots to check cross conditions
plotshape(series=crossUp, title="Cross Up", location=location.belowbar, color=color.green, style=shape.labelup, text="UP")
plotshape(series=crossDown, title="Cross Down", location=location.abovebar, color=color.red, style=shape.labeldown, text="DOWN")

// Entry at cross signals
if (crossUp)
    strategy.entry("Long", strategy.long)

if (crossDown)
    strategy.entry("Short", strategy.short)

// Daily drawdown and profit limits
var float startOfDayEquity = na
if (na(startOfDayEquity) or ta.change(time('D')) != 0)
    startOfDayEquity := strategy.equity

maxDailyLoss = 50000 * 0.0025
maxDailyProfit = 50000 * 0.02
currentDailyPL = strategy.equity - startOfDayEquity

if (currentDailyPL <= -maxDailyLoss)
    strategy.close_all(comment="Max Daily Loss Reached")

if (currentDailyPL >= maxDailyProfit)
    strategy.close_all(comment="Max Daily Profit Reached")