Strategi Crossover Rata-rata Bergerak Multi-Level Eksklusif Master Kuantitatif


Tanggal Pembuatan: 2024-01-12 12:11:02 Akhirnya memodifikasi: 2024-01-12 12:11:02
menyalin: 4 Jumlah klik: 565
1
fokus pada
1617
Pengikut

Strategi Crossover Rata-rata Bergerak Multi-Level Eksklusif Master Kuantitatif

Ringkasan

Strategi ini menggunakan prinsip persilangan multi-level moving average untuk menangkap tren garis tengah dan panjang dan menghasilkan keuntungan yang stabil. Strategi ini menggunakan tiga kelompok moving average cepat, menengah, dan lambat dengan parameter yang berbeda untuk membuat keputusan perdagangan berdasarkan persimpangan mereka. Strategi persimpangan multi-level moving average ini, dibandingkan dengan strategi tradisional yang hanya memiliki dua kelompok moving average, dapat menyaring lebih banyak sinyal palsu dan meningkatkan peluang strategi.

Prinsip Strategi

Strategi ini menggunakan tiga kelompok rata-rata bergerak: rata-rata bergerak cepat MAshort, rata-rata bergerak cepat MAmid, dan rata-rata bergerak lambat MAlong. Di antaranya, parameter MAshort adalah 9, yang paling cepat bereaksi, untuk menangkap sinyal garis pendek; parameter MAmid adalah 50, kecepatan sedang, untuk mengkonfirmasi tren; dan parameter MAlong adalah 100, yang paling lambat bereaksi, untuk menentukan arah tren garis panjang.

Logika perdagangan spesifik dari strategi ini adalah: ketika rata-rata bergerak cepat MAmid melintasi rata-rata bergerak lambat MAlong, menunjukkan bahwa momentum kenaikan harga saham sedang terbentuk, maka strategi melakukan lebih banyak; ketika rata-rata bergerak cepat MAshort melintasi rata-rata bergerak cepat MAmid, menunjukkan bahwa tren garis pendek berbalik, strategi saat ini bernegosiasi.

Keuntungan terbesar dari strategi ini adalah bahwa melalui pencocokan kombinasi dari beberapa kelompok rata-rata bergerak, sinyal palsu dapat disaring secara efektif, hanya memilih yang lebih kuat dari tren naik di garis tengah dan panjang untuk membangun lebih banyak posisi.

Analisis Keunggulan

Strategi ini memiliki keuntungan sebagai berikut:

  1. Parameter strategi yang dioptimalkan, dapat secara efektif mencocokkan tren garis panjang tengah, tingkat kemenangan yang lebih tinggi
  2. Desain moving average multi-level dapat memfilter kebisingan dan sinyal palsu
  3. Berlaku untuk berbagai jenis saham dan mata uang digital, lebih baik untuk retrospeksi sejarah
  4. Operasi frekuensi rendah, setiap gudang dibangun menggunakan 30% dari modal, risiko dapat dikontrol
  5. Periode waktu yang dapat dikonfigurasi, fleksibilitas hard disk yang tinggi

Analisis risiko

Strategi ini juga memiliki risiko sebagai berikut:

  1. Tren garis panjang memiliki probabilitas yang lebih kecil untuk tiba-tiba berbalik, tetapi jika terjadi, stop loss mungkin lebih besar
  2. Frekuensi transaksi yang rendah, ada beberapa masalah penggunaan dana yang rendah
  3. Parameter strategi perlu dioptimalkan sesuai dengan varietas perdagangan yang berbeda, dan kemungkinan berlaku terbatas

Untuk menghadapi risiko di atas, kami akan memperluas jangkauan strategi kami lebih lanjut, dengan pengurangan maksimum dari kontrol stop loss. Kami akan menanggapi dengan mengurangi posisi ketika tren garis tengah berbalik.

Arah optimasi

Strategi ini juga dapat dioptimalkan dalam beberapa hal:

  1. Mengoptimalkan parameter harian dari moving average untuk mencari kombinasi parameter yang lebih baik
  2. Meningkatkan indikator volume transaksi untuk mengkonfirmasi, menghindari masalah kesesuaian kurva
  3. Menetapkan nilai kerugian maksimum dari strategi, seperti 20% penarikan maksimum, dan stop loss wajib
  4. Meningkatkan kemampuan model pembelajaran mesin untuk menilai tren dan meningkatkan kemampuan adaptasi strategi

Meringkaskan

Strategi ini merupakan strategi kuantitatif garis panjang menengah yang khas, dengan pencocokan WebDriverWait==long term trend dengan rata-rata bergerak multi-level, untuk mengendalikan risiko perdagangan. Strategi ini menggabungkan beberapa set parameter, dibandingkan dengan satu indikator, yang dapat secara efektif mengidentifikasi sinyal tren garis panjang menengah yang kuat. Dengan pengoptimalan lebih lanjut, strategi ini dapat diterapkan pada lebih banyak varietas, memainkan peran penting dalam bidang perdagangan kuantitatif.

Kode Sumber Strategi
/*backtest
start: 2023-12-12 00:00:00
end: 2024-01-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule

//@version=4
strategy(shorttitle='Multi Moving Average Crossing',title='Multi Moving Average Crossing (by Coinrule)', overlay=true, initial_capital=1000,  default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1)

//Backtest dates
fromMonth = input(defval = 1,    title = "From Month",      type = input.integer, minval = 1, maxval = 12)
fromDay   = input(defval = 1,    title = "From Day",        type = input.integer, minval = 1, maxval = 31)
fromYear  = input(defval = 2020, title = "From Year",       type = input.integer, minval = 1970)
thruMonth = input(defval = 1,    title = "Thru Month",      type = input.integer, minval = 1, maxval = 12)
thruDay   = input(defval = 1,    title = "Thru Day",        type = input.integer, minval = 1, maxval = 31)
thruYear  = input(defval = 2112, title = "Thru Year",       type = input.integer, minval = 1970)

showDate  = input(defval = true, title = "Show Date Range", type = input.bool)

start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)        // backtest start window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)        // backtest finish window
window()  => true       // create function "within window of time"

//MA inputs and calculations
inlong=input(100, title='MAlong')
inmid=input(50, title='MAmid')
inshort=input(9, title='MAfast')

MAlong = sma(close, inlong)
MAshort= sma(close, inshort)
MAmid= sma(close, inmid)


//Entry 
bullish = crossover(MAmid, MAlong)

strategy.entry(id="long", long = true, when = bullish and window())

//Exit
bearish = crossunder(MAshort, MAmid)

strategy.close("long", when = bearish and window())

plot(MAshort, color=color.orange, linewidth=2)
plot(MAmid, color=color.red, linewidth=2)
plot(MAlong, color=color.blue, linewidth=2)