Gold Cross Dead Cross Strategi Perdagangan Kuantitatif

Penulis:ChaoZhang, Tarikh: 2024-02-02 14:46:11
Tag:

img

Ringkasan

Strategi ini mengira crossover purata bergerak mudah 30 hari (MA30) dan purata bergerak mudah 200 hari (MA200) XAUUSD (emas) untuk melaksanakan pembelian silang emas dan penjualan silang mati perdagangan kuantitatif. Strategi ini juga menetapkan harga stop loss dan mengambil keuntungan untuk penutupan kedudukan automatik.

Prinsip Strategi

Indikator teras strategi ini ialah MA30 dan MA200. Apabila MA30 melintasi di atas MA200, isyarat beli dihasilkan. Apabila MA30 melintasi di bawah MA200, isyarat jual dihasilkan. Salib ini dipanggil salib emas dan salib mati.

Secara khusus, strategi ini menggunakan perpustakaan ta untuk mengira MA30 dan MA200. Fungsi ta.crossover dan ta.crossunder kemudian menilai sama ada mereka bersilang. Apabila persilangan ke atas (silang emas) berlaku, nilai longCondition ditetapkan menjadi benar untuk membeli. Apabila persilangan ke bawah (silang mati) berlaku, nilai shortCondition ditetapkan menjadi benar untuk menjual.

Untuk pelaksanaan pesanan, harga stop loss dan mengambil keuntungan masing-masing 40,000 mata ditetapkan untuk perdagangan panjang dan pendek. Ini sepadan dengan perubahan harga 4,000 mata dalam XAUUSD. Apabila harga mencetuskan stop loss atau mengambil keuntungan, pesanan akan menutup kedudukan secara automatik.

Di samping itu, mekanisme lindung nilai ditubuhkan dalam strategi. Jika kedudukan semasa panjang, isyarat silang mati berikutnya akan langsung meratakan kedudukan dan membalikkannya. Jika kedudukan semasa pendek, isyarat silang emas berikutnya juga akan langsung meratakan dan membalikkan kedudukan. Ini mengelakkan kerugian besar semasa pembalikan trend.

Kelebihan

Ini adalah strategi trend yang sangat mudah dan intuitif. Ia mempunyai kelebihan berikut:

  1. Peraturan yang jelas dan mudah dilaksanakan.
  2. Berlaku untuk pelbagai jangka masa untuk dagangan siang dan jangka panjang.
  3. Selaraskan dengan kitaran pasaran dan menangkap pembalikan trend.
  4. Menetapkan mekanisme keluar automatik dengan stop loss / keuntungan untuk mengawal kerugian perdagangan tunggal.
  5. Menetapkan lindung nilai untuk mengelakkan kerugian daripada pembalikan trend.

Analisis Risiko

Terdapat beberapa risiko untuk strategi ini:

  1. Penunjuk MA tertinggal dan mungkin terlepas entri terbaik untuk pembalikan trend jangka pendek.
  2. Tetapan stop loss yang tidak betul boleh membawa kepada penyingkiran perdagangan secara awal.
  3. Terlalu banyak isyarat sebaliknya meningkatkan perdagangan yang tidak perlu.
  4. Strategi ini mempunyai keperluan modal untuk menahan pengeluaran.

Risiko ini boleh dikendalikan dengan mengoptimumkan parameter, menyesuaikan tahap stop loss, menapis isyarat terbalik dll.

Pengoptimuman

Strategi ini boleh dioptimumkan dengan beberapa cara:

  1. Mengoptimumkan parameter MA menggunakan EMA atau purata bergerak bertingkat.
  2. Tambah penapis lain seperti jumlah, penunjuk turun naik dll.
  3. Membolehkan mekanisme lindung nilai hanya pada isyarat penting.
  4. Tetapkan saiz kedudukan untuk kecekapan modal yang lebih baik.
  5. Mengoptimumkan berhenti / keuntungan secara dinamik menggunakan algoritma pembelajaran mesin.

Penyesuaian parameter, penambahan penapis, ukuran kedudukan dan lain-lain dapat meningkatkan kestabilan strategi.

Kesimpulan

Ini adalah strategi crossover purata bergerak yang mudah dan praktikal. Ia sejajar dengan kitaran pasaran, mengawal risiko melalui pengeluaran stop loss / keuntungan automatik dan mekanisme lindung nilai. Mudah difahami dan dilaksanakan, ia boleh digunakan untuk pelbagai produk dan jangka masa. Pengoptimuman lanjut dapat meningkatkan profil risiko / ganjaran. Secara keseluruhan strategi perdagangan kuantitatif yang disarankan.


/*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("Estrategia de Cruce de Medias Móviles", overlay=true)

// Medias móviles
ma30 = ta.sma(close, 30)
ma60 = ta.sma(close, 60)
ma200 = ta.sma(close, 200)

// Cruce de medias móviles
crossoverUp = ta.crossover(ma30, ma200)
crossoverDown = ta.crossunder(ma30, ma200)

// Señales de compra y venta
longCondition = crossoverUp
shortCondition = crossoverDown

// Ejecución de órdenes
if (longCondition)
    strategy.entry("Buy", strategy.long)
    strategy.exit("Cover", "Buy", stop=close - 40.000, limit=close + 40.000)
if (shortCondition)
    strategy.entry("Sell", strategy.short)
    strategy.exit("Cover", "Sell", stop=close + 40.000, limit=close - 40.000)

// Plot de las medias móviles
plot(ma30, color=color.blue, title="MA 30")
plot(ma60, color=color.orange, title="MA 60")
plot(ma200, color=color.green, title="MA 200")

// Condiciones para cerrar la posición contraria
if (strategy.position_size > 0)
    if (crossoverDown)
        strategy.close("Buy")
if (strategy.position_size < 0)
    if (crossoverUp)
        strategy.close("Sell")

Lebih lanjut