Strategi moving average crossover adalah strategi perdagangan saham yang lebih umum. Strategi ini menghasilkan sinyal beli dan jual dengan menghitung rata-rata bergerak cepat dan rata-rata bergerak lambat, dan menghasilkan sinyal beli dan jual saat mereka bersilang. Secara khusus, sinyal beli dihasilkan ketika rata-rata bergerak cepat melewati rata-rata bergerak lambat dari bawah; dan sinyal jual dihasilkan ketika rata-rata bergerak cepat melewati rata-rata bergerak lambat dari atas ke bawah.
Logika inti dari strategi ini adalah: rata-rata bergerak cepat mewakili tren jangka pendek dari saham, rata-rata bergerak lambat mewakili tren jangka panjang dari saham. Ketika tren jangka pendek bergeser ke atas (golden fork), menunjukkan bahwa saham memasuki zona beli; ketika tren jangka pendek bergeser ke bawah (dead fork), menunjukkan bahwa saham memasuki zona jual.
Secara khusus, strategi ini mendefinisikan rata-rata bergerak cepat maFast dan rata-rata bergerak lambat maSlow. Panjang maFast adalah 9, mewakili tren jangka pendek saham selama 9 hari; panjang maSlow adalah 18, mewakili tren jangka panjang saham selama 18 hari. Strategi ini menilai perubahan tren jangka pendek dan jangka panjang dengan menghitung persimpangan dua rata-rata bergerak.
Strategi ini memiliki keuntungan sebagai berikut:
Strategi ini juga memiliki beberapa risiko:
Risiko ini dapat dikurangi dengan menyesuaikan parameter moving average dan mengatur strategi stop loss.
Strategi ini masih bisa dioptimalkan lebih jauh:
Moving average crossover adalah strategi yang sangat klasik dan praktis secara keseluruhan. Prinsipnya sederhana, mudah diterapkan, dan digunakan secara luas dalam perdagangan nyata. Strategi ini dapat ditingkatkan lebih lanjut melalui penyesuaian parameter dan penggunaan indikator teknis tambahan untuk mendapatkan rasio 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)