Strategi Dagangan Kuantitatif Kuantitatif Penjejakan Trend Crossover Purata Pergerakan Berganda

SMA MA 趋势跟踪 均线交叉 交易信号 自动反转
Tarikh penciptaan: 2025-03-25 14:58:39 Akhirnya diubah suai: 2025-03-25 14:58:39
Salin: 0 Bilangan klik: 353
2
fokus pada
319
Pengikut

Strategi Dagangan Kuantitatif Kuantitatif Penjejakan Trend Crossover Purata Pergerakan Berganda Strategi Dagangan Kuantitatif Kuantitatif Penjejakan Trend Crossover Purata Pergerakan Berganda

Gambaran keseluruhan

Strategi ini adalah sistem pengesanan trend berdasarkan dua persimpangan rata-rata, yang menggunakan persimpangan dua purata bergerak sederhana (SMA) dalam jangka pendek dan jangka panjang untuk menghasilkan isyarat perdagangan multi-posisi yang jelas. Strategi ini direka dengan ringkas, jelas, mudah difahami dan dilaksanakan, terutama sesuai untuk peniaga yang ingin menguasai asas-asas persimpangan rata-rata bergerak.

Prinsip Strategi

Strategi ini adalah berdasarkan kepada interaksi antara dua purata bergerak sederhana (SMA):

  1. Purata bergerak jangka pendek: secara lalai ditetapkan sebagai 9 kitaran, mencerminkan pergerakan harga yang lebih baru-baru ini
  2. Purata bergerak jangka panjang: secara lalai ditetapkan sebagai 21 kitaran, yang mencerminkan trend harga jangka panjang

Logik penjanaan isyarat dagangan:

  • Melakukan pelbagai syarat: apabila garis purata jangka pendek melintasi garis purata jangka panjang ke atas (ta.crossover function), sistem menghasilkan pelbagai isyarat
  • Keadaan kosong: apabila garis purata jangka pendek melintasi garis purata jangka panjang ke bawah (ta.crossunder function), sistem menghasilkan isyarat kosong

Proses pelaksanaan transaksi:

  • Apabila melakukan isyarat berbilang, sistem akan segera menghapuskan sebarang kedudukan kosong yang sedia ada, dan kemudian membuka kedudukan berbilang baru
  • Apabila isyarat kosong dicetuskan, sistem akan segera menghapuskan sebarang kedudukan kosong yang sedia ada dan membuka kedudukan kosong baru.
  • Sistem ini mencatatkan harga masuk dengan jelas pada carta dengan label, label multihead dipaparkan di atas garis K, label kosong dipaparkan di bawah garis K

Strategi ini juga membolehkan pengguna untuk menyesuaikan sumber harga (harga bukaan lalai) dan panjang kitaran garis rata-rata untuk menyesuaikan diri dengan keadaan pasaran atau gaya perdagangan yang berbeza.

Kelebihan Strategik

Dari analisis yang mendalam mengenai kod strategi, kami dapat menyimpulkan beberapa kelebihan yang jelas:

  1. ringkas dan jelas: logik strategi jelas, tanpa kombinasi indikator atau penghakiman syarat yang rumit, menjadikan pedagang mudah difahami dan diterapkan
  2. Intuisi visual: Sistem menggambar dua garis rata-rata pada carta dan membezakan dengan warna (rata-rata jangka pendek adalah merah, rata-rata jangka panjang adalah biru) sambil menunjukkan titik masuk dan harga secara intuitif dalam bentuk label
  3. Mekanisme pembalikan automatik: apabila isyarat baru muncul, strategi akan secara automatik menghapuskan kedudukan terbalik dan membina kedudukan baru, memastikan peniaga sentiasa mengikuti arah trend semasa
  4. Kustomisasi yang kuat: pengguna boleh menyesuaikan sumber harga dan kitaran rata-rata mengikut keutamaan mereka sendiri untuk menyesuaikan diri dengan persekitaran pasaran yang berbeza atau bingkai masa perdagangan
  5. Pengiraan masa nyata: Strategi menetapkan parameter calc_on_every_tick=true untuk memastikan pengiraan dilakukan pada setiap perubahan harga, memberikan isyarat yang paling tepat pada masanya
  6. Overfitting tanpa parameter: Strategi hanya menggunakan dua parameter rata-rata, mengurangkan risiko overfitting dan meningkatkan kestabilan strategi dalam keadaan pasaran yang berbeza
  7. Petua label yang jelas: Dengan meletakkan label pada kedudukan baris K seterusnya, peniaga dapat melihat dengan jelas harga kemasukan untuk memudahkan pengurusan risiko

