Purata pergerakan silang emas dan strategi silang mati


Tarikh penciptaan: 2023-09-21 10:47:24 Akhirnya diubah suai: 2023-09-21 10:47:24
Salin: 0 Bilangan klik: 639
1
fokus pada
1617
Pengikut

Gambaran keseluruhan

Strategi ini berdagang berdasarkan tiga rata-rata bergerak dalam bentuk garisan emas dan garisan mati. Berdagang lebih banyak apabila bergerak cepat melalui garisan sederhana dan perlahan melalui garisan sederhana; berdagang kosong apabila bergerak cepat melalui garisan sederhana di bawah rata-rata bergerak dan perlahan melalui garisan sederhana.

Prinsip Strategi

  1. Tetapkan tiga purata bergerak dengan tempoh yang berbeza: garis laju, garis laju, dan garis laju
  2. Lebih banyak apabila ia melintasi jalur laju dan jalur perlahan.
  3. Apabila garis laju melalui garis laju sederhana dan garis laju melalui garis laju perlahan, kosongkan
  4. Penangguhan kemasukan yang boleh disesuaikan, penapis penembusan palsu
  5. Apabila isyarat pembalikan dihidupkan

Khususnya, strategi ini menggunakan persilangan antara tiga purata bergerak berkala yang berbeza untuk perdagangan. Garis cepat mewakili trend jangka pendek semasa, garis menengah mewakili trend jangka menengah, dan garis perlahan mewakili trend jangka panjang. Apabila tiga garis rata pendek dan panjang berturut-turut bersilang ke atas, ini menunjukkan permulaan trend, melakukan lebih banyak; apabila bersilang ke bawah, ini menunjukkan pembalikan trend, membuat kosong.

Analisis kelebihan

  1. Menggunakan tiga garis rata untuk menilai perubahan arah trend, meningkatkan ketepatan
  2. Penundaan kemasukan boleh disaring untuk mengelakkan penembusan palsu
  3. Logik urus niaga mudah, intuitif dan mudah difahami
  4. Parameter garis purata yang boleh disesuaikan secara fleksibel untuk tempoh yang berbeza
  5. Perdagangan Berkualiti, Elakkan Risiko Perdagangan Berkualiti

Analisis risiko

  1. Dalam kitaran besar, jangka masa yang lebih lama diperlukan untuk memegang kedudukan, dan terdapat risiko peningkatan kerugian.
  2. Terdapat sedikit ketinggalan di laluan tiga baris, mungkin terlepas titik masuk yang terbaik
  3. Parameter garis rata perlu dioptimumkan, jika tidak, isyarat mungkin tidak tepat
  4. Pendapatan jangka panjang perlu mengambil kira risiko semalam

Risiko boleh diuruskan dengan cara menyesuaikan masa pegangan, mengoptimumkan parameter garis rata, memperkenalkan strategi hentikan kerugian dan sebagainya.

Arah pengoptimuman

  1. Uji parameter kitaran purata yang berbeza untuk mencari parameter optimum
  2. Menilai kelebihan dan kekurangan penundaan masuk yang berbeza dengan menyaring isyarat
  3. Memperkenalkan strategi hentian kerugian, menyesuaikan kedudukan hentian mengikut keadaan sebenar
  4. Kajian keutamaan parameter pelbagai jenis, membina sistem pengoptimuman parameter
  5. Uji tambah kemasukan semula dan peraturan penambahan untuk mengoptimumkan pegangan

ringkaskan

Strategi ini berdasarkan tiga garis rata yang bersilang menentukan arah trend untuk memegang kedudukan. Kelebihan adalah bahawa isyarat perdagangan mudah jelas dan boleh dikonfigurasi; Kelemahannya adalah mudah terlambat dan memerlukan pengoptimuman parameter.

Kod sumber strategi
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © DaynTrading

//@version=4
// strategy(
//      title="Simple Moving Average Cross",
//      overlay=true,
//      initial_capital=5000,
//      default_qty_type=strategy.percent_of_equity,
//      default_qty_value=2,
//      commission_type=strategy.commission.percent,
//      commission_value=0.075,
//      pyramiding=0
//      )

sma_top_input = input(title="SMA Top", type=input.integer, defval=20)
sma_mid_input = input(title="SMA Mid", type=input.integer, defval=50)
sma_low_input = input(title="SMA Low", type=input.integer, defval=200)

bars_long = input(title="Long: After trigger, how many bars to wait?", type=input.integer, defval=5)
bars_short = input(title="Short: After trigger, how many bars to wait?", type=input.integer, defval=5)

sma_top = sma(close, sma_top_input)
sma_mid = sma(close, sma_mid_input)
sma_low = sma(close, sma_low_input)

long = sma_top > sma_mid and sma_mid > sma_low
short = sma_top < sma_mid and sma_mid < sma_low

long_condition = long and long[bars_long] and not long[bars_long + 1]
short_condition = short and short[bars_short] and not short[bars_short + 1]

close_long = sma_top < sma_mid and sma_mid < sma_low and not long[bars_long + 1]
close_short = sma_top > sma_mid and sma_mid > sma_low and not short[bars_short + 1]

plot(sma_top, title="SMA Top", color=#95f252, linewidth=2)
plot(sma_mid, title="SMA Mid", color=#FF1493, linewidth=2)
plot(sma_low, title="SMA Low", color=#6a0dad, linewidth=2)

strategy.entry("LongPosition", strategy.long, when = long_condition)
strategy.entry("ShortPosition", strategy.short, when = short_condition)
    
strategy.close("LongPosition", when = close_short)
strategy.close("ShortPosition", when = close_long)