Dual Moving Average Golden Cross adalah strategi perdagangan kuantitatif yang didasarkan pada moving average. Dengan menghitung moving average dari periode yang berbeda, ia menilai tren pasar dan peluang perdagangan. Ketika moving average jangka pendek melintasi di atas moving average jangka panjang, sebuah golden cross terbentuk sebagai sinyal beli.
Logika inti dari strategi Double Moving Average Golden Cross terletak pada karakteristik kelancaran rata-rata bergerak. Rata-rata bergerak dapat secara efektif menyaring kebisingan pasar dan menunjukkan arah tren umum. Rata-rata bergerak jangka pendek lebih sensitif terhadap perubahan harga, menangkap informasi fluktuasi harga selama periode terakhir. Rata-rata bergerak jangka panjang merespons lebih lambat terhadap perubahan harga baru-baru ini, mencerminkan tren jangka panjang pasar. Ketika rata-rata bergerak jangka pendek melintasi di atas rata-rata bergerak jangka panjang, itu menunjukkan pasar sedang membentuk tren naik baru. Ketika rata-rata bergerak jangka pendek melintasi di bawah rata-rata bergerak jangka panjang, itu menunjukkan tren naik mungkin berakhir dan seseorang harus mempertimbangkan keluar posisi.
RSI dapat secara efektif menentukan apakah pasar berada dalam kondisi overbought atau oversold. Dengan menggabungkan RSI, ia menghindari menghasilkan sinyal perdagangan yang salah di sekitar titik balik pasar. Strategi ini hanya akan menghasilkan sinyal beli dan jual ketika RSI memenuhi kriteria.
Secara khusus, logika perdagangan adalah sebagai berikut:
Dengan menggabungkan beberapa parameter, strategi ini dapat secara efektif menyaring sinyal palsu dan meningkatkan akurasi keputusan perdagangan.
Strategi Double Moving Average Golden Cross memiliki keuntungan berikut:
Risiko yang terkait dengan strategi ini meliputi:
Untuk mengurangi risiko, optimasi dapat dilakukan dalam aspek berikut:
Ada ruang untuk peningkatan lebih lanjut untuk strategi Golden Cross rata-rata bergerak ganda:
Strategi Golden Cross Dual Moving Average adalah strategi perdagangan kuantitatif berbasis aturan klasik. Ini mudah diterapkan dengan penyesuaian parameter yang fleksibel dan hasil backtesting yang baik. Ini berfungsi sebagai titik awal yang bagus untuk kuant pemula. Namun, ia memiliki beberapa keterbatasan intrinsik. Dengan penelitian dan optimalisasi lebih lanjut, dapat ditingkatkan menjadi sistem yang lebih cerdas dan stabil untuk profitabilitas berkelanjutan.
/*backtest start: 2024-01-09 00:00:00 end: 2024-01-16 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //Based on Larry Connors RSI-2 Strategy - Lower RSI strategy(title="EA_3Minute_MagnetStrat", shorttitle="EA_3Minute_MagnetStrat", overlay=false) src = close, //RSI CODE up = rma(max(change(src), 0), 30) down = rma(-min(change(src), 0), 30) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down)) //Criteria for Moving Avg rules ma20= vwma(close,20) ma50 = vwma(close,50) ma100= vwma(close,100) //Rule for RSI Color //col = ma30 > ma50 > ma200 and rsi <=53?lime: ma50 < ma200 and rsi >= 60?red : silver long1 = ma20 > ma50 and ma50 > ma100 and rsi < 50 short1 = ma20 < ma50 and ma50 < ma100 and rsi > 48.5 //plot(rsi, title="RSI", style=line, linewidth=1,color=col) //plot(100, title="Upper Line 100",style=line, linewidth=3, color=aqua) //plot(0, title="Lower Line 0",style=line, linewidth=3, color=aqua) //band1 = plot(60, title="Upper Line 60",style=line, linewidth=1, color=aqua) //band0 = plot(44, title="Lower Line 40",style=line, linewidth=1, color=aqua) //fill(band1, band0, color=silver, transp=90) //strategy.entry ("buy", strategy.long, when=long) //strategy.entry ("sell", strategy.short, when=short) //plot(long,"long",color=green,linewidth=1) //plot(short,"short",color=red,linewidth=1) // long = long1[1] == 0 and long1 == 1 short = short1[1] == 0 and short1 == 1 longclose = long[3] == 1 shortclose = short[3] == 1 //Alert strategy.entry("short", strategy.short,qty = 1, when=short) strategy.entry("long", strategy.long,qty=1, when=long) plot(long,"long",color=green,linewidth=1) plot(short,"short",color=red,linewidth=1) strategy.close("long",when=longclose) strategy.close("short",when=shortclose) //strategy.exit(id="long",qty = 100000,when=longclose) //strategy.exit(id="short",qty = 100000,when=shortclose) plot(longclose,"close",color=blue,linewidth=1) plot(shortclose,"close",color=orange,linewidth=1) //strategy.exit(id="Stop", profit = 20, loss = 100)