Strategi Kuantitatif Crossover Rata-rata Pergerakan Momentum


Tanggal Pembuatan: 2024-01-26 11:39:26 Akhirnya memodifikasi: 2024-01-26 11:39:26
menyalin: 0 Jumlah klik: 587
1
fokus pada
1617
Pengikut

Strategi Kuantitatif Crossover Rata-rata Pergerakan Momentum

Ringkasan

Strategi ini menggabungkan moving average dan volume transaksi, dua indikator teknis penting, dan merancang aturan masuk dan keluar untuk posisi panjang dan pendek, untuk membentuk strategi perdagangan kuantitatif yang lengkap.

Prinsip Strategi

Indikator utama

  1. Rata-rata bergerak: Rata-rata bergerak cepat (garis biru) dan rata-rata bergerak lambat (garis merah).
  2. Volume transaksi: volume transaksi 24 jam (warna ungu) dan volume transaksi rata-rata 7 hari (warna merah muda).

Syarat kebijakan

Syarat untuk masuk dalam posisi lama:

  1. Rata-rata bergerak cepat melewati rata-rata bergerak lambat
  2. Volume transaksi 24 jam kurang dari 50% dari rata-rata volume transaksi 7 hari

Syarat masuk untuk short position:
Rata-rata bergerak cepat di bawah rata-rata bergerak lambat

Masuk dan keluar

“Saya tidak tahu apa yang terjadi.Memenuhi persyaratan untuk masuk ke posisi lama

Posisi pendek masuk:Keluar dari posisi saat memenuhi persyaratan untuk masuk

Hentikan dan Hentikan Kerugian: Tampilkan stop loss dan stop loss setelah melakukan overdoing

Analisis Keunggulan

  1. Kombinasi indikator harga dan volume transaksi untuk menghindari terobosan palsu
  2. Aturan masuk dan keluar jelas
  3. Ada mekanisme pengendalian risiko stop loss

Analisis risiko

  1. Strategi biner dapat menghasilkan transaksi yang sering
  2. Kualitas data volume transaksi tidak dapat dijamin
  3. Optimisasi parameter berisiko terlalu dioptimalkan

Cara Peningkatan:

  1. Menyesuaikan parameter rata-rata dengan mengurangi frekuensi transaksi
  2. Sinyal kuantitatif dengan verifikasi lebih banyak sumber data
  3. Verifikasi Ulang yang ketat untuk mencegah over-optimisasi

Arah optimasi

  1. Menambahkan sinyal filter indikator lainnya
  2. Stop loss yang disesuaikan secara dinamis
  3. Analisis Multi-Framework untuk Meningkatkan Stabilitas

Meringkaskan

Strategi ini mengintegrasikan indikator moving average dan indikator volume transaksi, dengan mekanisme double confirmation untuk merancang strategi perdagangan kuantitatif yang lengkap. Strategi ini memiliki persyaratan masuk yang jelas, stop loss, dan operasi yang mudah. Selain itu, strategi ini juga mencegah masalah perdagangan yang sering terjadi dengan strategi linear ganda, memperhatikan kualitas data volume transaksi, dan mencegah parameter yang dioptimalkan.

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

//@version=5
strategy("MA and Volume Strategy", overlay=true)

// Input parameters
fastLength = input(9, title="Fast MA Length")
slowLength = input(21, title="Slow MA Length")
volumePercentageThreshold = input(50, title="Volume Percentage Threshold")

// Calculate moving averages
fastMA = ta.sma(close, fastLength)
slowMA = ta.sma(close, slowLength)

// Calculate 24-hour volume and weekly volume average
dailyVolume = request.security(syminfo.tickerid, "D", volume)
weeklyVolumeAvg = ta.sma(request.security(syminfo.tickerid, "W", volume), 7)

// Strategy conditions
longCondition = ta.crossover(fastMA, slowMA) and dailyVolume < (weeklyVolumeAvg * volumePercentageThreshold / 100)
shortCondition = ta.crossunder(fastMA, slowMA)

// Set take profit and stop loss levels
takeProfitLong = close * 1.50
stopLossLong = close * 0.90

// Strategy orders
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)

// Plot moving averages
plot(fastMA, color=color.blue, title="Fast MA")
plot(slowMA, color=color.red, title="Slow MA")

// Plot 24-hour volume and weekly volume average
plot(dailyVolume, color=color.purple, title="24-Hour Volume", transp=0)
plot(weeklyVolumeAvg, color=color.orange, title="Weekly Volume Average")

// Plot entry signals
plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.triangledown, size=size.small)

// Plot take profit and stop loss levels only when a valid trade is active
plotshape(series=longCondition, title="Take Profit Long", color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=longCondition, title="Stop Loss Long", color=color.red, style=shape.triangledown, size=size.small)