
Strategi ini adalah sistem perdagangan trend-tracking yang menggabungkan analisis pelbagai bingkai masa, yang berasaskan pada isyarat persilangan rata-rata bergerak indeks (EMA) dari tiga tempoh yang berbeza, dan disokong dengan penapisan pada tahap sokongan dan rintangan bingkai masa yang tinggi. Inti strategi ini adalah menggunakan hubungan persilangan antara EMA5, EMA8 dan EMA13 untuk menghasilkan isyarat beli dan jual, sambil memperkenalkan mekanisme tracking kerugian berdasarkan peratusan yang cerdas untuk melindungi keuntungan yang telah diperoleh dan mengehadkan kerugian yang berpotensi.
Dengan menganalisis kod secara mendalam, strategi ini berfungsi seperti berikut:
Penjanaan isyarat:
Penapis kerangka waktu tinggi:
Pengurusan Risiko:
Maklum balas grafik:
Strategi ini mempunyai beberapa kelebihan:
Pengesahan pelbagai isyarat: Memerlukan EMA5 melintasi EMA8 dan EMA13 pada masa yang sama, mengurangkan kemungkinan penembusan palsu dan meningkatkan kebolehpercayaan isyarat.
Analisis pelbagai bingkai masa: mengintegrasikan tahap sokongan dan rintangan bingkai masa yang lebih tinggi ((1 jam) untuk membantu peniaga mempertimbangkan keputusan perdagangan dari sudut struktur pasaran yang lebih besar.
Hentian dinamik pintar: Berbeza dengan hentian tetap, mekanisme hentian yang dapat dikesan dapat melindungi dana sambil membolehkan keuntungan terus meningkat dan meningkatkan nisbah pulangan risiko.
Maklum balas visual yang jelas: membolehkan peniaga memahami keadaan pasaran dan logik strategi secara intuitif dengan memetakan petunjuk, isyarat dan titik keluar utama pada carta.
Keupayaan perdagangan dua hala: Strategi ini menyokong perdagangan berganda dan kosong pada masa yang sama, mencari peluang dalam pelbagai keadaan pasaran dan memaksimumkan potensi keuntungan.
Kawalan risiko berparameter: Pengesanan stop loss yang dikesan boleh disesuaikan oleh pengguna (dari 0.01% hingga 1%), yang membolehkan parameter risiko disesuaikan secara fleksibel mengikut pilihan risiko peribadi dan keadaan pasaran.
Walaupun terdapat banyak kelebihan, strategi ini mempunyai risiko yang berpotensi:
Risiko pasaran goyah: Dalam pasaran setapak yang tidak mempunyai trend yang jelas, persilangan EMA mungkin menghasilkan isyarat palsu yang kerap, menyebabkan kerugian berturut-turut. Penyelesaian adalah dengan menambah struktur pasaran atau penapis kadar turun naik, dan hanya berdagang apabila trend jelas.
Risiko Tracking Stop Loss Gap: Dalam keadaan pergerakan cepat atau dalam keadaan terhad, harga mungkin melangkaui tahap Tracking Stop Loss, menyebabkan harga Stop Loss yang sebenarnya jauh lebih rendah daripada yang dijangkakan. Ia disyorkan untuk mempertimbangkan untuk menambah had kerugian maksimum tetap sebagai perlindungan tambahan.
Sensitiviti parameter: Prestasi strategi sangat bergantung pada kitaran EMA yang dipilih dan peratusan stop loss yang dikesan, kerana parameter yang berbeza mungkin diperlukan untuk pasaran dan bingkai waktu yang berbeza. Kesan parameter harus disahkan sebelum operasi dengan pengulangan menyeluruh.
Kekurangan penyesuaian kadar turun naik: Tracking stop loss dalam versi semasa adalah berdasarkan peratusan tetap, yang mungkin terlalu ketat di pasaran berfluktuasi tinggi dan terlalu longgar di pasaran berfluktuasi rendah. Pertimbangkan untuk menyesuaikan jarak tracking stop loss berdasarkan ATR.
Konflik isyarat: Dalam keadaan pasaran tertentu, isyarat silang EMA mungkin bertentangan dengan tahap sokongan / rintangan pada carta 1 jam, menyebabkan kesukaran dalam membuat keputusan perdagangan. Dalam kes ini, peraturan keutamaan yang jelas harus dibuat atau menunggu isyarat sesuai.
Berdasarkan analisis kod, berikut adalah arah yang berpotensi untuk meningkatkan strategi:
Memperkenalkan ATR berhenti dinamik: menggantikan peratusan yang tetap untuk mengesan berhenti, menggunakan berhenti dinamik berdasarkan purata purata turun naik ((ATR), lebih sesuai dengan sifat turun naik pasaran yang berbeza. Ini dapat memberikan ruang berhenti yang lebih longgar pada masa turun naik tinggi dan lebih dekat dengan harga pada masa turun naik rendah.
Menambah penapis kekuatan trend: mengintegrasikan ADX (Indeks Ke arah Rata-rata) atau penunjuk kekuatan trend yang serupa, hanya melakukan perdagangan apabila terdapat trend yang kuat yang disahkan, untuk mengelakkan isyarat palsu yang kerap di pasaran melintang.
Tambah pengesahan jumlah transaksi: meminta isyarat perdagangan disertai dengan jumlah transaksi yang lebih tinggi daripada purata, meningkatkan kredibiliti penembusan, dan mengurangkan signal palsu terhadap akaun.
Menerapkan pengurusan risiko dinamik: menyesuaikan saiz kedudukan secara automatik berdasarkan saiz akaun, kadar turun naik sejarah dan kadar kemenangan, mengoptimumkan potensi pertumbuhan dana sambil mengekalkan risiko yang terkawal.
Mengoptimumkan penapis bingkai masa tinggi: Strategi semasa menggunakan titik tinggi dan rendah garis K terdahulu dalam carta 1 jam sebagai rintangan sokongan, dengan pertimbangan untuk memperkenalkan algoritma pengenalan rintangan sokongan yang lebih kompleks, seperti gabungan rintangan sokongan di kawasan struktur utama atau pelbagai bingkai masa.
Menambah klasifikasi keadaan pasaran: membangunkan sistem klasifikasi persekitaran pasaran ((kecenderungan, julat, turun naik tinggi, dan lain-lain), dan menyesuaikan parameter strategi atau logik perdagangan untuk keadaan pasaran yang berbeza, meningkatkan daya serap.
Strategi pemantauan trend silang EMA pelbagai bingkai masa menggabungkan elemen analisis teknikal klasik dengan teknologi pengurusan risiko moden, menyediakan pedagang dengan sistem perdagangan yang jelas dan jelas. Kelebihan utamanya adalah logik penjanaan isyarat yang mudah dan intuitif, sambil mengawal risiko dengan berkesan dan melindungi keselamatan dana melalui mekanisme pengekalan kerugian.
Strategi yang menggabungkan isyarat masuk yang tepat yang disediakan oleh EMA jangka pendek yang bercampur dengan perspektif struktur pasaran yang disediakan oleh tahap rintangan sokongan bingkai masa yang lebih tinggi membantu peniaga menangkap peluang perdagangan yang berkemungkinan tinggi apabila arah trend jelas. Walaupun mungkin menghadapi cabaran dalam pasaran yang bergolak, arah pengoptimuman yang disyorkan, khususnya dengan menambah penyaringan kekuatan trend dan stop loss dinamik berdasarkan ATR, dapat meningkatkan kestabilan dan prestasi strategi dengan ketara dalam persekitaran pasaran yang berbeza.
Bagi pelabur yang ingin membina kaedah perdagangan yang sistematik, strategi ini memberikan kerangka asas yang kukuh yang boleh disesuaikan dan dioptimumkan lebih lanjut mengikut keutamaan risiko dan matlamat perdagangan individu. Dengan mematuhi peraturan strategi dengan ketat dan mengekalkan disiplin perdagangan, peniaga dijangka memperoleh pulangan yang konsisten di pasaran yang jelas trend.
/*backtest
start: 2025-02-25 14:00:00
end: 2025-03-02 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=6
strategy("EMA Crossover Strategy with S/R and Cross Exits v6", overlay=true, margin_long=100, margin_short=100)
// Eingabeparameter
trailOffset = input.float(0.10, "Trailing Stop Offset (%)", minval=0.01, maxval=1, step=0.01)
// EMA Berechnungen
ema5 = ta.ema(close, 5)
ema8 = ta.ema(close, 8)
ema13 = ta.ema(close, 13)
// Plot der EMAs
plot(ema5, "EMA 5", color.rgb(7, 7, 7), 2)
plot(ema8, "EMA 8", color.new(color.blue, 0), 2)
plot(ema13, "EMA 13", color.new(color.red, 0), 2)
// Unterstützungs- und Widerstandsniveaus aus dem 1-Stunden-Chart
hourlyHigh = request.security(syminfo.tickerid, "60", high[1], gaps=barmerge.gaps_off, lookahead=barmerge.lookahead_on)
hourlyLow = request.security(syminfo.tickerid, "60", low[1], gaps=barmerge.gaps_off, lookahead=barmerge.lookahead_on)
// Plot der Unterstützungs- und Widerstandsniveaus
plot(hourlyHigh, "Hourly Resistance", color.new(color.red, 0), linewidth=2)
plot(hourlyLow, "Hourly Support", color.new(color.green, 0), linewidth=2)
// Signalerkennung
buySignal = ta.crossover(ema5, ema8) and ta.crossover(ema5, ema13)
sellSignal = ta.crossunder(ema5, ema8) and ta.crossunder(ema5, ema13)
// Trailing Stop Berechnungen
var float longStop = na
var float shortStop = na
var float maxHigh = na
var float minLow = na
if strategy.position_size > 0
if strategy.position_size[1] <= 0
maxHigh := high
longStop := high * (1 - trailOffset)
else
maxHigh := math.max(maxHigh, high)
longStop := math.max(longStop, maxHigh * (1 - trailOffset))
else
maxHigh := na
longStop := na
if strategy.position_size < 0
if strategy.position_size[1] >= 0
minLow := low
shortStop := low * (1 + trailOffset)
else
minLow := math.min(minLow, low)
shortStop := math.min(shortStop, minLow * (1 + trailOffset))
else
minLow := na
shortStop := na
// Ausführung der Orders
if (buySignal)
strategy.entry("Long", strategy.long)
if (sellSignal)
strategy.entry("Short", strategy.short)
// Schließen bei gegenteiligem Signal
if (buySignal)
strategy.close("Short")
if (sellSignal)
strategy.close("Long")
// Trailing Stop Anwendung
strategy.exit("Long Exit", "Long", stop = longStop)
strategy.exit("Short Exit", "Short", stop = shortStop)
// Exit-Punkte im Chart mit Kreuzen markieren
plotshape(series=strategy.position_size[1] > 0 and strategy.position_size == 0, title="Long Exit", location=location.belowbar, color=color.red, style=shape.cross, text="Exit Long", textcolor=color.rgb(5, 5, 5), size=size.small)
plotshape(series=strategy.position_size[1] < 0 and strategy.position_size == 0, title="Short Exit", location=location.abovebar, color=color.green, style=shape.cross, text="Exit Short", textcolor=color.rgb(7, 7, 7), size=size.small)
// Plot der Trailing Stops
plot(strategy.position_size > 0 ? longStop : na, "Long Stop", color.green, style=plot.style_circles)
plot(strategy.position_size < 0 ? shortStop : na, "Short Stop", color.red, style=plot.style_circles)