Strategi Crossover Rata-rata Bergerak Ganda

Penulis:ChaoZhang, Tanggal: 2024-01-31 11:29:45
Tag:

img

Gambaran umum

Ini adalah strategi perdagangan yang didasarkan pada crossover rata-rata bergerak ganda. Ini menghasilkan sinyal beli dan jual ketika dua rata-rata bergerak dengan panjang yang berbeda bersilang. Secara khusus, itu panjang ketika MA yang lebih cepat melintasi di atas MA yang lebih lambat, dan pendek ketika MA yang lebih cepat melintasi di bawah MA yang lebih lambat.

Logika Strategi

Logika inti dari strategi ini terletak pada prinsip silang antara dua rata-rata bergerak. Rata-rata bergerak adalah harga rata-rata aritmatika selama periode waktu tertentu. Ini membantu menyaring kebisingan pasar dan mengungkapkan tren harga yang lebih jelas.

Dalam strategi ini, MA jangka pendek menangkap tren jangka pendek sementara MA jangka panjang menangkap tren jangka panjang.

Secara khusus, strategi ini menghitung MA menggunakan ta.sma selama periode panjang dan pendek yang ditentukan oleh pengguna. Kemudian menggunakan ta.crossover dan ta.crossunder untuk mendeteksi crossover emas dan crossover kematian antara kedua MA. Ketika MA pendek melintasi di atas MA panjang, pergi panjang. Ketika MA pendek melintasi di bawah, pergi pendek.

Keuntungan

Keuntungan utama dari strategi ini meliputi:

  1. Logika sederhana, mudah diikuti.
  2. Parameter yang dapat disesuaikan yang dapat disesuaikan dengan berbagai pasar.
  3. MA crossover menyaring keluar kebisingan, menangkap pembalikan tren.
  4. Sensitivitas tinggi dalam menangkap titik perubahan harga.

Risiko

Ada juga beberapa risiko:

  1. Jurang yang terlalu kecil antara MAs menyebabkan sinyal palsu.
  2. Periode MA yang salah melewatkan tren utama.
  3. Pembalikan tidak selalu berarti perubahan tren.
  4. Parameter perlu disesuaikan untuk menghindari overfitting.

Untuk mengurangi risiko, parameter dapat disesuaikan, stop loss dan take profit dapat dimasukkan, atau indikator teknis lainnya dapat ditambahkan.

Optimalisasi

Ada ruang untuk optimasi lebih lanjut:

  1. Mengoptimalkan periode MA adaptif.
  2. Tambahkan filter volume untuk menghindari kebocoran palsu.
  3. Masukkan indikator lain seperti MACD, KDJ.
  4. Tambahkan stop loss/take profit untuk membatasi kerugian.
  5. Meningkatkan struktur kode untuk skalabilitas yang lebih baik.

Kesimpulan

Kesimpulannya, ini adalah strategi awal yang ideal untuk perdagangan algoritmik, berkat kesederhanaan logika dan parameternya sementara masih mampu secara efektif menangkap pembalikan pasar.


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

//@version=5
strategy("Cross 2 Moving Average Strategy", shorttitle="2MA Cross", overlay=true)

// User-defined input for moving averages
long_period = input(20, title="Long Period")
short_period = input(5, title="Short Period")
type_ma = input.string("SMA", title = "MA type", options = ["SMA", "EMA"])

// Calculating moving averages
long_ma = ta.sma(close, long_period)
short_ma = ta.sma(close, short_period)

// Plot moving averages
plot(long_ma, title="Long Moving Average", color=color.red)
plot(short_ma, title="Short Moving Average", color=color.green)

// Strategy logic for crossing of moving averages
longCondition = ta.crossover(short_ma, long_ma)
shortCondition = ta.crossunder(short_ma, long_ma)

// Entry orders
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

// Optional: Add stop loss and take profit
stop_loss_perc = input(1, title="Stop Loss (%)") / 100
take_profit_perc = input(2, title="Take Profit (%)") / 100

strategy.exit("Exit Long", from_entry="Long", stop=close*(1-stop_loss_perc), limit=close*(1+take_profit_perc))
strategy.exit("Exit Short", from_entry="Short", stop=close*(1+stop_loss_perc), limit=close*(1-take_profit_perc))


Lebih banyak