Strategi Tren Volatilitas EMA Breakout Instan


Tanggal Pembuatan: 2024-01-15 12:00:25 Akhirnya memodifikasi: 2024-01-15 12:00:25
menyalin: 0 Jumlah klik: 689
1
fokus pada
1617
Pengikut

Strategi Tren Volatilitas EMA Breakout Instan

Ringkasan

Strategi ini adalah strategi penembusan sederhana yang menggunakan perbedaan dua EMA yang berbeda yang tertunda dengan waktu nol untuk melacak momentum naik atau turun dari objek sasaran. Ketika perbedaan melebihi beberapa kali lipat dari pita Brin, sinyal over atau under akan dihasilkan sesuai dengan arah EMA dasar.

Prinsip Strategi

Strategi ini menggunakan dua jenis indikator EMA khusus untuk menghitung perbedaan volatilitas. Rumus untuk kedua indikator EMA adalah:

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

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

dif = (hJumper / lJumper) - 1

Indikator ini segera merespon fluktuasi harga yang besar, tanpa lag.

Dif lebih tinggi dari Brin Belt di atas rel, menghasilkan sinyal masuk; Dif lebih rendah dari Brin Belt di tengah rel, menghasilkan sinyal keluar.

Analisis Keunggulan

Keuntungan terbesar dari strategi ini adalah menangkap sinyal penembusan dengan cepat dan tanpa lag. Ini dilakukan dengan menghitung dua EMA dengan lag waktu nol khusus. Hal ini memungkinkan strategi untuk bereaksi langsung terhadap peristiwa penembusan harga, sehingga menangkap dengan efisiensi yang lebih tinggi pada awal pembentukan tren.

Keuntungan lainnya adalah bahwa strategi hanya menggunakan satu parameter lx. Dengan lebih sedikit parameter, strategi dapat lebih mudah disesuaikan dan mengurangi risiko overoptimisasi.

Analisis risiko

Risiko utama dari strategi ini adalah bahwa sinyal-sinyal penembusan dapat menimbulkan false breaks. Ketika harga bergoyang, mungkin akan terjadi penembusan-penembusan palsu secara berturut-turut. Untuk mengurangi risiko seperti itu, Anda dapat dengan tepat memperbesar kelipatan Brin untuk membuat sinyal lebih stabil.

Risiko lain adalah sering terjadi kerugian kecil dalam situasi yang bergejolak. Ini dapat diatasi dengan menyesuaikan mekanisme keluar. Misalnya, menetapkan harga stop loss atau stop loss.

Arah optimasi

Strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Kombinasi dengan indikator lain untuk memfilter sinyal masuk, mengurangi probabilitas penembusan palsu

  2. Meningkatkan mekanisme stop loss dan manajemen risiko

  3. Memperkenalkan konfirmasi volume transaksi untuk menghindari sinyal palsu yang banyak terjadi

  4. Menggunakan parameter Brin yang disesuaikan, menyesuaikan parameter sesuai dengan fluktuasi pasar

  5. Parameter strategi optimasi dinamis berdasarkan metode pembelajaran mesin

Meringkaskan

Strategi EMA volatilitas langsung ini menangkap momentum tren harga dengan menghitung EMA yang tertunda 0 jam. Strategi ini memiliki respon yang cepat, parameter yang sederhana, dan banyak lagi. Langkah selanjutnya dapat dioptimalkan dari sisi sinyal filter, stop loss, dan konfirmasi volume perdagangan, sehingga strategi dapat beroperasi secara stabil dalam berbagai lingkungan pasar.

Kode 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")