Strategi Persilangan Purata Pergerakan Eksponen Berganda

EMA 技术指标 交叉策略 趋势跟踪 移动平均线
Tarikh penciptaan: 2025-04-07 12:00:24 Akhirnya diubah suai: 2025-04-07 12:00:24
Salin: 0 Bilangan klik: 328
2
fokus pada
319
Pengikut

Strategi Persilangan Purata Pergerakan Eksponen Berganda Strategi Persilangan Purata Pergerakan Eksponen Berganda

Gambaran keseluruhan

Strategi penarikan diri dari crossover crossover adalah strategi perdagangan kuantitatif yang didasarkan pada sinyal persilangan dua garis EMA berkala yang berlainan (dalam 5 dan 21 kitaran). Strategi ini menangkap titik-titik perubahan trend pasaran dengan mengenal pasti EMA jangka pendek dan garisan emas dan garisan mati antara EMA jangka panjang, dan dengan itu melakukan perdagangan mengikut trend.

Prinsip Strategi

Prinsip teras strategi ini adalah berdasarkan isyarat persilangan purata bergerak untuk mengenal pasti titik perubahan trend pasaran. Ia dilaksanakan seperti berikut:

  1. Hitung dua purata bergerak indeks: 5 kitaran EMA ((pendek) dan 21 kitaran EMA ((panjang)
  2. Kenali isyarat garpu emas: apabila 5 kitaran EMA melintasi 21 kitaran EMA dari bawah
  3. Kenali isyarat dead fork: apabila 5 kitaran EMA melintasi 21 kitaran EMA dari atas
  4. Peraturan transaksi:
    • Apabila isyarat garpu emas muncul dan tiada kedudukan teratas pada masa ini, kosongkan kedudukan teratas yang mungkin ada dan buka kedudukan teratas
    • Apabila isyarat garpu mati muncul dan tidak ada kedudukan kosong pada masa ini, sebarkan kedudukan kosong yang mungkin ada, buka kedudukan kosong
  5. Pentadbiran kedudukan: berdagang menggunakan 100% nilai bersih akaun dan tidak membenarkan penambahan (pyramiding set kepada 0)
  6. Penapisan masa: isyarat perdagangan hanya dilaksanakan antara 1 Januari 2024 dan 1 Mac 2025

Strategi ini menggunakan pemikiran trend-following untuk mengesahkan perubahan arah trend dengan menyeberangi purata bergerak, dan selepas mengesahkan trend, membina kedudukan yang mengikuti arah yang sesuai. Indeks EMA lebih sensitif terhadap perubahan harga daripada purata bergerak sederhana dan dapat menangkap perubahan trend dengan lebih cepat.

Kelebihan Strategik

Dengan analisis kod yang mendalam, strategi ini mempunyai kelebihan yang ketara:

  1. Kejelasan isyarat: isyarat berasaskan EMA yang jelas dan tidak jelas, mudah dilaksanakan dan diukur semula
  2. Sensitiviti tindak balas: menggunakan EMA dan bukan SMA, menjadikan strategi lebih sensitif terhadap perubahan harga dan dapat menangkap perubahan trend dengan lebih cepat
  3. Tingkat automasi yang tinggi: Strategi melaksanakan isyarat perdagangan secara automatik tanpa campur tangan manusia, mengurangkan pengaruh emosi subjektif terhadap perdagangan
  4. Pengurusan risiko yang lengkap: secara automatik melonggarkan kedudukan apabila isyarat pembalikan berlaku, mengawal masa pendedahan risiko dengan berkesan
  5. Pengurusan dana yang munasabah: Menggunakan peratusan nilai bersih akaun sebagai kaedah pengurusan kedudukan, menyesuaikan saiz kedudukan secara automatik dengan perubahan saiz akaun
  6. Visualisasi yang baik: menandakan isyarat garpu emas dan garpu mati pada carta, dan memaparkan parameter strategi dan keuntungan bersih untuk pemantauan dan penilaian strategi
  7. Perdagangan dua hala: menangkap trend naik dan turun untuk memaksimumkan peluang pasaran
  8. Penapisan masa: Dengan mekanisme penapisan masa, anda boleh menetapkan jangka masa yang fleksibel untuk menjalankan strategi, mengelakkan gangguan pasaran pada tempoh tertentu

Risiko Strategik

Walaupun strategi ini direka dengan baik, terdapat risiko yang berpotensi:

  1. Risiko pasaran bergolak: Dalam pasaran bergolak horizontal, EMA berlainan sering dan mudah menghasilkan isyarat palsu yang menyebabkan hentian berturut-turut

    • Penyelesaian: Anda boleh menambah syarat penapisan tambahan, seperti penunjuk ADX yang mengesahkan kekuatan trend, atau menambah penapis kadar lonjakan
  2. Risiko keterbelakangan: Walaupun EMA bertindak balas dengan cepat, masih ada kelewatan tertentu sebagai penunjuk keterbelakangan yang mungkin memberi isyarat apabila trend telah berakhir

    • Penyelesaian: Anda boleh mempertimbangkan untuk memendekkan kitaran EMA atau menggunakan petunjuk utama
  3. Risiko pengurusan wang: Strategi menggunakan 100% nilai bersih akaun untuk berdagang, leverage tinggi, yang boleh menyebabkan nilai bersih akaun menurun dengan ketara jika kerugian berturut-turut

    • Penyelesaian: mengurangkan peratusan kedudukan, seperti 50% atau kurang, memperkenalkan mekanisme kawalan maksimum penarikan balik
  4. Kekurangan mekanisme hentikan kerugian: tiada tetapan hentikan kerugian yang jelas dalam kod, yang mungkin menyebabkan kerugian yang lebih besar dalam keadaan pasaran yang melampau

    • Penyelesaian: Tambah Hentian Tetap atau Hentian Kalib ATR, Hadkan Kerugian Maksimum dalam Satu Perdagangan
  5. Kekurangan perlindungan keuntungan: tidak ada set stop atau stop loss bergerak, yang boleh menyebabkan pengembalian keuntungan yang telah diperoleh

    • Penyelesaian: melaksanakan hentian bergerak atau menutup sebahagian keuntungan apabila mencapai sasaran keuntungan tertentu

Arah pengoptimuman strategi

Berdasarkan analisis mendalam kod, strategi ini boleh dioptimumkan dalam beberapa arah:

  1. Menambah penapis trend: Pengenalan penunjuk ADX untuk menapis isyarat perdagangan di pasaran trend lemah, hanya menjalankan perdagangan apabila ADX lebih besar daripada nilai terendah tertentu (seperti 20), mengurangkan isyarat palsu di pasaran goyah. Pengoptimuman sedemikian dapat meningkatkan peluang kemenangan dengan berkesan, kerana strategi purata bergerak berfungsi lebih baik di pasaran trend yang kuat.

  2. Menerapkan Hentian Dinamis: Menambah Hentian Dinamis Berasaskan ATR, yang dapat menyesuaikan kedudukan hentian secara automatik mengikut turun naik pasaran, baik untuk mengawal risiko dan tidak keluar lebih awal kerana hentian terlalu ketat. Ini sangat berharga untuk mengesan trend jangka panjang.

  3. Optimumkan parameter EMA: Anda boleh menguji kombinasi kitaran EMA yang berbeza, seperti 3 dan 15, 8 dan 34 dan lain-lain, dengan optimumkan parameter untuk mencari parameter yang lebih baik dalam keadaan pasaran tertentu. Pasar dan jangka masa yang berbeza mungkin memerlukan parameter optimum yang berbeza.

  4. Memperkenalkan mekanisme keuntungan separa: Apabila keuntungan mencapai tahap tertentu (seperti 2 kali ATR), anda boleh menebus sebahagian daripada kedudukan yang mengunci keuntungan, dan kedudukan yang tersisa terus memegang trend. Ini dapat meningkatkan kestabilan pendapatan keseluruhan sambil mengekalkan keupayaan untuk menangkap trend besar.

  5. Tambah penapis masa perdagangan: Beberapa pasaran terlalu bergolak atau kurang cair pada masa tertentu, anda boleh menetapkan tetingkap masa perdagangan dan hanya berdagang pada masa pasaran yang paling aktif dan stabil. Ini membantu mengelakkan keadaan pasaran yang bergolak tinggi atau tidak cekap.

  6. Menerapkan strategi pengurusan kedudukan: Meningkatkan kaedah pengurusan kedudukan peratusan tetap semasa, boleh menggunakan penyesuaian kedudukan berdasarkan turun naik, mengurangkan kedudukan dalam persekitaran pasaran yang bergelombang, sebaliknya meningkatkan kedudukan, untuk mengekalkan keserasian lubang risiko.

  7. Tambah penanda pengesahan kedua: gabungan RSI, penunjuk rawak atau penunjuk teknikal lain seperti MACD sebagai pengesahan kedua, perdagangan dilakukan hanya apabila beberapa penunjuk bersama menunjuk ke arah yang sama, meningkatkan kualiti isyarat.

ringkaskan

Strategi penarikan diri dari pergerakan rata-rata bergerak dua indeks adalah sistem perdagangan trend yang ringkas dan cekap yang menangkap titik perubahan trend pasaran dengan mengenal pasti isyarat silang 5 kitaran dan 21 kitaran EMA. Strategi ini beroperasi dengan jelas, melaksanakan automasi, menghasilkan isyarat objektif, dan sangat sesuai untuk persekitaran pasaran yang jelas dalam jangka masa sederhana dan jangka panjang.

Walaupun terdapat risiko isyarat palsu di bawah pasaran yang bergolak dan ketinggalan tertentu, tetapi dengan cara meningkatkan penapisan kekuatan trend, pilihan parameter yang dioptimumkan, pelaksanaan stop loss dinamik, dan pengurusan kedudukan yang lebih baik, anda dapat meningkatkan kestabilan dan keuntungan strategi secara signifikan. Ini adalah kerangka asas yang ideal untuk pedagang yang mencari sistem pemantauan trend sepenuhnya automatik, yang boleh disesuaikan dan dioptimumkan lebih lanjut mengikut pilihan risiko dan gaya perdagangan peribadi.

Secara khusus, dengan menggabungkan strategi ini dengan kaedah seperti analisis struktur pasaran, penyaringan asas atau analisis bermusim, sistem perdagangan yang lebih menyeluruh dapat dibina dan dapat bersaing dalam pelbagai keadaan pasaran.

Kod sumber strategi
/*backtest
start: 2025-01-01 00:00:00
end: 2025-04-06 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=6
strategy("EMA Cross Strategy with EMA Turning Exit", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, pyramiding=0)



// 定义EMA参数
ema5 = ta.ema(close, 5)
ema21 = ta.ema(close, 21)

// 绘制EMA线
plot(ema5, color=color.blue, title="EMA 5", linewidth=1)
plot(ema21, color=color.red, title="EMA 21", linewidth=1)

// 定义金叉和死叉条件
goldCross = ta.crossover(ema5, ema21)
deadCross = ta.crossunder(ema5, ema21)

// 在图表上标记交叉信号
plotshape(goldCross, title="Golden Cross", style=shape.triangleup, location=location.belowbar, color=color.green, size=size.normal)
plotshape(deadCross, title="Death Cross", style=shape.triangledown, location=location.abovebar, color=color.red, size=size.normal)


// 执行交易策略

// 开多单条件:金叉信号且无多头仓位
if (goldCross and strategy.position_size <= 0)
    strategy.close("Short")  // 平掉空头仓位(如果有)
    strategy.entry("Long", strategy.long)

// 开空单条件:死叉信号且无空头仓位
if (deadCross and strategy.position_size >= 0)
    strategy.close("Long")  // 平掉多头仓位(如果有)
    strategy.entry("Short", strategy.short)

// 显示策略参数和状态
var table t = table.new(position.top_right, 2, 3, bgcolor=color.white)
table.cell(t, 0, 0, "EMA Fast", text_color=color.blue)
table.cell(t, 1, 0, "5", text_color=color.blue)
table.cell(t, 0, 1, "EMA Slow", text_color=color.red)
table.cell(t, 1, 1, "21", text_color=color.red)
table.cell(t, 0, 2, "Net Profit", text_color=color.black)
table.cell(t, 1, 2, str.tostring(strategy.netprofit), text_color=color.black)