Strategi kuantitatif hibrida penyaringan tren ganda EMA dan stop loss trailing ATR

ATR EMA 趋势过滤器 追踪止损 交易时段过滤 多重移动平均线 波动率指标 交叉信号
Tanggal Pembuatan: 2025-07-25 14:24:39 Akhirnya memodifikasi: 2025-07-25 14:24:39
menyalin: 0 Jumlah klik: 273
2
fokus pada
319
Pengikut

Strategi kuantitatif hibrida penyaringan tren ganda EMA dan stop loss trailing ATR Strategi kuantitatif hibrida penyaringan tren ganda EMA dan stop loss trailing ATR

Ringkasan

Strategi EMA Multiple Trend Filter dan ATR Tracking Stop Loss Mixed Quantification adalah sistem perdagangan komprehensif yang menggabungkan beberapa elemen kunci dalam analisis teknis. Inti dari strategi ini adalah menggunakan indeks bergerak multi-periode (EMA) sebagai filter pengkonfirmasi tren, dan menggabungkan indikator rata-rata real-range (ATR) untuk membangun sistem tracking stop loss yang dinamis. Strategi ini juga mengintegrasikan fitur penyaringan periode perdagangan, yang memungkinkan pedagang untuk mengoptimalkan eksekusi perdagangan berdasarkan periode aktif di pasar tertentu.

Prinsip Strategi

Prinsip-prinsip inti dari strategi ini dapat dibagi menjadi empat komponen utama:

  1. Konfirmasi tren EMA gandaStrategi ini menggunakan rata-rata bergerak indeks (EMA) dari empat periode yang berbeda (20, 50, 100, dan 200) untuk menentukan arah tren pasar. Hanya jika harga berada di atas semua empat EMA pada saat yang sama, itu dianggap sebagai tren naik; hanya jika harga berada di bawah semua empat EMA pada saat yang sama, itu dianggap sebagai tren turun.

  2. ATR melacak sistem stop lossATR adalah indikator yang mencerminkan volatilitas pasar, yang mengatur jarak stop loss dengan mengalikannya dengan faktor sensitivitas (default 3.0) Tracking stop loss line akan secara otomatis menyesuaikan dengan perubahan harga, bergerak ke atas secara bertahap ketika harga naik, tetap tetap saat harga turun, sehingga mengunci keuntungan dan membatasi kerugian.

  3. Sinyal persilangan harga dan stop lossSinyal beli muncul ketika harga naik melintasi ATR dan memenuhi kondisi tren naik; Sinyal jual muncul ketika harga turun melintasi ATR dan memenuhi kondisi tren turun. Mekanisme sinyal silang ini dikombinasikan dengan konfirmasi tren membantu menangkap titik balik tren.

  4. Filter waktu transaksiStrategi memperkenalkan fitur penyaringan periode perdagangan, yang secara default disetel ke “0930-1600” (waktu perdagangan standar AS). Filter ini memastikan bahwa sinyal perdagangan hanya dihasilkan dalam periode perdagangan aktif yang ditentukan, menghindari risiko potensial pada periode likuiditas rendah atau volatilitas tinggi.

Keunggulan Strategis

  1. Konfirmasi tren multi-lapisanDengan meminta harga berada pada sisi yang sama dari empat EMA periode yang berbeda, strategi ini secara signifikan meningkatkan keandalan konfirmasi tren, secara efektif menyaring sinyal palsu di pasar yang bergoyang, dan mengurangi frekuensi perdagangan yang tidak perlu.

  2. Manajemen risiko dinamisATR Tracking Stop System dapat secara otomatis menyesuaikan jarak stop loss berdasarkan volatilitas pasar yang sebenarnya, yang berarti bahwa harga diberikan lebih banyak ruang untuk bergerak di pasar yang lebih berfluktuasi, sedangkan di pasar yang lebih berfluktuasi, stop loss yang lebih ketat diterapkan, yang memungkinkan adaptasi risiko yang dinamis.

  3. Kustomisasi TinggiStrategi menawarkan beberapa parameter yang dapat disesuaikan, termasuk siklus ATR, faktor sensitivitas, dan pengaturan waktu perdagangan, yang memungkinkan pedagang untuk melakukan penyesuaian optimal sesuai dengan karakteristik pasar yang berbeda dan preferensi risiko pribadi.

  4. Pengoptimalan penyaringan waktuFitur filter waktu perdagangan memungkinkan strategi untuk fokus pada waktu pasar yang paling aktif dan likuiditas terbaik untuk perdagangan, menghindari risiko potensial di masa sebelum dan sesudah perdagangan atau saat likuiditas rendah lainnya.

  5. Umpan balik visual yang intuitifStrategi: Strategi menampilkan garis EMA, jalur stop loss, dan sinyal jual beli dengan jelas di grafik, sementara perubahan warna grafik kolom secara intuitif mencerminkan posisi harga saat ini terhadap garis stop loss, sehingga memungkinkan pedagang untuk memantau status strategi secara real-time.

