Sumber daya yang dimuat... Pemuatan...

EMA Dual Moving Average Crossover Strategi

Penulis:ChaoZhang, Tanggal: 2024-06-07 15:58:15
Tag:EMAMA

img

Gambaran umum

Strategi ini menggunakan dua rata-rata bergerak eksponensial (EMA) untuk menangkap perubahan tren harga. Ketika EMA jangka pendek melintasi di atas EMA jangka panjang dari bawah, sinyal beli dihasilkan; ketika EMA jangka pendek melintasi di bawah EMA jangka panjang dari atas, sinyal jual dihasilkan. Strategi ini juga menetapkan batas stop loss dan take profit harian untuk mengendalikan kerugian dan keuntungan sehari-hari.

Prinsip Strategi

  1. Menghitung EMA jangka pendek (periode default 9) dan EMA jangka panjang (periode default 21).
  2. Ketika EMA jangka pendek melintasi di atas EMA jangka panjang, buka posisi panjang; ketika EMA jangka pendek melintasi di bawah EMA jangka panjang, buka posisi pendek.
  3. Catat ekuitas rekening pada awal setiap hari perdagangan dan hitung perbedaan antara ekuitas rekening arus dan ekuitas awal, yaitu laba rugi harian.
  4. Jika kerugian harian melebihi kerugian maksimum yang diizinkan (0,25% dari dana akun awal), tutup semua posisi.
  5. Jika keuntungan harian melebihi keuntungan maksimum yang diizinkan (2% dari dana akun awal), tutup semua posisi.

Keuntungan Strategi

  1. Sederhana dan mudah dimengerti: Logika strategi jelas dan hanya menggunakan dua rata-rata bergerak untuk menghasilkan sinyal perdagangan, membuatnya mudah dimengerti dan diterapkan.
  2. Mengikuti tren: Dengan menggunakan persilangan EMA cepat dan lambat, strategi dapat menangkap perubahan tren harga dengan relatif baik, membuatnya cocok untuk digunakan di pasar tren.
  3. Pengendalian risiko: Batas stop-loss dan take-profit harian dapat secara efektif mengendalikan kerugian dan keuntungan satu hari, mencegah fluktuasi yang berlebihan dalam akun.

Risiko Strategi

  1. Optimasi parameter: Kinerja strategi sangat tergantung pada pilihan periode EMA, dan pengaturan parameter yang berbeda dapat menyebabkan hasil yang sangat berbeda. Oleh karena itu, optimasi parameter dan backtesting perlu dilakukan di lingkungan pasar yang berbeda.
  2. Pasar bergolak: Di pasar bergolak, harga sering berfluktuasi di atas dan di bawah EMA, berpotensi menghasilkan banyak sinyal palsu dan menyebabkan perdagangan yang sering dan erosi modal.
  3. Pembalikan tren: Ketika tren pasar berbalik, strategi dapat menunda masuk atau keluar, kehilangan peluang perdagangan terbaik.

Arah Optimasi Strategi

  1. Memperkenalkan indikator teknis lainnya seperti RSI dan MACD untuk membantu menilai kekuatan dan arah tren dan meningkatkan akurasi sinyal.
  2. Mengoptimalkan aturan stop loss dan take profit, seperti menggunakan trailing stop atau tingkat take profit dinamis, untuk lebih melindungi keuntungan dan mengendalikan risiko.
  3. Sesuaikan periode EMA secara dinamis berdasarkan volatilitas pasar untuk beradaptasi dengan kondisi pasar yang berbeda.
  4. Menggabungkan analisis fundamental, seperti data ekonomi dan peristiwa utama, untuk menyaring dan mengkonfirmasi sinyal perdagangan.

Ringkasan

Strategi crossover rata-rata bergerak ganda EMA adalah strategi perdagangan yang sederhana dan mudah dimengerti yang cocok untuk pasar tren. Dengan menggunakan crossover rata-rata bergerak cepat dan lambat, strategi ini dapat menangkap perubahan tren harga dengan relatif baik. Pada saat yang sama, pengaturan stop loss dan take profit harian dapat secara efektif mengendalikan risiko. Namun, strategi ini dapat berkinerja buruk di pasar yang bergolak atau selama pembalikan tren dan perlu dioptimalkan dan ditingkatkan dengan menggabungkan indikator teknis dan metode analisis lainnya.


/*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")


Berkaitan

Lebih banyak