Strategi perdagangan berdasarkan dua rata-rata pergerakan yang berubah secara bertahap dengan parameter yang berbeda


Tanggal Pembuatan: 2023-12-20 14:28:36 Akhirnya memodifikasi: 2023-12-20 14:28:36
menyalin: 0 Jumlah klik: 660
1
fokus pada
1621
Pengikut

Strategi perdagangan berdasarkan dua rata-rata pergerakan yang berubah secara bertahap dengan parameter yang berbeda

Ringkasan

Strategi perdagangan rata-rata progresif adalah strategi perdagangan yang didasarkan pada sinyal silang dari rata-rata bergerak eksponensial (Exponential Moving Average, EMA) berdasarkan dua parameter yang berbeda. Strategi ini menggunakan garis EMA dengan periode yang lebih pendek dan garis EMA dengan periode yang lebih lama, yang menghasilkan sinyal perdagangan saat mereka berselisih, dengan garis cepat naik saat melintasi garis lambat, dan posisi datar saat melintasi garis rendah. Strategi ini juga menggabungkan metode manajemen risiko seperti stop loss, pelacakan stop loss untuk mengunci keuntungan, dan pengendalian risiko.

Prinsip Strategi

Indikator utama dari strategi ini adalah dua garis EMA: garis cepat dan garis lambat. Parameter garis cepat secara default ditetapkan sebagai garis 13 hari, dan lebih sensitif terhadap perubahan harga. Parameter garis lambat secara default ditetapkan sebagai garis 48 hari, dan lebih lambat dalam menanggapi perubahan harga.

Berdasarkan prinsip ini, strategi ini melakukan lebih banyak ketika garis cepat dari bawah ke atas menerobos garis lambat, yang berarti harga mulai naik, dan dapat dibeli; ketika garis cepat dari atas ke bawah menerobos garis lambat, yang berarti tren naik berakhir, dan harus berhenti pada waktunya. Untuk mengendalikan risiko, strategi ini juga mengatur stop loss awal dan tracking stop loss: stop loss awal adalah 8% dari harga masuk, dan tracking stop loss diam-diam 120 poin.

Pada implementasi kode, strategi ini menggunakan fungsi crossover dan crossunder untuk menentukan sinyal silang EMA, dan ketika silang terjadi, memicu entry dan close yang sesuai untuk membeli posisi damai.

Analisis Keunggulan

Strategi perdagangan linear progresif memiliki keuntungan sebagai berikut:

  1. Sinyal-sinyal strategi yang sederhana dan jelas, mudah dipahami, dan cocok untuk pemula;

  2. Indikator rata-rata memiliki efek yang baik pada kebisingan pasar, dapat melihat perubahan tren;

  3. Konfigurasi yang kuat, parameter jalur cepat dan lambat, dan titik stop loss dapat disesuaikan;

  4. Menggunakan metode stop loss, risiko dapat dikendalikan secara efektif.

  5. Stabilitas tertentu.

Analisis risiko

Strategi ini juga memiliki beberapa risiko:

  1. Pada saat pasar bergejolak, sinyal silang EMA mungkin terlambat dan tidak dapat mencerminkan perubahan harga secara tepat waktu;

  2. Penyesuaian parameter indikator rata-rata dengan kecepatan terlalu cepat dapat menghasilkan lebih banyak sinyal yang salah;

  3. Pada saat tren yang lemah, EMA memiliki lebih sedikit crossover, sehingga tidak dapat secara efektif menangkap pergerakan harga.

  4. Strategi itu sendiri tidak mempertimbangkan analisis tren pada tingkat yang lebih besar, yang dapat menghasilkan perdagangan yang menyimpang dari tren besar ketika tren pasar secara keseluruhan tidak jelas.

Risiko di atas dapat dikurangi dengan:

  1. Dalam kombinasi dengan indikator lain untuk mengkonfirmasi sinyal persilangan rata-rata, seperti MACD, KD dan lain-lain;

  2. Mengatur parameter EMA sesuai dengan pasar yang berbeda untuk mengurangi tingkat sinyal yang salah;

  3. Menambahkan modul penilaian tren, merujuk pada garis rata-rata jangka panjang untuk menilai arah keseluruhan situasi.

