
Strategi perdagangan moving average Forex dead fork menghasilkan sinyal beli dan jual dengan menghitung persilangan garis cepat EMA ((fastLength) dan garis lambat EMA ((slowLength)). Ketika garis cepat melewati garis lambat, menghasilkan sinyal beli; Ketika garis cepat melewati garis lambat, menghasilkan sinyal jual. Strategi ini sederhana dan praktis, cocok untuk perdagangan garis pendek menengah.
Strategi ini menggunakan dua rata-rata bergerak, garis cepat dan garis lambat. Parameter garis cepat EMAfastLength default 9 hari, parameter garis lambat EMAAslowLength default 26 hari. Perhitungan persilangan dua garis EMA untuk menilai sinyal jual beli pasar:
Sinyal perdagangan dan aturan strategi spesifiknya adalah sebagai berikut:
Jadi, strategi ini adalah strategi untuk melakukan perdagangan ketika dua rata-rata bergerak terjadi pada garpu emas dan garpu mati.
Untuk mengurangi risiko, banyak pengujian diperlukan untuk memaksimalkan parameter yang dapat dioptimalkan seperti siklus moving average, jenis perdagangan, stop loss ratio, dan sebagainya.
Strategi ini memiliki pola pikir lintas rata-rata bergerak yang sederhana dan praktis, yang dapat dioptimalkan dengan cara berikut:
Dengan tes optimasi ini, efektifitas dan stabilitas strategi dapat ditingkatkan secara signifikan.
Moving average crossover strategi ide yang sederhana, aplikasi yang sebenarnya perlu terus dioptimalkan. Strategi ini memberikan sinyal perdagangan yang menghasilkan logika dan aturan dasar perdagangan, di atas dasar ini dapat sangat dioptimalkan, sehingga menjadi strategi kuantitatif yang praktis.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("EMA Cross by MarketAlpha", overlay=true)
EMAfastLength = input(defval = 9, minval = 2)
EMAslowLength = input(defval = 26, minval = 2)
Targetpercentage = input(defval = 0.15, title = "Profit Target in percentage", minval = 0.05)
StopLosspercentage = input(defval = 0.20, title = "Stop Loss in percentage", minval = 0.05)
profitpoints = close*Targetpercentage
stoplosspoints = close*StopLosspercentage
price = close
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2018, title = "From Year", minval = 2000)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 9999, title = "To Year", minval = 2017)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window
window() => true // create function "within window of time"
emafast = ema(price, EMAfastLength)
emaslow = sma(price, EMAslowLength)
plot(emafast,color=green)
plot(emaslow,color=red)
enterLong() => crossover(emafast, emaslow)
strategy.entry(id = "MarketAlpha Long", long = true, when = window() and enterLong())
strategy.exit("Exit Long", from_entry = "MarketAlpha Long", profit = profitpoints,loss = stoplosspoints)
enterShort() => crossunder(emafast, emaslow)
strategy.entry(id = "MarketAlpha Short", long = false, when = window() and enterShort())
strategy.exit("Exit Short", from_entry = "MarketAlpha Short", profit = profitpoints,loss = stoplosspoints)