Penulis:ChaoZhang
Tag:

img

Gambaran umum

Strategi ini menggunakan salib emas dan salib kematian Moving Averages (MA) untuk mengidentifikasi titik balik dalam tren pasar dan memanfaatkan fluktuasi harga jangka pendek saham. Ini menghitung dua MA dengan periode waktu yang berbeda, yaitu MA jangka pendek dan MA jangka panjang. Ketika MA jangka pendek melintasi di atas MA jangka panjang, sinyal beli dihasilkan. Ketika MA jangka pendek melintasi di bawah MA jangka panjang, sinyal jual dihasilkan.

Logika Strategi

Logika inti dari strategi ini terletak pada hubungan silang antara MA jangka pendek dan MA jangka panjang. MA jangka pendek mencerminkan perubahan harga baru-baru ini dengan lebih cepat, sementara MA jangka panjang memiliki kemampuan pengurangan kebisingan yang lebih baik untuk menggambarkan tren harga jangka panjang. Ketika MA jangka pendek melintasi di atas MA jangka panjang, itu menunjukkan harga telah mulai meningkat baru-baru ini dan dapat menandakan pembalikan jangka pendek, sehingga memicu sinyal beli untuk menangkap kenaikan berikutnya. Sebaliknya, ketika MA jangka pendek melintasi di bawah MA jangka panjang, itu menandakan momentum harga menurun baru-baru ini dan potensi pembalikan jangka pendek, sehingga menghasilkan sinyal jual.

Secara khusus, strategi ini menerapkan fungsi ta.sma pada harga penutupan untuk menghitung dua garis MA: maShort (9 periode) dan maLong (21 periode).

Keuntungan

  • Mempertimbangkan perubahan harga baru-baru ini dan jangka panjang untuk meningkatkan kualitas sinyal
  • Secara intuitif menggambarkan arah harga dan momentum
  • Mudah dipahami dan diterapkan, cocok untuk perdagangan jangka pendek frekuensi tinggi
  • Parameter MA yang fleksibel untuk instrumen perdagangan yang berbeda

Risiko

  • Mengikuti ketat penyeberangan MA dapat mengakibatkan frekuensi perdagangan yang berlebihan
  • Pengaturan periode MA yang buruk berdampak negatif pada kualitas sinyal

Peluang Peningkatan

  • Mengoptimalkan kombinasi periode MA pendek dan panjang
  • Pertimbangkan karakteristik saham individu dan sesuaikan parameter strategi

Sebagai contoh, indikator teknis lainnya seperti MACD, KDJ dapat digunakan untuk memvalidasi sinyal crossover MA dan mencegah kegagalan. Parameter MA juga dapat disetel berdasarkan instrumen perdagangan yang berbeda untuk meningkatkan stabilitas. Sementara itu, tingkat stop loss harus ditetapkan dengan tepat untuk menghindari kerugian yang terlalu besar pada perdagangan individu. Menggunakan semua teknik optimasi tersebut secara komprehensif dapat secara substansial meningkatkan kinerja strategi aktual berdasarkan konsep crossover MA yang sederhana.

Kesimpulan

Strategi ini merancang pendekatan perdagangan jangka pendek yang sederhana berdasarkan prinsip MA crossover. Dengan menyelaraskan kekuatan MA jangka pendek dan MA jangka panjang, ia mempertimbangkan perkembangan harga baru-baru ini dan tren jangka panjang untuk menghasilkan sinyal perdagangan berkualitas tinggi.


/*backtest
start: 2023-12-19 00:00:00
end: 2024-01-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

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

// Define MA lengths
maLengthShort = input.int(9, title="Short MA Length", minval=1)
maLengthLong = input.int(21, title="Long MA Length", minval=1)

// Calculate MAs
maShort = ta.sma(close, maLengthShort)
maLong = ta.sma(close, maLengthLong)

// Plot MAs on the chart
plot(maShort, color=color.blue, title="Short MA")
plot(maLong, color=color.red, title="Long MA")

// Generate Buy Signal (Golden Cross: Short MA crosses above Long MA)
buySignal = ta.crossover(maShort, maLong)
strategy.entry("Buy", strategy.long, when=buySignal)

// Generate Sell Signal (Death Cross: Short MA crosses below Long MA)
sellSignal = ta.crossunder(maShort, maLong)
strategy.entry("Sell", strategy.short, when=sellSignal)

// Set stop loss and take profit levels
stopLossPercent = input.float(1, title="Stop Loss %", minval=0.1, maxval=5)
takeProfitPercent = input.float(1, title="Take Profit %", minval=0.1, maxval=5)

strategy.exit("Take Profit/Stop Loss", from_entry="Buy", loss=close * stopLossPercent / 100, profit=close * takeProfitPercent / 100)
strategy.exit("Take Profit/Stop Loss", from_entry="Sell", loss=close * stopLossPercent / 100, profit=close * takeProfitPercent / 100)


Lebih banyak