Strategi perdagangan IGKEIT berbilang masa berdasarkan amplitud purata trajektori


Tarikh penciptaan: 2023-11-24 17:29:39 Akhirnya diubah suai: 2023-11-24 17:29:39
Salin: 2 Bilangan klik: 586
1
fokus pada
1617
Pengikut

Strategi perdagangan IGKEIT berbilang masa berdasarkan amplitud purata trajektori

Gambaran keseluruhan

Strategi ini dinamakan strategi perdagangan berjangkit berjangkit berdasarkan pergerakan rata-rata pergerakan. Gagasan utamanya adalah untuk membina isyarat perdagangan berdasarkan pergerakan rata-rata antara pergerakan rata-rata pergerakan dan harga dengan memperkenalkan partikel yang sesuai dengan pergerakan harga.

Prinsip Strategi

Strategi ini mula-mula menentukan partikel yang sesuai dengan orbit harga. Partikel ini dipengaruhi oleh graviti dan inersia, dan pergerakan lintasan akan berayun di sekitar harga. Kemudian, jarak rata-rata penyimpangan antara partikel dan harga dikira, dan dengan itu membina orbit ke atas dan ke bawah.

Secara khusus, formula kedudukan zarah yang ditakrifkan dalam strategi adalah:

pos:=if pos<close 
     nz(pos[1])+grav+traj  
else 
     nz(pos[1])-(grav)+traj

Di sini.gravIa mewakili titik graviti yang membawa zarah ke arah harga.trajNombor ini mewakili unsur inersia, yang membolehkan zarah-zarah itu bergerak. Kedua-dua unsur ini membolehkan zarah-zarah itu bergoyang di sekitar harga.

Dan kemudian kita mengira jarak rata-rata antara harga dan zarah.avgdistIa juga boleh digunakan untuk menjana pendapatan dan menjana pendapatan.

bbl=pos-sma(avgdist,varb) 
bbh=pos+sma(avgdist,varb)

Akhirnya, apabila harga lebih besar daripada naik, lebih banyak, dan apabila harga lebih kecil daripada turun, lebih sedikit.

Kelebihan Strategik

Strategi ini mempunyai kelebihan berbanding strategi purata bergerak tradisional:

  1. Ia juga boleh digunakan untuk memanipulasi pergerakan harga dengan lebih baik menggunakan orbit zarah.
  2. Orbit atas dan bawah boleh disesuaikan berdasarkan purata sejarah, yang membantu menangkap penembusan;
  3. Reka bentuk pelbagai bingkai masa, boleh beralih antara bingkai masa tinggi dan rendah, menangkap lebih banyak peluang perdagangan.

Risiko Strategik

Strategi ini juga mempunyai risiko:

  1. Parameter pergerakan zarah yang tidak betul boleh menyebabkan isyarat palsu atau isyarat hilang;
  2. Ia boleh menyebabkan pertembungan isyarat antara pelbagai bingkai masa.
  3. Menembusi isyarat orbit ke atas dan ke bawah mungkin meningkatkan risiko kemusnahan.

Langkah-langkah pengurusan risiko yang sesuai termasuk: optimasi parameter untuk mengurangkan isyarat palsu, menentukan peraturan masa masa yang jelas dalam jangka masa, menetapkan kedudukan hentian yang sesuai, dan sebagainya.

Arah pengoptimuman strategi

Kaedah ini boleh dioptimumkan dalam beberapa aspek:

  1. Mengoptimumkan parameter yang berkaitan dengan pergerakan zarah untuk menyesuaikan arah harga;
  2. Peningkatan bilangan lapisan dalam bingkai masa untuk mengesahkan isyarat dalam bingkai masa yang lebih tinggi;
  3. Menambah penilaian indikator kadar turun naik untuk mengelakkan memberi isyarat apabila pasaran bergolak;
  4. Mengoptimumkan strategi stop loss dan mengurangkan kerugian tunggal.

ringkaskan

Strategi ini meningkatkan strategi purata bergerak dengan cara memperkenalkan penyesuaian trajektori harga, dengan ciri-ciri seperti penyesuaian parameter, pelbagai bingkai masa, pengoptimuman berhenti. Kuncinya adalah untuk mencari persamaan pergerakan zarah yang sesuai untuk mensimulasikan harga. Walaupun masih memerlukan ujian dan pengoptimuman lanjut, idea asasnya adalah boleh dilaksanakan dan patut diteliti lebih lanjut.

Kod sumber strategi
/*backtest
start: 2022-11-17 00:00:00
end: 2023-11-23 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//2 revert
strategy("Jomy's Gyroscopic Bands",precision=8,commission_value=.03,overlay=true,initial_capital =10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100,  pyramiding=0)//,calc_on_order_fills= true, calc_on_every_tick=false) 
leverage=input(1,"leverage")
a=0
a:= if volume > -1
    nz(a[1])+1
else
    nz(a)
    
vara=input(4.0,"variable a (10 to the power of __ ",step=.5)
vara:=pow(10,vara)
varb=input(12,"variable b")
pos=0.0
pos:=if a<=5
    close
else
    nz(pos[1])
grav=1/sqrt((close*close))*vara
traj=0.0
traj:=(nz(close[1])-nz(close[2])+nz(traj[1])*varb)/(varb+1)
pos:=if pos<close
    nz(pos[1])+grav+traj
else
    nz(pos[1])-(grav)+traj

plot(pos,color=color.white)
plot(close)

avgdist=abs(close-pos)
bbl=pos-sma(avgdist,varb)
bbh=pos+sma(avgdist,varb)

plbbh=plot(bbh,color=color.red)
plbbl=plot(bbl,color=color.red)

long = close>pos
short = close<pos

fill(plbbh,plbbl,color=long?color.lime:color.red)
//bgcolor(close>bbh?color.lime:close<bbl?color.red:na,transp=90)

strategy.entry("Long1",strategy.long,when=long,qty=(strategy.equity*leverage/open)) 
strategy.close("Long1",when=not long)
strategy.entry("Short1",strategy.short,when=short,qty=(strategy.equity*leverage/open)) 
strategy.close("Short1",when=not short)


//plot(strategy.equity,color=color.lime,linewidth=4)