Strategi Dagangan Trend Crossover EMA Cepat dan Lambat

Penulis:ChaoZhang, Tarikh: 2023-09-12 18:06:26
Tag:

Strategi ini memperdagangkan persilangan EMA cepat dan perlahan untuk menentukan dan mengesan trend harga.

Logik Strategi:

  1. Mengira EMA pantas dan perlahan, biasanya 13 dan 48 tempoh.

  2. Masukkan panjang apabila EMA yang cepat melintasi EMA yang perlahan.

  3. Keluar lama apabila harga melintasi di bawah EMA pantas.

  4. Pilihan untuk menambah peraturan sampingan pendek untuk perdagangan dua hala.

Kelebihan:

  1. Gabungan EMA pantas/lambat secara berkesan mengenal pasti trend pertengahan.

  2. Perdagangan breakout membolehkan kemasukan trend tepat pada masanya.

  3. Mekanisme stop loss mudah mengawal kerugian setiap perdagangan.

Risiko:

  1. Kelewatan EMA menyebabkan titik masuk terbaik terlewat.

  2. Hentikan stop untuk mengelakkan whipsaws yang berlebihan.

  3. Sukar untuk menentukan arah trend yang jelas semasa julat.

Ringkasnya, strategi ini menggunakan silang EMA untuk pengenalan trend dan penjejakan. pengoptimuman pada parameter dan kawalan risiko dapat meningkatkan prestasi untuk pelbagai pasaran.


/*backtest
start: 2022-09-05 00:00:00
end: 2023-09-11 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

// strategy("EMA Strategy 13 48", shorttitle = "EMA Strategy 13 48", overlay=true, pyramiding = 3,default_qty_type = strategy.percent_of_equity, default_qty_value = 1000)


// === Inputs ===
// short ma
maFastSource   = input(defval = close, title = "Fast MA Source")
maFastLength   = input(defval = 13, title = "Fast MA Period", minval = 1)

// long ma
maSlowSource   = input(defval = close, title = "Slow MA Source")
maSlowLength   = input(defval = 48, title = "Slow MA Period", minval = 1)


// === Vars and Series ===
fastMA = ema(maFastSource, maFastLength)
slowMA = ema(maSlowSource, maSlowLength)

plot(fastMA, color=blue)
plot(slowMA, color=purple)

goLong() => crossover(fastMA, slowMA)
killLong() => crossunder(close, fastMA)
strategy.entry("Buy", strategy.long, when = goLong())
strategy.close("Buy", when = killLong())

// Shorting if using
goShort() => crossunder (fastMA, slowMA)
killShort() => crossover(fastMA, slowMA)
//strategy.entry("Sell", strategy.short, when = goShort())
//strategy.close("Sell", when = killShort())


 

Lebih lanjut