Dual EMA Spread Breakout adalah strategi trend berikut. Ia menggunakan dua garis EMA dengan tempoh yang berbeza dan membuat perdagangan apabila terdapat spread yang cukup besar antara kedua-dua EMA untuk menangkap arah trend. Strategi ini berfungsi dengan baik di pasaran dengan kecenderungan trend yang kuat.
Strategi ini menggunakan EMA cepat (EMA tempoh pendek) dan EMA perlahan (EMA tempoh panjang) untuk isyarat perdagangan.
Mengira EMA pantas dan EMA perlahan.
Apabila EMA cepat melintasi di atas EMA perlahan, dan perbezaan antara kedua-dua EMA melebihi ambang, pergi panjang.
Apabila EMA cepat melintasi di bawah EMA perlahan, dan perbezaan antara kedua-dua EMA melebihi ambang, pergi pendek.
Apabila harga kembali di bawah EMA cepat, tutup kedudukan panjang.
Apabila harga kembali di atas EMA cepat, tutup kedudukan pendek.
Dengan cara ini, ia menggunakan kelancaran EMA untuk mengenal pasti arah trend, dan penyebaran EMA untuk menentukan masa kemasukan yang tepat.
Risiko boleh dikurangkan melalui penyesuaian EMA, ambang penyebaran, dan penempatan stop loss.
Dual EMA Spread Breakout adalah strategi yang berkesan namun mudah mengikut trend. Ia boleh mendapat keuntungan dengan baik di pasaran yang sedang berkembang tetapi memerlukan parameter yang betul. Dengan pengoptimuman dan pengurusan risiko, ia dapat memanfaatkan sepenuhnya kekuatannya. Strategi trend yang bernilai untuk diteliti dan digunakan.
/*backtest start: 2023-09-24 00:00:00 end: 2023-10-24 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("2-EMA Strategy", overlay=true, initial_capital=100, currency="USD", default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.075) diffMinimum = input(0.95, step=0.01) small_ema = input(13, title="Small EMA") long_ema = input(26, title="Long EMA") ema1 = ema(close, small_ema) ema2 = ema(close, long_ema) orderCondition = ema1 > ema2?((ema1/ema2)*100)-100 > diffMinimum:((ema2/ema1)*100)-100 > diffMinimum longCondition = close > ema1 and ema1 > ema2 if (longCondition and orderCondition) strategy.entry("Long", strategy.long) shortCondition = close < ema1 and ema1 < ema2 if (shortCondition and orderCondition) strategy.entry("Short", strategy.short) strategy.close("Short", when=close > ema1) strategy.close("Long", when=close < ema1) plot(ema(close, small_ema), title="EMA 1", color=green, transp=0, linewidth=2) plot(ema(close, long_ema), title="EMA 2", color=orange, transp=0, linewidth=2)