Risiko Strategik

Walaupun strategi ini direka dengan ringkas dan berkesan, terdapat risiko yang berpotensi:

  1. Perdagangan yang kerap dalam pasaran goyah: Dalam pasaran yang bergolak atau goyah, garis rata-rata jangka pendek dan jangka panjang mungkin sering bercampur, menyebabkan terlalu banyak isyarat perdagangan dan kos perdagangan yang tidak perlu

    • Penyelesaian: Anda boleh menambah syarat penapisan tambahan, seperti penunjuk ADX yang mengesahkan kekuatan trend, atau menetapkan masa memegang minimum
  2. Masalah keterbelakangan: Rata-rata bergerak pada dasarnya adalah penunjuk keterbelakangan, dan isyarat mungkin hanya dihasilkan apabila trend telah berkembang atau hampir berakhir

    • Penyelesaian: Gabungan dengan penunjuk utama lain seperti RSI atau MACD, atau menggunakan kitaran purata yang lebih pendek untuk mengurangkan ketinggalan
  3. Risiko penembusan palsu: harga mungkin akan kembali ke arah trend asal selepas melepasi garis purata untuk seketika, menyebabkan isyarat yang salah

    • Penyelesaian: Tambah mekanisme pengesahan, seperti meminta harga untuk bertahan untuk masa tertentu atau magnitud selepas melintasi untuk mencetuskan perdagangan
  4. Kekurangan mekanisme penangguhan kerugian: Strategi semasa tidak mempunyai tetapan penangguhan kerugian yang jelas, yang boleh menyebabkan kerugian yang lebih besar dalam keadaan berbalik kuat

    • Penyelesaian: melaksanakan strategi hentian tetap atau hentian dinamik berdasarkan kadar turun naik
  5. Sensitiviti parameter: prestasi strategi lebih sensitif terhadap pilihan panjang kitaran garis rata-rata, parameter yang tidak betul boleh menyebabkan kesan strategi berubah secara besar-besaran

    • Penyelesaian: melakukan pengoptimuman pengulangan dan mencari kombinasi parameter yang stabil dalam pelbagai keadaan pasaran

Arah pengoptimuman strategi

Berdasarkan analisis yang mendalam mengenai kod ini, saya mencadangkan beberapa arah pengoptimuman:

  1. Tambah penapis trend: memperkenalkan ADX, penunjuk kekuatan trend atau penilaian kedudukan harga berbanding garis purata, menghasilkan isyarat hanya dalam persekitaran trend yang disahkan, mengelakkan perdagangan yang kerap di pasaran yang bergolak

    • Penjelasan: Ini akan mengurangkan isyarat palsu dan meningkatkan kejayaan transaksi dan kecekapan dana
  2. Pemasangan mekanisme hentian dinamik: menetapkan tahap hentian dinamik berdasarkan ATR atau petunjuk turun naik lain, melindungi keuntungan dan mengehadkan risiko maksimum dalam satu perdagangan

    • Penjelasan: Pengurusan risiko yang berkesan adalah kunci kejayaan perdagangan jangka panjang
  3. Optimumkan masa masuk: pertimbangkan untuk menggunakan pengesahan kitaran kecil atau menunggu panggilan balik untuk masuk semula setelah isyarat dihasilkan untuk mendapatkan harga pelaksanaan yang lebih baik

    • Penjelasan: Optimumkan harga kemasukan untuk meningkatkan kadar pulangan jangka panjang.
  4. Meningkatkan penapisan jumlah transaksi: Meningkatkan pengesahan jumlah transaksi berdasarkan isyarat silang, dan transaksi dijalankan hanya jika jumlah transaksi juga menyokong perubahan arah

    • Penjelasan: Jumlah transaksi adalah pengesahan penting kepada keberkesanan perubahan harga
  5. Mempunyai kitaran garis rata yang menyesuaikan diri: menyesuaikan panjang kitaran garis rata secara automatik mengikut turun naik pasaran, menggunakan kitaran yang lebih lama dalam persekitaran yang bergelombang tinggi, menggunakan kitaran yang lebih pendek dalam persekitaran yang bergelombang rendah

    • Penjelasan: Ini membolehkan strategi untuk menyesuaikan diri dengan keadaan dan kitaran pasaran yang berbeza
  6. Menambah mekanisme pembukaan dan simpanan simpanan secara berturut-turut: bukannya membina semua simpanan sekaligus, tetapi membangunkan simpanan dan simpanan secara beransur-ansur, untuk mengurangkan risiko pilihan masa

    • Penjelasan: Kaedah ini dapat meluruskan keputusan perdagangan, mengurangkan faktor keberuntungan yang disebabkan oleh pilihan titik masuk tunggal

