Sistem Crossover Purata Bergerak Tiga


Tarikh penciptaan: 2023-09-28 15:33:14 Akhirnya diubah suai: 2023-09-28 15:33:14
Salin: 1 Bilangan klik: 779
1
fokus pada
1617
Pengikut

Gambaran keseluruhan

Triple Moving Average Crossover System adalah strategi dagangan saham yang khas untuk mengikuti trend. Ia menggunakan tiga persilangan purata bergerak dengan panjang masa yang berbeza sebagai isyarat membeli dan menjual. Isyarat membeli dihasilkan apabila purata bergerak jangka pendek melintasi rata-rata bergerak jangka menengah, dan rata-rata bergerak jangka menengah melintasi rata-rata bergerak jangka panjang; dan menjual apabila purata bergerak jangka pendek melintasi rata-rata bergerak jangka menengah, dan rata-rata bergerak jangka panjang melintasi rata-rata bergerak jangka panjang.

Prinsip Strategi

Strategi ini berdasarkan tiga purata bergerak: purata bergerak jangka panjang ma1, purata bergerak jangka menengah ma2 dan purata bergerak jangka pendek ma3. Pertama, mengira tiga garis ini:

length1 = input(18,'长线') 
length2 = input(9,'中线')
length3 = input(4,'短线')

ma1 := sma(close,length1) 
ma2 := sma(close,length2)
ma3 := sma(close,length3)

Di antaranya, panjang 1, panjang 2 dan panjang 3 masing-masing menentukan panjang masa tiga purata bergerak. Fungsi sma mengira purata bergerak sederhana harga dekat pada panjang yang sesuai.

Kemudian, tiga purata bergerak digunakan untuk menilai masa pembelian dan penjualan:

if ma2 > ma1 and ma3 > ma3[1] 
    strategy.entry("Long", strategy.long)

if ma2 < ma1 and ma3 < ma3[1]
    strategy.entry("Short", strategy.short) 

Apabila garis pertengahan ma2 melalui garis panjang ma1, dan garis pendek ma3 melalui satu kitaran sebelumnya, isyarat berganda dikeluarkan. Apabila garis pertengahan ma2 melalui garis panjang ma1, dan garis pendek ma3 melalui kitaran sebelumnya, isyarat kosong dikeluarkan.

Kelebihan Strategik

  • Dengan menggunakan tiga purata bergerak, perubahan trend dapat dilihat dengan lebih jelas.
  • Gabungan garis pendek dan panjang dapat menyaring kebisingan pasaran jangka pendek dan mengunci trend pada garis panjang.
  • Peraturan mudah digunakan.
  • Ia boleh disesuaikan dengan keadaan pasaran yang berbeza dengan menyesuaikan parameter tiga purata bergerak.

Risiko Strategik

  • Saya tidak tahu apa-apa tentangnya, saya tidak tahu apa-apa tentangnya, saya tidak tahu apa-apa tentangnya.
  • Terdapat beberapa isyarat palsu apabila harga saham bergoyang di sekitar purata bergerak.
  • Garis panjang akan terlepas titik peralihan trend. Garis pendek akan sering berdagang kerana bunyi bising.
  • Tidak dapat menguruskan pasaran saham dengan baik.

Risiko ini dapat dikurangkan dengan optimumkan parameter yang sesuai dan menggabungkannya dengan indikator lain sebagai syarat penapis.

Arah pengoptimuman strategi

  • Anda boleh menguji kombinasi parameter panjang yang berbeza untuk mencari parameter terbaik.
  • Stop loss boleh ditambah untuk mengawal kerugian.
  • Indeks lain seperti penilaian dan deviasi boleh ditambahkan untuk mengelakkan kesalahan penilaian. Contohnya MACD, KD dan sebagainya.
  • Anda boleh memilih strategi penangguhan yang sesuai mengikut keadaan sebenar.

ringkaskan

Triple Moving Average Cross Strategy adalah strategi trend-following yang mudah dan praktikal. Ia menilai perubahan trend pasaran berdasarkan tiga purata bergerak yang bersilang, untuk menghasilkan isyarat perdagangan. Keuntungan strategi ini adalah peraturan yang mudah, dapat mengesan trend dengan berkesan, sesuai untuk operasi garis panjang tengah.

Kod sumber strategi
/*backtest
start: 2023-08-28 00:00:00
end: 2023-09-27 00:00:00
period: 2h
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/
// © dongyun

//@version=4
strategy("三重交叉修正模式系统", overlay=true)
//strategy.risk.allow_entry_in(strategy.direction.long)
length1 = input(18,'长线')
length2 = input(9,'中线')
length3 = input(4,'短线')

ma1 =0.0
ma2 = 0.0
ma3 = 0.0

ma1 := sma(close,length1)
ma2 := sma(close,length2)
ma3 := sma(close,length3)

plot(ma1)
plot(ma2)
plot(ma3)

if ma2 > ma1 and ma3 > ma3[1]
	strategy.entry("Long", strategy.long, when=strategy.position_size <= 0)

if ma2 < ma1 and ma3 < ma3[1]
	strategy.entry("Short", strategy.short, when=strategy.position_size > 0)