Risiko Strategis

  1. Penundaan perubahan trenMultiple EMA Filter: Meskipun meningkatkan keandalan sinyal, tetapi juga memperkenalkan beberapa keterlambatan yang dapat menyebabkan kehilangan sebagian potensi keuntungan di awal tren, atau keluar terlalu terlambat di akhir tren. Ini adalah pertimbangan yang diperlukan antara keandalan dan ketepatan waktu.

  2. Performa pasar horizontal tidak baikDalam pasar yang tidak memiliki tren yang jelas, strategi mungkin sulit untuk memenuhi semua persyaratan penyaringan EMA karena harga sering melintasi beberapa EMA, yang menyebabkan kehilangan peluang perdagangan potensial atau terlalu banyak sinyal palsu.

  3. Parameter Sensitivitas: Kinerja strategi sangat bergantung pada pengaturan parameter kunci seperti ATR sensitivitas faktor, ATR siklus. Parameter yang tidak tepat dapat menyebabkan stop loss terlalu kencang (terlalu sering dipicu) atau terlalu longgar (terlalu banyak kehilangan).

  4. Risiko Kejadian Luar BiasaATR mungkin tidak dapat menanggapi stop loss yang dilacak secara tepat waktu dalam kasus lonjakan atau fluktuasi harga yang disebabkan oleh berita besar atau peristiwa black swan, yang menyebabkan kerugian yang sebenarnya melebihi ekspektasi. Disarankan untuk bekerja sama dengan penggunaan hard stop loss untuk membatasi risiko maksimum.

  5. Risiko Terlalu Banyak BerdagangMeskipun ada beberapa lapisan penyaringan, dalam pasar yang sangat berfluktuasi, seringnya persilangan harga dengan ATR yang melacak garis stop loss dapat menyebabkan over-trading dan meningkatkan biaya transaksi. Perlu dipertimbangkan untuk meningkatkan persyaratan waktu memegang minimum untuk mengurangi masalah ini.

Arah optimasi strategi

  1. Meningkatkan Indikator Kekuatan TrenStrategi saat ini hanya mengandalkan harga dan posisi relatif dari beberapa EMA untuk menilai tren, dan dapat mempertimbangkan untuk meningkatkan indikator kekuatan tren seperti ADX (Indeks Kecenderungan Rata-rata) untuk menetapkan minimal tren intensitas threshold, dan lebih lanjut memfilter sinyal dalam lingkungan tren lemah.

  2. Masukkan konfirmasi volume transaksi: Mengintegrasikan analisis volume transaksi ke dalam logika pembuatan sinyal, meminta sinyal jual beli disertai dengan konfirmasi volume transaksi yang cukup, membantu meningkatkan keandalan sinyal. Misalnya, volume transaksi pada saat pembuatan sinyal dapat diminta lebih tinggi dari volume transaksi rata-rata selama N siklus terakhir.

  3. Optimalkan parameter Stop Loss Adaptive Mechanism: Strategi saat ini menggunakan faktor sensitivitas ATR tetap, yang dapat dipertimbangkan untuk memungkinkan mekanisme penyesuaian parameter adaptif berdasarkan tingkat fluktuasi historis atau kondisi pasar. Misalnya, secara otomatis meningkatkan faktor sensitivitas di pasar yang berfluktuasi tinggi dan menurunkan faktor sensitivitas di pasar yang berfluktuasi rendah.

  4. Menambahkan target laba dan filter risiko-reward: Menambahkan mekanisme pemfilteran sinyal berdasarkan target keuntungan yang diantisipasi dan rasio pengembalian risiko, hanya melakukan perdagangan yang memiliki rasio pengembalian risiko yang diantisipasi di atas batas tertentu. Hal ini membantu mengoptimalkan efisiensi pemanfaatan dana, dengan fokus pada peluang perdagangan berkualitas tinggi.

  5. Klasifikasi kondisi pasar dan pergeseran strategi: Mengimplementasikan mekanisme identifikasi otomatis kondisi pasar ((trend/shake) dan menyesuaikan parameter strategi atau beralih logika strategi yang berbeda sesuai dengan dinamika kondisi pasar yang berbeda. Misalnya, menggunakan strategi saat ini di pasar tren yang jelas dan beralih ke strategi pengembalian rata-rata di pasar yang bergoyang.

  6. Integrasi filter dasarUntuk kategori aset tertentu, pertimbangkan untuk mengintegrasikan indikator fundamental yang relevan atau filter peristiwa untuk menghindari perdagangan sebelum dan sesudah rilis data ekonomi penting atau peristiwa ketidakpastian tinggi lainnya.

Meringkaskan

EMA multi-trend filtering dan ATR tracking stop loss strategi kuantitatif campuran adalah sistem perdagangan yang lengkap dengan keuntungan dari kedua trend tracking dan manajemen risiko. Dengan menggabungkan multi-periode EMA trend konfirmasi, ATR dinamis tracking stop loss, harga crossover sinyal dan waktu perdagangan penyaringan mekanisme ganda, strategi ini memberikan kemampuan kontrol risiko yang baik sementara menangkap jangka menengah dan jangka panjang tren.

Keuntungan utama dari strategi ini adalah bahwa pengesahan tren multi-layer meningkatkan keandalan sinyal, sedangkan ATR tracking stop loss menyediakan manajemen risiko dinamis yang beradaptasi dengan volatilitas pasar. Namun, strategi ini juga memiliki risiko potensial seperti keterlambatan konversi tren, kinerja pasar yang tidak baik di pasar lintas batas, dan sensitivitas parameter.

Ada ruang untuk meningkatkan strategi ini dengan menambahkan langkah-langkah pengoptimalan seperti indikator kekuatan tren, konfirmasi volume perdagangan, mekanisme parameter penyesuaian diri. Yang terpenting, pedagang harus menyesuaikan parameter-parameter kunci sesuai dengan varietas perdagangan dan lingkungan pasar yang spesifik, dengan pengembalian yang memadai, dan mempertimbangkan untuk menggunakan strategi ini sebagai bagian dari sistem perdagangan yang lebih besar dan digunakan bersama dengan kombinasi strategi komplementer lainnya untuk mencapai efek optimal.

Kode Sumber Strategi
/*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)