ringkaskan

Strategi penjejaki trend silang dua garis adalah sistem perdagangan kuantitatif yang ringkas dan kuat yang menghasilkan isyarat perdagangan yang jelas melalui persilangan purata bergerak jangka pendek dan jangka panjang. Kelebihan utamanya adalah operasi yang mudah, intuisi visual dan mekanisme pembalikan automatik yang membolehkan pedagang mengikuti trend pasaran secara objektif. Walau bagaimanapun, strategi ini juga mempunyai risiko yang melekat seperti perdagangan yang kerap di pasaran goyah dan kelewatan isyarat.

Strategi asas ini dapat dipertingkatkan dengan cara menambah penapis trend, melaksanakan mekanisme berhenti kehilangan dinamik, mengoptimumkan masa masuk dan meningkatkan pengesahan jumlah perdagangan. Ia akan membantu meningkatkan prestasi strategi dalam pelbagai keadaan pasaran, terutamanya dengan menggabungkan indikator teknikal lain untuk menapis isyarat dan mengoptimumkan pengurusan risiko.

Ini adalah titik permulaan yang ideal untuk pemula yang ingin memulakan perdagangan kuantitatif; bagi peniaga yang berpengalaman, ia memberikan asas yang kukuh untuk penyesuaian dan pengoptimuman lebih lanjut. Yang penting, apa sahaja penambahbaikan yang digunakan harus dinilai melalui pengesanan dan pengesahan ke hadapan yang ketat untuk memastikan bahawa penambahbaikan strategi benar-benar menambah nilai jangka panjang.

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

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
//@version=6
//
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// @author = Da_mENIZ
// © denis_zvegelj
// last change	20.Mar.2025
//
// Simple MA Crossover strategy that shows on the chart with Long/Short indicators. Feel free to use it to suit 
// your needs
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
strategy("DZ Simple MA Crossover Strategy", shorttitle="DZ_MACross", overlay=true, calc_on_every_tick=true)

// Define the moving average lengths
i_src_price = input.source  (open, "Price source",                                                                                                                     group="Main Settings")
i_shMA_len  = input.int		(9, 	"Short MA Length", 		minval=1,																									group="Main Settings")
i_loMA_len  = input.int		(21,	"Long MA Length", 		minval=6,																									group="Main Settings")

// Calculate the moving averages
short_MA = ta.sma(i_src_price, i_shMA_len)
long_MA = ta.sma(i_src_price, i_loMA_len)

// Plot the moving averages on the chart
plot(short_MA, color=color.red, linewidth=2, title="Short MA")
plot(long_MA, color=color.blue, linewidth=2, title="Long MA")

// Generate the buy and sell signals
long_Cond = ta.crossover(short_MA, long_MA)
short_Cond = ta.crossunder(short_MA, long_MA)

// Place the orders based on conditions
if (long_Cond)
    strategy.close("Short", immediately = true, comment = "Close")
    strategy.entry("Long", strategy.long, comment = "Enter")
    label.new(bar_index+1, open, "Long\n" + str.tostring(open), style=label.style_label_down, color=color.blue, textcolor=color.white, yloc=yloc.abovebar)



if (short_Cond)
    strategy.close("Long", immediately = true, comment = "Close")
//    strategy.entry("Short", strategy.short, comment = "Short\n" + str.tostring(open))
    strategy.entry("Short", strategy.short, comment = "Enter")
    label.new(bar_index+1, open, "Short\n" + str.tostring(open), style=label.style_label_up, color=color.red, textcolor=color.white, yloc=yloc.belowbar)