Kuantitatif Master Eksklusif Berbilang Tahap Moving Average Strategi Crossover


Tarikh penciptaan: 2024-01-12 12:11:02 Akhirnya diubah suai: 2024-01-12 12:11:02
Salin: 4 Bilangan klik: 565
1
fokus pada
1617
Pengikut

Kuantitatif Master Eksklusif Berbilang Tahap Moving Average Strategi Crossover

Gambaran keseluruhan

Strategi ini menggunakan prinsip persilangan rata-rata bergerak bertingkat, menangkap trend garis tengah dan panjang, dan mencapai keuntungan yang stabil. Strategi ini menggunakan tiga kumpulan rata-rata bergerak cepat, sederhana, dan perlahan dengan parameter yang berbeza, membuat keputusan perdagangan berdasarkan keadaan persilangan mereka. Strategi persilangan rata-rata bergerak bertingkat ini, berbanding dengan strategi tradisional yang hanya mempunyai dua kumpulan rata-rata bergerak, dapat menyaring lebih banyak isyarat palsu dan meningkatkan peluang kemenangan strategi.

Prinsip Strategi

Strategi ini menggunakan tiga kumpulan purata bergerak: purata bergerak cepat MAshort, purata bergerak sederhana MAmid, dan purata bergerak perlahan MAlong. Di antaranya, parameter MAshort adalah 9, bertindak balas paling cepat, untuk menangkap isyarat garis pendek; parameter MAmid adalah 50, pantas, untuk mengesahkan trend; dan parameter MAlong adalah 100, bertindak balas paling lambat, untuk menentukan arah trend garis panjang.

Logik dagangan khusus strategi adalah: apabila rata-rata bergerak laju sederhana di atas MAmid melintasi rata-rata bergerak perlahan MAlong, menunjukkan bahawa momentum kenaikan harga saham sedang terbentuk, maka strategi melakukan lebih banyak; apabila rata-rata bergerak cepat di bawah MAshort melintasi rata-rata bergerak laju sederhana di bawah MAmid, menunjukkan bahawa trend garis pendek bertukar, strategi ini berhampiran.

Kelebihan utama strategi ini adalah bahawa ia dapat memfilterkan isyarat palsu dengan berkesan melalui gabungan pelbagai kumpulan purata bergerak, hanya dengan memilih satu terobosan yang lebih kuat dalam trend kenaikan garis tengah dan panjang untuk membuat lebih banyak kedudukan.

Analisis kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Parameter strategi yang dioptimumkan untuk sepadan dengan trend garis tengah dan panjang dengan kadar kemenangan yang lebih tinggi
  2. Reka bentuk purata bergerak pelbagai peringkat dapat menapis bunyi bising dan isyarat palsu
  3. Sesuai untuk pelbagai jenis saham dan mata wang digital, dengan kesan pengesanan sejarah yang lebih baik
  4. Frekuensi operasi rendah, 30% daripada modal setiap kali gudang dibina, risiko boleh dikawal
  5. Tempoh masa yang boleh dikonfigurasi, fleksibiliti yang tinggi pada cakera tetap

Analisis risiko

Strategi ini juga mempunyai risiko:

  1. Kebarangkalian bahawa trend garis panjang akan bertukar secara tiba-tiba adalah lebih kecil, tetapi apabila ia berlaku, kemungkinan besar untuk menghentikan kerugian
  2. Frekuensi transaksi yang rendah dan tahap penggunaan dana yang rendah
  3. Parameter strategi perlu dioptimumkan mengikut jenis perdagangan yang berbeza dan mungkin terhad.

Untuk menghadapi risiko di atas, kami akan meluaskan lagi kelayakan strategi kami, digabungkan dengan kawalan kawalan teknologi hentian untuk penarikan maksimum. Apabila trend garis panjang tengah bertukar, kami akan bertindak balas dengan cara menurunkan kedudukan.

Arah pengoptimuman

Strategi ini juga boleh dioptimumkan dengan:

  1. Mengoptimumkan parameter harian untuk purata bergerak untuk mencari kombinasi parameter yang lebih baik
  2. Memastikan penambahbaikan dalam penukaran untuk mengelakkan kesesuaian kurva
  3. Tetapkan nilai kerugian maksimum untuk strategi, seperti maksimum pulangan balik 20%, penangguhan paksa
  4. Meningkatkan model pembelajaran mesin untuk menilai trend dan meningkatkan daya serap strategi

ringkaskan

Strategi ini merupakan strategi kuantitatif garis tengah yang tipikal, dengan berlainan peringkat rata-rata bergerak yang sepadan dengan WebDriverWait== trend jangka panjang, untuk mengawal risiko perdagangan, keuntungan yang berterusan. Strategi ini menggabungkan pelbagai set parameter, berbanding dengan satu petunjuk, yang dapat mengenal pasti isyarat trend garis tengah yang kuat. Dengan pengoptimuman lanjut, strategi ini boleh digunakan untuk lebih banyak jenis, memainkan peranan penting dalam bidang perdagangan kuantitatif.

Kod 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)