Ini adalah strategi perdagangan kuantitatif berdasarkan dua persimpangan linear dan trend tracking. Strategi ini terutamanya menggunakan 47 kitaran dan 95 kitaran purata bergerak indeks ((EMA) untuk menangkap trend pasaran dan berdagang melalui isyarat persimpangan linear.
Inti strategi adalah menggunakan persilangan EMA jangka pendek (siklus 47) dan EMA jangka panjang (siklus 95) untuk mengenal pasti perubahan trend. Apabila EMA jangka pendek naik melintasi EMA jangka panjang, sistem menghasilkan banyak isyarat; Apabila EMA jangka pendek turun melintasi EMA jangka panjang, sistem meratakan. Reka bentuk ini berdasarkan kepada dinamika harga dan prinsip kesinambungan trend, dengan persilangan garis rata untuk mengesahkan titik peralihan trend, untuk menangkap pergerakan utama pasaran.
Ini adalah strategi penjejakan trend dengan struktur yang jelas dan logik yang ketat. Ia menangkap trend pasaran melalui penyambungan dua garis sejajar, mempunyai kebolehgunaan dan skalabiliti yang lebih baik. Walaupun terdapat beberapa batasan, tetapi dengan pengoptimuman dan penyempurnaan yang berterusan, ia dijangka menjadi sistem perdagangan yang stabil dan boleh dipercayai.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA Crossover Strategy", overlay=true)
// Define the EMA periods
shortEmaPeriod = 47
longEmaPeriod = 95
// Calculate EMAs
ema11 = ta.ema(close, shortEmaPeriod)
ema21 = ta.ema(close, longEmaPeriod)
// Plot EMAs on the chart
plot(ema11, title="11 EMA", color=color.blue, linewidth=2)
plot(ema21, title="21 EMA", color=color.red, linewidth=2)
// Generate trading signals
longSignal = ta.crossover(ema11, ema21)
shortSignal = ta.crossunder(ema11, ema21)
// Execute trades based on signals
if (longSignal)
strategy.entry("Buy", strategy.long)
if (shortSignal)
strategy.close("Buy")
// Optional: Plot buy and sell signals on the chart
plotshape(series=longSignal, location=location.belowbar, color=color.green, style=shape.labelup, text="Buy")
plotshape(series=shortSignal, location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell")
// Plot buy/sell signals on the main chart
plotshape(series=longSignal, location=location.belowbar, color=color.green, style=shape.labelup, text="Buy")
plotshape(series=shortSignal, location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell")