Strategi Momentum SMA Berganda

Penulis:ChaoZhang, Tanggal: 2024-01-17 15:05:08
Tag:

img

Gambaran umum

Strategi Dual SMA Momentum adalah strategi perdagangan berbasis analisis teknis yang menghasilkan sinyal beli dan jual berdasarkan dua indikator rata-rata bergerak sederhana (SMA).

Logika Strategi

Strategi ini menggunakan dua indikator SMA dengan jendela waktu pendek dan panjang - SMA cepat (panjang 9 periode) dan SMA lambat (panjang 45 periode).

Ini menghasilkan sinyal long/buy ketika harga penutupan saham melintasi di atas garis SMA cepat dan lambat, menunjukkan awal tren naik.

Ini menghasilkan sinyal short/sell ketika harga melintasi di bawah kedua garis SMA, menunjukkan awal tren penurunan.

Tingkat stop loss ditetapkan secara dinamis pada hari sebelumnya s tinggi (untuk perdagangan pendek) dan hari sebelumnya s rendah (untuk perdagangan panjang).

Analisis Keuntungan

Keuntungan utama dari strategi ini adalah:

  1. Menggunakan kombinasi SMA jangka pendek dan jangka panjang untuk menangkap tren jangka menengah yang muncul
  2. Penempatan stop loss adaptif mengurangi risiko dan membiarkan keuntungan berjalan
  3. Mudah dimengerti dan diterapkan
  4. Berkinerja baik di seluruh saham dan pasar selama kondisi tren

Namun, seperti semua strategi analisis teknis, ia dapat berkinerja buruk selama pasar range-bound dan whipsaw dengan sinyal palsu yang sering.

Analisis Risiko

Risiko utama dari strategi ini adalah:

  1. Cenderung terhadap whipsaws dan sinyal palsu: Karena hanya mengandalkan crossover SMA, strategi dapat menghadapi whipsaws dan sinyal palsu selama pasar sisi atau bergolak, menciptakan biaya perdagangan yang tidak perlu. Hal ini dapat dikurangi dengan menggabungkan dengan indikator lain seperti RSI.

  2. Kerentanan terhadap pembalikan tren mendadak: Pembalikan cepat setelah entri lintas SMA dapat mencapai tingkat stop loss dengan cepat sebelum tren terbentuk. Risiko ini dapat dikurangi dengan mengoptimalkan panjang SMA atau menambahkan filter lain.

  3. Risiko overoptimasi dari tweaking parameter: Optimasi panjang SMA dan parameter lainnya yang luas untuk menyesuaikan data historis dapat menyebabkan kinerja yang buruk dalam perdagangan langsung.

Peluang Peningkatan

Beberapa cara di mana strategi ini dapat ditingkatkan adalah:

  1. Menambahkan indikator lain seperti RSI untuk konfirmasi perdagangan tambahan untuk meningkatkan waktu dan akurasi sinyal

  2. Memasukkan metode penempatan stop loss dinamis seperti ATR atau exit lampu gantung untuk lebih beradaptasi dengan volatilitas pasar

  3. Mengoptimalkan panjang SMA berdasarkan volatilitas historis dan kerangka waktu perdagangan untuk saham yang berbeda

  4. Menambahkan aturan manajemen uang yang sehat dan ukuran posisi untuk memaksimalkan pengembalian dan membatasi penarikan

Kesimpulan

Singkatnya, strategi Dual SMA Momentum menawarkan pendekatan yang mudah untuk memperdagangkan tren jangka pendek hingga menengah. Meskipun mendasar dalam pendekatannya, penyempurnaan seperti filter tambahan, dynamic stop dan optimasi yang bijaksana dapat membantu meningkatkan pengembalian yang disesuaikan dengan risiko. Digunakan secara selektif selama tren naik dan turun saham, ini dapat menangkap pergerakan yang menguntungkan.


/*backtest
start: 2023-01-10 00:00:00
end: 2024-01-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("SMA Crossover Strategy", overlay=true)

// Input parameters
fast_length = input(9, title="Fast SMA Length")
slow_length = input(45, title="Slow SMA Length")

// Calculate moving averages
fast_sma = ta.sma(close, fast_length)
slow_sma = ta.sma(close, slow_length)

// Buy condition
buy_condition = ta.crossover(close, fast_sma) and ta.crossover(close, slow_sma)

// Sell condition
sell_condition = ta.crossunder(close, fast_sma) and ta.crossunder(close, slow_sma)

// Calculate stop loss levels
prev_low = request.security(syminfo.tickerid, "1D", low[1], lookahead=barmerge.lookahead_on)
prev_high = request.security(syminfo.tickerid, "1D", high[1], lookahead=barmerge.lookahead_on)

// Plot signals on the chart
plotshape(buy_condition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(sell_condition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)

// Strategy exit conditions
long_stop_loss = sell_condition ? prev_low : na
short_stop_loss = buy_condition ? prev_high : na

strategy.exit("Long Exit", from_entry="Long", when=sell_condition, stop=long_stop_loss)
strategy.exit("Short Exit", from_entry="Short", when=buy_condition, stop=short_stop_loss)

strategy.entry("Long", strategy.long, when=buy_condition)
strategy.entry("Short", strategy.short, when=sell_condition)


Lebih banyak