Strategi Aliran EMA Kemeruapan Keluaran Segera


Tarikh penciptaan: 2024-01-15 12:00:25 Akhirnya diubah suai: 2024-01-15 12:00:25
Salin: 0 Bilangan klik: 689
1
fokus pada
1617
Pengikut

Strategi Aliran EMA Kemeruapan Keluaran Segera

Gambaran keseluruhan

Strategi ini adalah strategi terobosan yang mudah, yang menggunakan perbezaan dua EMA yang berlainan dengan ketinggalan waktu sifar untuk mengesan momentum kenaikan atau penurunan objek sasaran. Apabila perbezaan melebihi beberapa kali ganda, isyarat melakukan lebih atau kurang dihasilkan, bergantung kepada arah EMA asas.

Prinsip Strategi

Strategi ini menggunakan dua jenis khas penunjuk EMA untuk mengira perbezaan kadar turun naik. Rumus untuk kedua-dua penunjuk EMA adalah:

hJumper = math.max(src,ta.ema(src,lx)) 

lJumper = math.min(src,ta.ema(src,lx))

dif = (hJumper / lJumper) - 1

Ia bertindak balas dengan serta-merta terhadap turun naik harga yang ketara, tanpa berlama-lama.

Apabila dif melebihi Brin di atas landasan, ia akan menghasilkan isyarat masuk; apabila dif di bawah Brin di tengah landasan, ia akan menghasilkan isyarat keluar. Arah EMA asas memutuskan untuk melakukan lebih banyak atau arah kosong.

Analisis kelebihan

Kelebihan terbesar strategi ini ialah menangkap isyarat penembusan dengan cepat dan tanpa kelewatan. Ini dicapai dengan mengira dua EMA berehat waktu sifar yang khusus. Ini membolehkan strategi bertindak balas dengan segera terhadap peristiwa penembusan harga, sehingga menangkap dengan lebih cekap pada awal pembentukan trend.

Kelebihan lain ialah strategi ini hanya menggunakan satu parameter lx. Kurang parameter menjadikan strategi lebih mudah disesuaikan dan mengurangkan risiko pengoptimuman berlebihan.

Analisis risiko

Risiko utama strategi ini adalah bahawa isyarat penembusan boleh menyebabkan penembusan palsu. Apabila harga bergoyang, ia mungkin menghasilkan penembusan palsu berturut-turut. Untuk mengurangkan risiko seperti itu, anda boleh meningkatkan kelipatan Brin dengan tepat untuk menjadikan isyarat lebih stabil.

Risiko lain ialah kerugian kecil yang sering berlaku dalam keadaan gegaran. Ini dapat dikurangkan dengan menyesuaikan mekanisme keluar. Contohnya menetapkan harga berhenti atau berhenti.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Bersama-sama dengan petunjuk lain, penapisan isyarat masuk ke dalam permainan untuk mengurangkan kebarangkalian penembusan palsu

  2. Meningkatkan mekanisme penangguhan kerugian dan menguruskan risiko pegangan

  3. Memperkenalkan pengesahan jumlah transaksi untuk mengelakkan banyak isyarat palsu

  4. Menggunakan parameter Brin yang beradaptasi, menyesuaikan parameter mengikut kadar turun naik pasaran

  5. Parameter strategi pengoptimuman dinamik berdasarkan kaedah pembelajaran mesin

ringkaskan

Strategi EMA turun naik segera ini menangkap momentum trend harga dengan mengira EMA yang tertunda dengan masa sifar, mempunyai kelebihan seperti tindak balas yang cepat, parameter yang mudah. Langkah seterusnya dapat dioptimumkan dari segi penapis isyarat, menghentikan stop loss, dan pengesahan jumlah perdagangan, sehingga strategi dapat beroperasi dengan stabil dalam pelbagai keadaan pasaran.

Kod sumber strategi
/*backtest
start: 2024-01-07 00:00:00
end: 2024-01-14 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © wbburgin

//@version=5
strategy("Zero-lag Volatility-Breakout EMA Trend Strategy",overlay=false)

tt1 = "If selected, the strategy will not close long or short positions until the opposite signal is received. This"+
 " exposes you to more risk but potentially could generate larger returns."

src = input.source(close,"Source")
lx = input.int(200,"EMA Difference Length")
bbmult = input.float(2.0,"Standard Deviation Multiple")
useBinaryStrategy = input.bool(true,"Use Binary Strategy",tooltip = tt1)

hJumper = math.max(src,ta.ema(src,lx))
lJumper = math.min(src,ta.ema(src,lx))

dif = (hJumper / lJumper) - 1

[bbm,bbu,bbl] = ta.bb(dif,lx,bbmult)

plot(dif,color=color.white,title="Zero lag EMA Difference")
plot(bbu,color=color.lime,title="Bollinger Top")
plot(bbl,color=color.red,title="Bollinger Bottom")
plot(bbm,color=color.yellow,title="Bollinger Middle")

sigEnter = ta.crossover(dif,bbu)
sigExit = ta.crossunder(dif,bbm)
emaBase = ta.ema(src,lx)
enterLong = sigEnter and emaBase > emaBase[1]
enterShort = sigEnter and emaBase < emaBase[1]

plotshape(enterLong,style=shape.labelup,location=location.bottom,color=color.green,size=size.tiny)
plotshape(enterShort,style=shape.labeldown,location=location.top,color=color.red,size=size.tiny)

if enterLong
    strategy.entry("Long",strategy.long)
if enterShort
    strategy.entry("Short",strategy.short)
if not useBinaryStrategy and sigExit
    strategy.close("Long")
    strategy.close("Short")