
Strategi ini menghasilkan sinyal perdagangan silang emas dan silang mati dengan menghitung persimpangan EMA garis cepat dan EMA garis lambat. Ketika EMA garis cepat melewati EMA garis lambat, menghasilkan sinyal beli. Ketika EMA garis cepat melewati EMA garis lambat, menghasilkan sinyal jual.
Strategi ini menggunakan dua parameter EMA yang berbeda. EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA dengan parameter EMA.
Dengan prinsip persimpangan garis EMA yang cepat dan lambat, strategi ini dapat menangkap waktu yang tepat untuk mengubah tren pasar dan dapat menghasilkan sinyal perdagangan yang tepat waktu. Pada saat yang sama, indikator EMA sendiri memiliki kemampuan untuk memanaskan sinyal palsu dan menghindari sering membuka posisi ketika pasar bergejolak. Ini memungkinkan strategi ini untuk menangkap titik-titik pergeseran pasar sambil mengurangi perdagangan yang salah dan memiliki keuntungan yang lebih tinggi.
Untuk risiko di atas, dapat dioptimalkan dengan memperkenalkan indikator tambahan, seperti meningkatkan kondisi penyaringan perdagangan, menghindari sinyal salah dalam kombinasi dengan indikator MACD, menggunakan kecepatan respons indikator yang dipercepat oleh EMA adaptif, dll. Selain itu, stop loss yang masuk akal dan stop aktif juga diperlukan.
Strategi ini dapat dioptimalkan lebih lanjut dengan:
Strategi ini menggunakan dua EMA fast slow line crossing prinsip, menangkap pasar titik balik yang penting, dengan efek yang kuat. Bergabung dengan indikator tambahan dan pengoptimalan stop loss, dapat lebih meningkatkan stabilitas strategi.
/*backtest
start: 2023-01-15 00:00:00
end: 2024-01-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Backtest single EMA cross", overlay=true)
qty = input(100000, "Buy quantity")
testStartYear = input(2019, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testStartHour = input(0, "Backtest Start Hour")
testStartMin = input(0, "Backtest Start Minute")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, testStartHour, testStartMin)
testStopYear = input(2099, "Backtest Stop Year")
testStopMonth = input(1, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriodBackground = input(title="Color Background?", type=input.bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and time >= testPeriodStart and time <= testPeriodStop ?
#00FF00 : na
testPeriod() => true
ema1 = input(10, title="Select EMA 1")
ema2 = input(20, title="Select EMA 2")
expo = ema(close, ema1)
ma = ema(close, ema2)
avg_1 = avg(expo, ma)
s2 = cross(expo, ma) ? avg_1 : na
//plot(s2, style=plot.style_line, linewidth=3, color=color.red, transp=0)
p1 = plot(expo, color=#00FFFF, linewidth=2, transp=0)
p2 = plot(ma, color=color.orange, linewidth=2, transp=0)
fill(p1, p2, color=color.white, transp=80)
longCondition = crossover(expo, ma)
shortCondition = crossunder(expo, ma)
if testPeriod()
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
plotshape(longCondition, title = "Buy Signal", text ="BUY", textcolor =#FFFFFF , style=shape.labelup, size = size.normal, location=location.belowbar, color = #1B8112, transp = 0)
plotshape(shortCondition, title = "Sell Signal", text ="SELL", textcolor = #FFFFFF, style=shape.labeldown, size = size.normal, location=location.abovebar, color = #FF5733, transp = 0)