
Strategi kuantiti silang purata bergerak adalah strategi perdagangan kuantitatif yang menghasilkan isyarat jual beli berdasarkan tanda silang dua purata bergerak yang berbeza. Strategi ini menggunakan dua purata bergerak sederhana pada hari ke-9 dan ke-20, menghasilkan isyarat beli apabila rata-rata jangka pendek melintasi rata-rata jangka panjang dari bawah ke atas, dan menghasilkan isyarat jual apabila rata-rata jangka pendek melintasi rata-rata jangka panjang dari atas ke bawah.
Inti strategi ini adalah menggunakan isyarat silang dari purata bergerak berkala yang berbeza untuk menangkap titik-titik perubahan trend pasaran. Secara khusus, langkah-langkah utama strategi adalah sebagai berikut:
Melalui langkah-langkah di atas, strategi boleh membeli garis pertama yang baik selepas melintasi garis rata-rata jangka panjang pada garis rata-rata jangka pendek, dan menjual garis pertama yang negatif selepas melintasi garis rata-rata jangka panjang di bawah garis rata-rata jangka pendek, sehingga dapat membangunkan kedudukan dan kedudukan tepat pada masanya pada titik peralihan trend.
Strategi kuantiti silang purata bergerak mempunyai kelebihan berikut:
Walaupun ada kelebihan yang dimiliki oleh strategi kuantiti silang purata bergerak, terdapat risiko berikut:
Mengenai risiko di atas, langkah-langkah berikut boleh dilakukan untuk memperbaiki:
Pengoptimuman parameter: pengoptimuman parameter kitaran rata-rata bergerak, mencari kombinasi parameter yang lebih sesuai dengan pasaran semasa, meningkatkan prestasi strategi.
Penapisan isyarat: Berdasarkan persimpangan linear, memperkenalkan petunjuk atau syarat teknikal lain, seperti MACD, RSI, dan lain-lain, untuk mengesahkan isyarat perdagangan kedua, meningkatkan kebolehpercayaan isyarat.
Pengurusan kedudukan: Mengubah saiz kedudukan secara dinamik mengikut kekuatan trend pasaran, kadar turun naik dan lain-lain, meningkatkan kedudukan apabila trend kuat, mengurangkan kedudukan apabila trend tidak jelas atau turun naik, meningkatkan nisbah risiko pendapatan.
Hentikan Kerugian: Memperkenalkan mekanisme hentikan kerugian yang munasabah untuk mengawal risiko perdagangan tunggal, sambil membiarkan keuntungan berlari dan meningkatkan keuntungan strategi.
Pelindung kosong: Pertimbangkan untuk memasukkan isyarat kebalikan dalam strategi, sambil memegang kedudukan kosong, melindungi risiko pasaran, meningkatkan kestabilan strategi.
Arahan pengoptimuman di atas dapat membantu meningkatkan prestasi strategi, tetapi pelaksanaan khusus juga perlu disesuaikan dan diuji mengikut keadaan sebenar.
Strategi kuantitatif rata-rata bergerak adalah strategi trend yang mudah dan berkesan untuk menangkap perubahan trend pasaran melalui sinyal silang rata-rata bergerak yang berbeza. Strategi ini logiknya jelas dan beradaptasi, tetapi terdapat juga masalah seperti ketinggalan dan risiko pasaran yang bergolak. Dengan memperkenalkan petunjuk teknikal lain, parameter pengoptimuman, dan pengendalian kedudukan dan langkah-langkah kawalan risiko yang lebih baik, prestasi strategi ini dapat ditingkatkan lagi, menjadikannya strategi perdagangan kuantitatif yang lebih stabil dan berkesan.
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ZeroHeroTrading
//@version=5
strategy("Simple 9/20 Crossover", overlay=true)
// Define moving averages
ma9 = ta.sma(close, 9)
ma20 = ta.sma(close, 20)
// Set persistent variable to keep track of crossover condition
var bool crossoverCondition = false
// 9 MA crosses above 20 MA
// Set crossover condition to true
if ta.crossover(ma9, ma20)
crossoverCondition := true
// 9 MA crosses under 20 MA
// Reset crossover condition to false
if ta.crossunder(ma9, ma20)
crossoverCondition := false
// Set buy and sell signals
buySignal = crossoverCondition and close > open and close > ma9
sellSignal = close < ma9
// Execute trades based on signals
if (buySignal)
strategy.entry("Long", strategy.long)
// Avoid repeat entries by resetting crossover condition to false
crossoverCondition := false
if (sellSignal)
strategy.close("Long")
// Plot moving averages on the chart
plot(ma9, color=color.blue)
plot(ma20, color=color.red)