
EMA pelbagai trend penapisan dan ATR pengesanan berhenti strategi kuantitatif campuran adalah satu sistem perdagangan komprehensif yang menggabungkan beberapa elemen penting dalam analisis teknikal. Inti strategi ini adalah menggunakan purata bergerak indeks pelbagai kitaran ((EMA) sebagai penapis pengesahan trend, dan menggabungkan purata yang sebenar ((ATR) penunjuk untuk membina sistem pengesanan berhenti mengikut dinamik. Strategi ini juga mengintegrasikan fungsi penapisan masa perdagangan, yang membolehkan peniaga untuk mengoptimumkan pelaksanaan dagangan mengikut masa aktif di pasaran tertentu.
Prinsip-prinsip utama strategi ini boleh dibahagikan kepada empat komponen utama:
Pengesahan trend EMA bergandaStrategi ini menggunakan purata bergerak indeks (EMA) dari empat kitaran yang berbeza (20, 50, 100 dan 200) untuk menentukan arah trend pasaran. Ia dianggap sebagai trend naik hanya apabila harga berada di atas keempat-empat EMA pada masa yang sama; ia dianggap sebagai trend menurun hanya apabila harga berada di bawah keempat-empat EMA pada masa yang sama.
Sistem Tracking Stop Loss ATR: Strategi ini menggunakan garis berhenti pengesanan yang dinamik berdasarkan julat sebenar rata-rata (ATR). ATR adalah penunjuk yang mencerminkan turun naik pasaran dan menetapkan jarak berhenti dengan mengalikannya dengan faktor kepekaan (default 3.0). Garis berhenti pengesanan akan menyesuaikan diri secara automatik dengan perubahan harga, bergerak ke atas secara beransur-ansur apabila harga naik, dan tetap tetap apabila harga turun, untuk mengunci keuntungan dan mengehadkan kerugian.
Sinyal persilangan harga dan garis berhentiSinyal beli untuk strategi ini dihasilkan apabila harga melintasi ATR Tracking Stop Line ke atas dan memenuhi syarat trend naik; Sinyal jual dihasilkan apabila harga melintasi ATR Tracking Stop Line ke bawah dan memenuhi syarat trend turun. Mekanisme isyarat silang ini digabungkan dengan pengesahan trend membantu menangkap titik perubahan trend.
Penapisan masa transaksiStrategi memperkenalkan penapisan masa dagangan, yang ditetapkan secara lalai sebagai “0930-1600” (waktu dagangan standard AS). Penapisan ini memastikan bahawa isyarat perdagangan dihasilkan hanya dalam masa perdagangan aktif yang ditetapkan, mengelakkan risiko yang mungkin berlaku pada masa yang rendah atau bergelombang.
Pengesahan trend pelbagai peringkatDengan meminta harga berada pada sisi yang sama pada empat EMA berkala yang berbeza, strategi ini meningkatkan kebolehpercayaan pengesahan trend secara besar-besaran, menyaringkan isyarat palsu di pasaran yang bergolak, dan mengurangkan frekuensi perdagangan yang tidak perlu.
Pengurusan risiko dinamikATR Tracking Stop System dapat menyesuaikan jarak stop secara automatik mengikut turun naik pasaran yang sebenarnya, yang bermaksud bahawa harga diberi lebih banyak ruang untuk bergerak di pasaran yang lebih bergolak, sedangkan di pasaran yang lebih bergolak menggunakan stop yang lebih ketat, mewujudkan penyesuaian risiko yang dinamik.
Kustomisasi yang tinggiStrategi ini menyediakan pelbagai parameter yang boleh disesuaikan, termasuk kitaran ATR, faktor sensitiviti dan tetapan masa perdagangan, yang membolehkan peniaga menyesuaikan diri dengan baik mengikut ciri-ciri pasaran yang berbeza dan keutamaan risiko peribadi.
Optimumkan penapis masaFungsi penapisan masa perdagangan membolehkan strategi untuk memfokuskan perdagangan pada masa pasaran yang paling aktif dan likuid, mengelakkan risiko yang berpotensi pada masa sebelum dan selepas tutup atau masa likuiditi rendah yang lain.
Maklum balas visual intuitif: Strategi memaparkan garisan EMA dengan jelas di carta, mengesan garisan stop loss dan isyarat beli dan jual, dan dengan perubahan warna grafik tiang mencerminkan secara intuitif kedudukan harga semasa berbanding garisan stop loss, memudahkan pedagang memantau keadaan strategi secara langsung.
Penundaan perubahan trendFilter EMA berganda, walaupun meningkatkan kebolehpercayaan isyarat, juga memperkenalkan kelewatan yang boleh menyebabkan kehilangan sebahagian daripada potensi keuntungan pada awal trend, atau keluar terlalu lewat pada akhir trend. Ini adalah keseimbangan yang diperlukan antara kebolehpercayaan dan ketepatan masa.
Perkembangan pasaran yang kurang baikDalam pasaran yang tidak mempunyai trend yang jelas, strategi mungkin sukar untuk memenuhi semua syarat penapisan EMA, menyebabkan kehilangan peluang perdagangan yang berpotensi atau menghasilkan terlalu banyak isyarat palsu kerana harga sering melintasi beberapa EMA.
Kepekaan ParameterPrestasi strategi sangat bergantung kepada tetapan parameter utama seperti faktor sensitiviti ATR, kitaran ATR. Parameter yang tidak sesuai boleh menyebabkan stop loss terlalu ketat (terlalu kerap dicetuskan) atau terlalu longgar (terlalu banyak kehilangan). Ia disyorkan untuk mengoptimumkan parameter ini dengan mengkaji semula dalam keadaan pasaran yang berbeza.
Risiko Kejadian Tiba-tibaATR mungkin tidak dapat bertindak balas tepat pada masanya dalam keadaan harga melonjak tinggi atau turun naik yang disebabkan oleh berita besar atau peristiwa Black Swan, menyebabkan kerugian sebenar melebihi jangkaan. Disarankan untuk bekerja sama dengan penggunaan batasan kerugian keras untuk risiko maksimum.
Risiko perdagangan berlebihanWalaupun terdapat pelbagai lapisan penapisan, dalam pasaran yang bergelombang tinggi, harga yang sering bercampur dengan ATR yang mengesan garis hentian boleh menyebabkan terlalu banyak perdagangan, meningkatkan kos perdagangan. Perlu dipertimbangkan untuk meningkatkan keperluan masa pegangan minimum untuk mengurangkan masalah ini.
Meningkatkan penunjuk kekuatan trendStrategi semasa hanya bergantung pada kedudukan harga berbanding pelbagai EMA untuk menilai trend, dan boleh mempertimbangkan untuk menambah indikator kekuatan trend seperti ADX (Indeks Arah Rata-rata), menetapkan nilai terendah kekuatan trend, dan terus menyaring isyarat dalam persekitaran trend yang lemah.
Memperkenalkan pengesahan jumlah transaksiAnalisis kuantiti dagangan dimasukkan ke dalam logik penjanaan isyarat, meminta isyarat beli dan jual disertakan dengan pengesahan kuantiti dagangan yang mencukupi, membantu meningkatkan kebolehpercayaan isyarat. Sebagai contoh, boleh meminta jumlah dagangan pada masa penjanaan isyarat lebih tinggi daripada purata jumlah dagangan pada N kitaran terakhir.
Mekanisme penyesuaian optimum parameter henti rugiStrategi semasa menggunakan faktor sensitiviti ATR tetap, mekanisme penyesuaian parameter penyesuaian yang sesuai berdasarkan kadar turun naik sejarah atau keadaan pasaran boleh dipertimbangkan. Sebagai contoh, faktor sensitiviti meningkat secara automatik dalam pasaran yang bergelombang tinggi dan mengurangkan faktor sensitiviti dalam pasaran yang bergelombang rendah.
Menambah sasaran keuntungan dan penapis ganjaran risiko: Menambah mekanisme penapisan isyarat berdasarkan sasaran keuntungan yang dijangkakan dan nisbah ganjaran risiko, hanya menjalankan perdagangan yang melebihi nisbah ganjaran risiko yang dijangkakan. Ini membantu mengoptimumkan kecekapan penggunaan dana, memberi tumpuan kepada peluang perdagangan berkualiti tinggi.
Klasifikasi keadaan pasaran dan pertukaran strategi: Membuat mekanisme pengenalan automatik keadaan pasaran ((kecenderungan / getaran) dan menyesuaikan parameter strategi atau menukar logik strategi yang berbeza mengikut keadaan pasaran yang berbeza. Sebagai contoh, menggunakan strategi semasa dalam pasaran yang jelas dan beralih ke strategi pulangan nilai rata-rata dalam pasaran yang bergolak.
Menyambung penapis asasUntuk kelas aset tertentu, pertimbangkan untuk mengintegrasikan indikator asas atau penapis peristiwa yang berkaitan untuk mengelakkan perdagangan sebelum dan selepas data ekonomi penting atau peristiwa ketidakpastian tinggi yang lain.
EMA pelbagai trend penapisan dan ATR pengesanan henti strategi kuantitatif campuran adalah satu sistem perdagangan yang lengkap yang menggabungkan trend pengesanan dan pengurusan risiko kelebihan. Dengan menggabungkan pelbagai mekanisme seperti pengesahan trend EMA pelbagai tempoh, ATR dinamik pengesanan henti, harga crossover isyarat dan penapisan masa perdagangan, strategi ini memberikan keupayaan kawalan risiko yang baik sambil menangkap trend jangka panjang dan jangka panjang.
Kelebihan utama strategi ini adalah bahawa pengesahan trend berlapis meningkatkan kebolehpercayaan isyarat, manakala ATR menjejaki stop loss menyediakan pengurusan risiko dinamik yang menyesuaikan diri dengan turun naik pasaran. Walau bagaimanapun, strategi ini juga mempunyai risiko yang berpotensi seperti kelewatan peralihan trend, prestasi pasaran yang kurang baik di seberang dan kepekaan parameter.
Terdapat ruang untuk meningkatkan lagi strategi ini dengan menambah langkah-langkah pengoptimuman seperti indikator kekuatan trend, pengesahan jumlah perdagangan, mekanisme parameter penyesuaian diri. Yang paling penting, peniaga harus menyesuaikan parameter utama berdasarkan jenis perdagangan dan keadaan pasaran tertentu dengan pengesanan yang mencukupi, dan mempertimbangkan untuk menggunakan strategi ini sebagai sebahagian daripada sistem perdagangan yang lebih besar, dan digunakan bersama dengan kombinasi strategi pelengkap lain untuk mencapai kesan terbaik.
/*backtest
start: 2025-07-17 00:00:00
end: 2025-07-24 00:00:00
period: 5m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"SOL_USDT"}]
*/
//@version=5
//Credits to HPotter who is the creator of the original code.
//Created as a strategy with an added EMA Trend Filter by shannonnhxrk
//Added a time button so you can adjust what times it signals.
//@version=5
strategy("UT Bot Strategy with EMA Trend Filter", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// === INPUTS ===
src = close
keyvalue = input.float(3.0, title="Key Value (Sensitivity)", step=0.5)
atrperiod = input.int(10, title="ATR Period")
xATR = ta.atr(atrperiod)
nLoss = keyvalue * xATR
// === EMAs ===
ema20 = ta.ema(src, 20)
ema50 = ta.ema(src, 50)
ema100 = ta.ema(src, 100)
ema200 = ta.ema(src, 200)
plot(ema20, color=color.orange, title="EMA 20")
plot(ema50, color=color.blue, title="EMA 50")
plot(ema100, color=color.purple, title="EMA 100")
plot(ema200, color=color.black, title="EMA 200")
// === Trend Filters ===
isUptrend = close > ema20 and close > ema50 and close > ema100 and close > ema200
isDowntrend = close < ema20 and close < ema50 and close < ema100 and close < ema200
// === ATR Trailing Stop ===
var float xATRTrailingStop = na
xATRTrailingStop := src > nz(xATRTrailingStop[1], 0) and src[1] > nz(xATRTrailingStop[1]) ? math.max(nz(xATRTrailingStop[1]), src - nLoss) :
src < nz(xATRTrailingStop[1]) and src[1] < nz(xATRTrailingStop[1]) ? math.min(nz(xATRTrailingStop[1]), src + nLoss) :
src > nz(xATRTrailingStop[1]) ? src - nLoss : src + nLoss
// === Time Filter ===
// === Buy/Sell Conditions with Time Filter ===
buy = ta.crossover(src, xATRTrailingStop) and isUptrend
sell = ta.crossunder(src, xATRTrailingStop) and isDowntrend
// === Strategy Execution ===
if buy
strategy.close("Short")
strategy.entry("Long", strategy.long)
if sell
strategy.close("Long")
strategy.entry("Short", strategy.short)
// === Visuals ===
plotshape(buy, title="Buy", style=shape.labelup, location=location.belowbar, color=color.green, text="Buy", textcolor=color.white, size=size.tiny)
plotshape(sell, title="Sell", style=shape.labeldown, location=location.abovebar, color=color.red, text="Sell", textcolor=color.white, size=size.tiny)
plot(xATRTrailingStop, color=buy ? color.green : sell ? color.red : color.gray, title="Trailing Stop")
barcolor(src > xATRTrailingStop ? color.green : color.red)