Strategy GOLDEN CROSS EMA Berganda

Penulis:ChaoZhang, Tarikh: 2024-01-22 11:04:41
Tag:

img

Ringkasan

Strategi ini menghasilkan isyarat dagangan berdasarkan persilangan antara garis EMA pantas dan garis EMA perlahan. Apabila garis EMA pantas melintasi di atas garis EMA perlahan, isyarat beli dihasilkan. Apabila garis EMA pantas melintasi di bawah garis EMA perlahan, isyarat jual dihasilkan. Strategi ini menggunakan kelebihan purata bergerak untuk mengesan trend pasaran dengan berkesan dan menghasilkan isyarat dagangan semasa permulaan trend.

Logika Strategi

Garis EMA jangka pendek adalah garis EMA jangka panjang. Garis EMA jangka pendek adalah garis EMA jangka pendek. Garis EMA jangka pendek adalah garis EMA jangka pendek. Garis EMA jangka pendek adalah garis EMA jangka pendek. Garis EMA jangka pendek adalah garis EMA jangka pendek. Garis EMA jangka pendek adalah garis EMA jangka pendek.

Dengan memanfaatkan logik persilangan antara garis EMA yang cepat dan perlahan, strategi ini menangkap titik beralih trend pasaran tepat pada masanya dan menghasilkan isyarat perdagangan dengan sewajarnya. Sementara itu, EMA sendiri mempunyai keupayaan untuk menapis isyarat palsu, mengelakkan perdagangan berlebihan semasa penyatuan pasaran. Ini membolehkan strategi untuk menangkap titik perubahan pasaran sambil mengurangkan perdagangan yang salah, yang membawa kepada keuntungan yang lebih tinggi.

Analisis Kelebihan

  • Mencatatkan titik perubahan pasaran melalui peraturan silang EMA untuk keuntungan yang tinggi
  • Menggunakan kedua-dua garis EMA pantas dan perlahan untuk kelebihan masing-masing
  • Keupayaan penapisan bunyi yang melekat pada EMA mengurangkan perdagangan yang salah
  • Mudah difahami, dioptimumkan dan diperluas
  • Kebolehluasan yang tinggi untuk memasukkan penunjuk bantuan lain

Analisis Risiko

  • Isyarat palsu yang kerap mungkin berlaku semasa pasaran terhad julat
  • Tetapan parameter EMA yang tidak betul boleh menyebabkan pembalikan utama yang hilang
  • Emisyen yang tertunda boleh mengakibatkan peluang perdagangan jangka pendek yang hilang
  • Tidak dapat menyesuaikan diri dengan gejolak pasaran yang drastik

Untuk menangani risiko ini, pengoptimuman boleh diperkenalkan seperti menambah peraturan penapisan, menggabungkan MACD untuk mengelakkan isyarat palsu, menggunakan EMA adaptif untuk mempercepatkan tindak balas dan lain-lain. Juga, mekanisme berhenti rugi dan mengambil keuntungan yang betul diperlukan.

Arahan pengoptimuman

Arah yang berpotensi untuk pengoptimuman lanjut termasuk:

  • Menambah peraturan penapisan pada isyarat kemasukan, contohnya menggabungkan jumlah dagangan
  • Menggabungkan penunjuk bantuan seperti MACD untuk isyarat tambahan
  • Memperkenalkan EMA adaptif untuk menyesuaikan parameter secara dinamik
  • Menggunakan analisis pelbagai jangka masa untuk memanfaatkan EMA yang berbeza
  • Mengoptimumkan strategi stop loss melalui trailing stop, peratusan stop dan lain-lain
  • Memanfaatkan teknologi AI untuk penyesuaian parameter automatik

Ringkasan

Strategi ini menangkap titik perubahan pasaran yang kritikal melalui logik persilangan garis EMA berganda, menjadikannya berkesan untuk perdagangan langsung. Dengan penapis tambahan, penyokong yang membantu dan pengoptimuman stop loss, kestabilan strategi dapat ditingkatkan lagi. Logik strategi adalah mudah dan bernilai dipelajari untuk peniaga kuant, dengan potensi yang banyak untuk pengembangan dan penambahbaikan.


/*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)



Lebih lanjut