
Strategi ini dinamakan strategi perdagangan kuantitatif jangka pendek berdasarkan persilangan EMA rata-rata. Strategi ini menggunakan prinsip persilangan rata-rata EMA 9 hari, 15 hari dan 50 hari, untuk berdagang dalam jangka masa pendek dari 1 minit hingga 5 minit untuk menangkap trend harga jangka pendek, untuk memasuki dan keluar dengan cepat.
Strategi ini menggunakan garis purata EMA 9 hari, garis purata EMA 15 hari, dan garis purata EMA 50 hari. Persaingan antara garis purata EMA 9 hari dan garis purata EMA 15 hari digunakan untuk menghasilkan isyarat beli dan jual. Isyarat beli dihasilkan apabila garis purata EMA 9 hari melintasi garis purata EMA 15 hari; isyarat jual dihasilkan apabila garis purata EMA 9 hari melintasi garis purata EMA 15 hari.
Melalui persimpangan EMA cepat dan sokongan EMA jangka panjang, pergerakan harga jangka pendek dapat ditangkap dan operasi berlawanan dapat dielakkan. Dua persimpangan EMA jangka pendek memastikan perubahan harga jangka pendek dapat ditangkap pada masa yang tepat. Persimpangan EMA jangka panjang dapat menyaring situasi yang bergolak dengan berkesan dan mengelakkan ketegangan.
Menangkap Trend Harga Jangka Pendek: Dengan penyambungan dua garis rata-rata EMA pantas, anda boleh menangkap perubahan harga jangka pendek dengan cepat, untuk mencapai kemasukan dan keluar.
Penapis Guncangan: Dengan garis rata-rata EMA yang panjang untuk menilai arah trend keseluruhan, ia berkesan mencegah operasi berlawanan arah dan mengelakkan kerugian yang tidak perlu.
Parameter boleh disesuaikan: Pengguna boleh menyesuaikan parameter kitaran EMA rata-rata mengikut keperluan mereka sendiri, menyesuaikan diri dengan keadaan pasaran yang berbeza.
Mudah untuk dimulakan: Pemikiran silang linear yang agak sederhana, mudah difahami dan digunakan.
Terlalu sensitif: Dua EMA purata jangka pendek terlalu sensitif dan boleh menghasilkan banyak isyarat salah.
Tidak mempertimbangkan trend jangka panjang: EMA panjang tidak dapat menyaring pergerakan sepenuhnya, dan masih ada risiko untuk beraksi berlawanan dengan kemungkinan tertentu.
Bergantung kepada parameter: Kombinasi parameter yang dioptimumkan bergantung kepada data sejarah dan tidak dijamin untuk data masa depan.
Tidak baik dalam kedudukan hentian: titik hentian tetap sukar untuk difahami, mungkin terlalu longgar atau terlalu radikal.
Menambah isyarat penapis stochastic, menggunakan isyarat overbought dan oversold dengan isyarat KDJ untuk membantu isyarat EMA linear crossover.
Menambah mekanisme penangguhan yang beradaptasi, menyesuaikan titik penangguhan secara pintar mengikut tahap turun naik pasaran.
Tambah modul pengoptimuman parameter untuk mencari kombinasi parameter yang optimum melalui algoritma genetik yang terus berulang.
Menggabungkan model pembelajaran mesin untuk menilai trend dan ketepatan isyarat, meningkatkan kestabilan strategi.
Strategi ini menghasilkan isyarat dagangan melalui persilangan dua garis rata-rata EMA cepat, dan menggunakan garis rata-rata EMA jangka panjang untuk menilai trend keseluruhan, dengan tujuan untuk menangkap pergerakan harga jangka pendek. Strategi garis pendek ini mudah difahami, tetapi terdapat beberapa kelemahan, seperti menghasilkan banyak isyarat yang salah, mengabaikan trend jangka panjang, dan lain-lain.
/*backtest
start: 2023-12-28 00:00:00
end: 2024-01-04 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("EMA Crossover Strategy", overlay=true)
// Define the EMAs
shortEma = ema(close, 9)
mediumEma = ema(close, 15)
longEma = ema(close, 50)
// Plot EMAs
plot(shortEma, title="ShortSignal", color=color.blue)
plot(mediumEma, title="LongSignal", color=color.orange)
plot(longEma, title="TrendIdentifier", color=color.red)
// Define the crossover conditions
buyCondition = crossover(shortEma, mediumEma) and close > longEma
sellCondition = crossunder(shortEma, mediumEma) and close < longEma
// Plot labels for crossovers with black text color
plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", textcolor=color.white)
plotshape(series=sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", textcolor=color.white)
// Define the strategy conditions
if (buyCondition)
strategy.entry("Buy", strategy.long)
strategy.exit("Take Profit", "Buy")
if (sellCondition)
strategy.entry("Sell", strategy.short)
strategy.exit("Take Profit", "Sell")
// Run the strategy
strategy.exit("TP/SL", profit=1, loss=0.5)