Aliran berbilang tempoh masa berikutan strategi scalping intraday


Tarikh penciptaan: 2023-11-16 17:47:06 Akhirnya diubah suai: 2023-11-16 17:47:06
Salin: 1 Bilangan klik: 768
1
fokus pada
1617
Pengikut

Aliran berbilang tempoh masa berikutan strategi scalping intraday

Gambaran keseluruhan

Strategi ini menggunakan penunjuk purata bergerak yang digabungkan dengan pelbagai bingkai masa untuk menilai kesesuaian trend antara pelbagai bingkai masa, mengambil strategi operasi scalping dalam sehari, mengejar trend untuk mendapatkan keuntungan.

Prinsip Strategi

Strategi ini membina isyarat dagangan menggunakan purata bergerak 8 dan 20 tempoh dalam empat bingkai masa 5 minit, 15 minit, 30 minit dan 60 minit. Isyarat beli dihasilkan apabila purata bergerak 20 hari di atas purata bergerak 8 hari yang lebih pendek; isyarat jual dihasilkan apabila purata bergerak 20 hari di bawah purata bergerak 8 hari.

Strategi ini memerlukan isyarat dagangan dalam jangka masa 5 minit, 15 minit, 30 minit dan 60 minit untuk mengeluarkan arahan dagangan. Iaitu, hanya apabila purata bergerak dalam keempat-empat jangka masa ini sesuai dengan isyarat membeli atau menjual isyarat, operasi membeli atau menjual akan dilakukan.

Selepas memasuki kedudukan, strategi akan menetapkan pesanan berhenti dengan kedudukan kelebihan mata wang tetap, untuk melakukan operasi scalping dalam sehari.

Khususnya, strategi memperoleh data purata bergerak dalam pelbagai bingkai masa dengan memanggil fungsi keselamatan. Mengira perbezaan purata 8 hari dan 20 hari untuk 5 minit, 15 minit, 30 minit dan 60 minit, dan melukis keluk perbezaan.

Menentukan islong dan isshort untuk merekodkan isyarat dagangan dalam setiap bingkai masa. Akhirnya, arahan masuk dan keluar dikeluarkan apabila keadaan islong dan isshort memenuhi keperluan.

Selepas masuk, strategi menetapkan titik-titik berhenti tetap melalui fungsi strategi.exit, untuk melaksanakan operasi scalping.

Analisis kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Reka bentuk bingkai masa berbilang, dengan penilaian komprehensif dari pelbagai indikator kitaran, dapat menyaring penipuan dengan berkesan dan mengurangkan frekuensi perdagangan.

  2. Strategi scalping dalam sehari, pengoptimuman keuntungan, dapat memperoleh keuntungan kecil yang berterusan.

  3. Struktur kod jelas, setiap bahagian berfungsi dengan jelas, mudah difahami dan dioptimumkan.

  4. Syarat yang ditetapkan adalah munasabah dan berkesan untuk mengawal risiko perdagangan.

Analisis risiko

Strategi ini juga mempunyai risiko:

  1. Walaupun reka bentuk bingkai masa berbilang boleh menapis sebahagian daripada kebisingan, ia juga boleh terlepas beberapa butiran yang menyebabkan perubahan trend yang tidak jelas.

  2. Scalping dalam sehari membawa kepada perdagangan yang kerap dan perlu dipertimbangkan untuk mengawal kos transaksi.

  3. Tetapan titik penangguhan tetap tidak cukup fleksibel dan tidak dapat disesuaikan dengan perubahan pasaran.

  4. Ia juga boleh menjadi satu petanda bahawa anda tidak boleh bergantung kepada indikator untuk menghasilkan isyarat perdagangan.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Menambah lebih banyak penghakiman penunjuk pada jangka masa yang berbeza untuk menjadikan isyarat lebih stabil dan dipercayai.

  2. Mengoptimumkan strategi penangguhan, menetapkan titik penangguhan berdasarkan dinamik ATR.

  3. Tambah syarat tambahan untuk menyaring masa masuk, seperti peningkatan jumlah transaksi, penembusan paras tertinggi sepanjang masa dan sebagainya.

  4. Mengoptimumkan parameter kitaran rata-rata bergerak, mencari kombinasi parameter terbaik.

  5. Menambah model pembelajaran mesin untuk menilai kebolehpercayaan isyarat penunjuk dan mengelakkan penipuan.

ringkaskan

Strategi ini secara keseluruhannya adalah strategi pengesanan trend pelbagai kerangka masa yang tipikal, mengambil keuntungan dengan cara scalping dalam sehari. Strategi ini jelas, struktur kodnya munasabah, layak untuk diuji dan dioptimumkan. Dengan penyesuaian pengoptimuman tertentu, strategi ini boleh menjadi templat strategi scalping dalam sehari yang sangat praktikal.

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