Arah optimasi

Strategi ini dapat dioptimalkan dari beberapa arah:

  1. Meningkatkan filter kondisi untuk membuka posisi, untuk menghindari terlalu banyak transaksi yang tidak perlu dalam situasi yang bergolak. Anda dapat mengatur ambang batas untuk membuka posisi dengan indikator seperti volatilitas, volume transaksi, dan sebagainya.

  2. Menggabungkan titik-titik tinggi dan rendah di pasar, titik-titik dukungan, dan lain-lain untuk mengatur posisi stop loss dan meningkatkan akurasi stop loss;

  3. Menambahkan modul penilaian tren untuk memfilter sinyal jangka pendek dengan tren jangka panjang dalam kerangka waktu yang lebih tinggi, untuk menghindari penyimpangan dari tren besar;

  4. Parameter EMA dapat dilatih dan dioptimalkan melalui pembelajaran mesin, sehingga lebih sesuai dengan situasi pasar yang sebenarnya, mengurangi tingkat sinyal yang salah.

Beberapa poin di atas adalah arah utama di mana strategi ini dapat ditingkatkan dan dioptimalkan di masa depan. Dengan kombinasi yang tepat dari lebih banyak indikator dan alat manajemen risiko, strategi lintas-EMA ini akan menjadi lebih efektif.

Meringkaskan

Strategi perdagangan garis rata progresif adalah strategi yang mengikuti tren dasar. Ini menggunakan garis cepat EMA dan garis lambat untuk menilai tren harga, dan dikombinasikan dengan metode penghentian untuk mengendalikan risiko. Strategi ini memberi sinyal yang sederhana dan jelas, mudah dimengerti, sangat cocok untuk pemula, dan merupakan salah satu strategi yang khas untuk memulai dengan kuantitas.

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

//@version=3
// *** USE AT YOUR OWN RISK ***
// 
strategy("EMA Strategy", shorttitle = "EMA Strategy", overlay=true, pyramiding = 3,default_qty_type = strategy.percent_of_equity, default_qty_value = 10)


// === Inputs ===
// short ma
maFastSource   = input(defval = close, title = "Fast MA Source")
maFastLength   = input(defval = 13, title = "Fast MA Period", minval = 1)

// long ma
maSlowSource   = input(defval = close, title = "Slow MA Source")
maSlowLength   = input(defval = 48, title = "Slow MA Period", minval = 1)

// invert trade direction
tradeInvert = input(defval = false, title = "Invert Trade Direction?")
// risk management
useStop     = input(defval = true, title = "Use Initial Stop Loss?")
slPoints    = input(defval = 25, title = "Initial Stop Loss Points", minval = 1)
useTS       = input(defval = true, title = "Use Trailing Stop?")
tslPoints   = input(defval = 120, title = "Trail Points", minval = 1)
useTSO      = input(defval = false, title = "Use Offset For Trailing Stop?")
tslOffset   = input(defval = 20, title = "Trail Offset Points", minval = 1)

// === Vars and Series ===
fastMA = ema(maFastSource, maFastLength)
slowMA = ema(maSlowSource, maSlowLength)

plot(fastMA, color=blue)
plot(slowMA, color=purple)

goLong() => crossover(fastMA, slowMA)
killLong() => crossunder(fastMA, slowMA)
strategy.entry("Buy", strategy.long, when = goLong())
strategy.close("Buy", when = killLong())

// Shorting if using
goShort() => crossunder (fastMA, slowMA)
killShort() => crossover(fastMA, slowMA)
//strategy.entry("Sell", strategy.short, when = goShort())
//strategy.close("Sell", when = killShort())

if (useStop)
    strategy.exit("XLS", from_entry ="Buy", stop = strategy.position_avg_price / 1.08 )
    strategy.exit("XSS", from_entry ="Sell", stop = strategy.position_avg_price * 1.08)