
Strategi bergerak rata-rata persilangan adalah strategi perdagangan saham yang lebih biasa. Strategi ini menghasilkan isyarat beli dan jual dengan mengira purata bergerak cepat dan purata bergerak perlahan dan menghasilkan isyarat beli dan jual ketika mereka bersilang. Secara khusus, isyarat beli dihasilkan apabila rata-rata bergerak cepat melintasi rata-rata bergerak perlahan dari bawah; isyarat jual dihasilkan apabila rata-rata bergerak cepat melintasi rata-rata bergerak perlahan dari atas ke bawah.
Logik teras strategi ini adalah: purata bergerak cepat mewakili trend jangka pendek saham, purata bergerak perlahan mewakili trend jangka panjang saham. Apabila trend jangka pendek bertukar menjadi naik (golden forks), menunjukkan saham memasuki kawasan membeli-belah; apabila trend jangka pendek bertukar menjadi turun (dead forks), menunjukkan saham memasuki kawasan menjual.
Secara khusus, strategi ini mentakrifkan rata-rata bergerak cepat maFast dan rata-rata bergerak perlahan maSlow. Panjang maFast adalah 9, yang mewakili trend jangka pendek saham selama 9 hari; Panjang maSlow adalah 18, yang mewakili trend jangka panjang saham selama 18 hari.
Strategi ini mempunyai kelebihan berikut:
Strategi ini mempunyai beberapa risiko:
Risiko ini boleh dikurangkan dengan menyesuaikan parameter purata bergerak dan menetapkan strategi berhenti rugi.
Strategi ini masih boleh dioptimumkan lagi:
Strategi moving average crossover secara keseluruhan adalah strategi yang sangat klasik dan praktikal. Prinsipnya mudah, mudah dilaksanakan, dan digunakan secara meluas dalam perdagangan sebenar. Dengan pengoptimuman parameter dan penggunaan indikator teknologi pembantu, strategi ini dapat ditingkatkan lagi untuk mendapatkan nisbah risiko / keuntungan yang lebih baik.
/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title="Moving Average Cross", overlay=true, initial_capital=10000, currency='USD')
// === GENERAL INPUTS ===
// short ma
maFastSource = input(defval = close, title = "Fast MA Source")
maFastLength = input(defval = 9, title = "Fast MA Period", minval = 1)
// long ma
maSlowSource = input(defval = close, title = "Slow MA Source")
maSlowLength = input(defval = 18, title = "Slow MA Period", minval = 1)
// === SERIES SETUP ===
/// a couple of ma's..
maFast = ema(maFastSource, maFastLength)
maSlow = ema(maSlowSource, maSlowLength)
// === PLOTTING ===
fast = plot(maFast, title = "Fast MA", color = red, linewidth = 2, style = line, transp = 30)
slow = plot(maSlow, title = "Slow MA", color = green, linewidth = 2, style = line, transp = 30)
// === LOGIC ===
enterLong = crossover(maFast, maSlow)
exitLong = crossover(maSlow, maFast)
// Entry //
strategy.entry(id="Long Entry", long=true, when=enterLong)
strategy.entry(id="Short Entry", long=false, when=exitLong)
// === FILL ====
fill(fast, slow, color = maFast > maSlow ? green : red)