Ini adalah strategi perdagangan kuantitatif yang didasarkan pada crossover EMA ganda dan mengikuti tren. Strategi ini terutama menggunakan 47-periode dan 95-periode Eksponensial Moving Averages (EMA) untuk menangkap tren pasar, mengeksekusi perdagangan berdasarkan sinyal crossover EMA.
Mekanisme inti didasarkan pada mengidentifikasi perubahan tren melalui persimpangan antara EMA jangka pendek (47-periode) dan EMA jangka panjang (95-periode). sinyal beli dihasilkan ketika EMA jangka pendek melintasi di atas EMA jangka panjang, sementara posisi ditutup ketika EMA jangka pendek melintasi di bawah.
Ini adalah strategi trend-following yang terstruktur dengan baik dan secara logis ketat. Ini menangkap tren pasar melalui crossover EMA ganda, menawarkan kemampuan operasi dan skalabilitas yang baik. Meskipun ada keterbatasan tertentu, pengoptimalan dan peningkatan berkelanjutan dapat mengembangkannya menjadi sistem perdagangan yang stabil dan andal. Kuncinya adalah menyesuaikan parameter secara fleksibel berdasarkan karakteristik pasar yang berbeda dan membangun mekanisme kontrol risiko yang komprehensif.
/*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")