//@version=2
strategy(title="PeBAS $JPY Scalper 15m ",overlay=true) 
zeigeallebars= input(false, title="Zeige alle (Show all) Candles/Bars?")
profitwert=input(52, title="Profit")
myatr=  input(title="ATR", type=float, defval=0.00002, minval=0.00001,step=0.00001)


//Plot  EMA-Differenz Aktueller Timeframe

dif=(ema(close,8)+ema(close,20))/2
mcolor=ema(close,8) > ema(close,20) ? green : red
bs = ema(close,8) > ema(close,20) ? true : false
ThisATR=atr(16)

//trans = zeigeallebars == true ? 00 : 100
//plot(dif,"dif",color=mcolor,linewidth=6,transp=trans)


//1M EMA
htf_ma1Mema8 = ema(close, 5)
htf_ma1Mema20 = ema(close, 20)
ema81m=request.security(syminfo.tickerid, "1", htf_ma1Mema8)
ema201m=request.security(syminfo.tickerid, "1", htf_ma1Mema20)
dif1M = (ema81m + ema201m) / 2
Close1M = request.security(syminfo.tickerid, "1", close)
color1=ema81m > ema201m ? green : red
//plot(dif1M,"dif",color1,linewidth=6)
//plotshape(1, style=shape.cross, color=color1,location=location.top)
ls1 = ema81m > ema201m ? 1 : 0



//5M EMA

htf_ma5Mema8 = ema(close, 8)
htf_ma5Mema20 = ema(close, 20)
ema85m=request.security(syminfo.tickerid, "5", htf_ma5Mema8)
ema205m=request.security(syminfo.tickerid, "5", htf_ma5Mema20)
dif5M = (ema85m + ema205m) / 2
 
color5=ema85m > ema205m ? green : red
plot(dif5M,"dif",color5,linewidth=5)
ls5 = ema85m > ema205m ? 1 : 0
alert1= ema85m > ema205m and ema85m[1] < ema205m[1] ? 1 : 0
islong5 = ema85m > ema205m ? 1 : 0
isshort5 = ema85m < ema205m ? 1 : 0

//15M EMA

htf_ma15Mema8 = ema(close, 8)
htf_ma15Mema20 = ema(close, 20)
ema815m=request.security(syminfo.tickerid, "15", htf_ma15Mema8)
ema2015m=request.security(syminfo.tickerid, "15", htf_ma15Mema20)
dif15M = (ema815m + ema2015m) / 2
 
color15=ema815m > ema2015m ? green : red
plot(dif15M,"dif",color15,linewidth=3)
ls15= ema815m > ema2015m ? 1 : 0
alert2= ema815m > ema2015m and ema815m[1] < ema2015m[1] ? 1 : 0
islong15 = ema815m > ema2015m ? 1 : 0
isshort15 = ema815m < ema2015m ? 1 : 0





//30M EMA
htf_ma30Mema8 = ema(close, 8)
htf_ma30Mema20 = ema(close, 20)
ema830m=request.security(syminfo.tickerid, "30", htf_ma30Mema8)
ema2030m=request.security(syminfo.tickerid, "30", htf_ma30Mema20)
dif30M = (ema830m + ema2030m) / 2
 
color30=ema830m > ema2030m ? green : red
ls30= ema830m > ema2030m ?1 : 0
islong30 = ema830m > ema2030m ? 1 : 0
isshort30 = ema830m < ema2030m ? 1 : 0



//60M EMA

htf_ma60Mema8 = ema(close, 8)
htf_ma60Mema20 = ema(close, 20)
ema860m=request.security(syminfo.tickerid, "60", htf_ma60Mema8)
ema2060m=request.security(syminfo.tickerid, "60", htf_ma60Mema20)
dif60M = (ema860m + ema2060m) / 2
 
color60=ema860m > ema2060m ? green : red
ls60= ema860m > ema2060m ?1 : 0

islong60 = ema860m > ema2060m ? 1 : 0
isshort60 = ema860m < ema2060m ? 1 : 0

plot(dif60M,"dif",color60,linewidth=3,transp=70)

islong = islong5 ==1 and islong15 ==1 and islong60 ==1 and year > 2017 ? 1 : 0
isshort = isshort5 ==1 and isshort15 ==1 and  isshort60 ==1 and year > 2017 ? 1 : 0


condition2l= 0 
condition2s = 0

c= alert1 == alert2  and alert1[1] != alert2[1] ? 1 : 0
alertcondition(c, title='Da tat sich was ', message='Da tat sich was!')

strategy.entry("enter long", strategy.long,1,when = islong ==1 and islong[1] == 0  ) 
strategy.entry("enter short", strategy.short,1,when = isshort == 1  and isshort [1] == 0) 
strategy.exit("close",profit=profitwert)
strategy.exit("close",profit=profitwert)