Strategi Perdagangan Purata Pergerakan Nisbah Emas


Tarikh penciptaan: 2024-01-05 14:21:52 Akhirnya diubah suai: 2024-01-05 14:21:52
Salin: 0 Bilangan klik: 884
1
fokus pada
1617
Pengikut

Strategi Perdagangan Purata Pergerakan Nisbah Emas

Gambaran keseluruhan

Strategi perdagangan purata bergerak pecahan emas adalah strategi perdagangan kuantitatif yang cuba menggunakan persilangan emas dengan purata bergerak jangka panjang sebagai isyarat perdagangan. Strategi ini digabungkan dengan indikator RSI untuk mengelakkan kedudukan di kedudukan tinggi tempatan untuk mengawal risiko.

Prinsip Strategi

Strategi ini berdasarkan kepada dua rata-rata bergerak: garis 200 hari sebagai rata-rata jangka panjang, garis 10 hari sebagai rata-rata jangka pendek. Ia menghasilkan isyarat beli apabila garis rata-rata jangka pendek melintasi garis rata-rata jangka panjang; ia menghasilkan isyarat jual apabila garis rata-rata jangka pendek melintasi garis rata-rata jangka panjang.

Secara khusus, untuk membuka kedudukan berganda, syarat-syarat berikut perlu dipenuhi:

  1. Garis purata 10 hari pada garis purata 200 hari
  2. Tiada pegangan semasa
  3. RSI kurang daripada 30

Syarat-syarat setaraf adalah seperti berikut:

  1. Hentikan kerugian: Hentikan kerugian apabila harga jatuh dan harga saham dibuka pada peratusan tertentu (boleh diset)
  2. Hentikan: Hentikan apabila harga melebihi peratusan tertentu (boleh diatur)

Analisis kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Menerapkan isyarat silang emas pada purata bergerak, isyarat perdagangan indikator teknikal klasik dan berkesan
  2. Dengan RSI, anda boleh mengawal risiko dengan mengelakkan membeli pada titik tinggi.
  3. Ia mempunyai tetapan stop loss dan stop loss untuk mengunci keuntungan dan mengelakkan risiko.

Analisis risiko

Strategi ini mempunyai beberapa risiko:

  1. Strategi purata bergerak mudah menghasilkan isyarat yang salah dan pusing
  2. RSI akan gagal dalam beberapa keadaan yang kuat
  3. Tetapan stop loss yang terlalu kecil boleh menyebabkan perdagangan yang terlalu pendek dan sering berhenti

Untuk mengurangkan risiko ini, langkah-langkah pengoptimuman berikut boleh dipertimbangkan:

  1. Menyesuaikan parameter garis purata, atau menambah lebih banyak garis purata
  2. Menyokong RSI bersama-sama dengan petunjuk lain
  3. Sesuaikan parameter henti rugi

Arah pengoptimuman

Strategi ini masih boleh dioptimumkan lagi:

  1. Tambah lebih banyak penapis indikator untuk mengelakkan isyarat yang salah
  2. Optimumkan parameter purata bergerak
  3. Tetapan Hentian Dinamik Bersama Indeks Fluktuasi
  4. Menambah model pembelajaran mesin untuk menilai keadaan pasaran
  5. Parameter pengoptimuman automatik menggunakan algoritma

ringkaskan

Strategi perdagangan rata-rata bergerak perpecahan emas secara keseluruhan adalah strategi pengesanan trend yang mudah dan berkesan. Ia menggunakan isyarat silang linear klasik untuk menghasilkan peluang perdagangan, dan mempunyai stop loss untuk mengawal risiko. Strategi ini dapat diperbaiki lagi dengan kombinasi pelbagai indikator, pengoptimuman parameter, dan pembelajaran mesin, sehingga menghasilkan kesan strategi yang lebih baik.

Kod sumber strategi
/*backtest
start: 2022-12-29 00:00:00
end: 2024-01-04 00:00:00
period: 1d
basePeriod: 1h
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/
// © tsujimoto0403

//@version=5
strategy("聖杯", overlay=true,default_qty_type=strategy.percent_of_equity,
     default_qty_value=100)

//ユーザーインプットの準備
malongperiod=input.int(200,"長期移動平均BASE200",group = "パラメータ")
mashortperiod=input.int(10,"長期移動平均BASE10",group = "パラメータ")
stop=input.int(20,title = "損切の割合%",group = "パラメータ")
profit=input.int(5,title = "利食いの割合%",group = "パラメータ")
startday=input(title="バックテストを始める日", defval=timestamp("01 Jan 2018 13:30 +0000"), group="期間")
endday=input(title="バックテスを終わる日", defval=timestamp("1 Jan 2099 19:30 +0000"), group="期間")

//使う変数
var float stopprice=0
var float takeprofit=0

//とりあえず使うインジケーターをプロット
malong=ta.sma(close,malongperiod)
mashort=ta.sma(close,mashortperiod)


plot(malong,color=color.aqua,linewidth = 2)
plot(mashort,color=color.yellow,linewidth = 2)
bgcolor(ta.rsi(close,3)<30?color.rgb(229, 86, 86, 48):na)

//期間条件
datefilter = true

//エントリー条件
if close>malong and close<mashort and strategy.position_size == 0 and datefilter and ta.rsi(close,3)<30
    strategy.entry(id="long", direction=strategy.long)

if strategy.position_size>0 
    strategy.exit(id="long",stop=(1-0.01*stop)*strategy.position_avg_price)

//売り
if  strategy.position_size > 0 and close>mashort and close<low[1] 
    strategy.close(id ="long")