Strategi silang purata bergerak berganda

Penulis:ChaoZhang, Tarikh: 2024-04-03 15:12:10
Tag:MASMA

img

Ringkasan

Strategi ini menggunakan dua purata bergerak dengan tempoh yang berbeza (cepat dan perlahan) untuk menjana isyarat perdagangan. Apabila MA pantas melintasi di atas MA perlahan, ia menjana isyarat beli; apabila MA pantas melintasi di bawah MA perlahan, ia menjana isyarat jual. Strategi ini juga menetapkan stop loss dan mengambil tahap keuntungan untuk mengawal risiko dan mengunci keuntungan.

Prinsip Strategi

Prinsip utama strategi ini adalah menggunakan ciri trend berikut purata bergerak. Purata bergerak boleh meratakan turun naik harga dan mencerminkan trend utama harga. Purata bergerak jangka pendek lebih sensitif terhadap perubahan harga, sementara purata bergerak jangka panjang bertindak balas lebih perlahan. Apabila purata bergerak jangka pendek melintasi purata bergerak jangka panjang, ia menunjukkan bahawa trend harga mungkin telah berubah.

Khususnya, apabila MA pantas (purata bergerak jangka pendek) melintasi di atas MA perlahan (purata bergerak jangka panjang), ia menunjukkan bahawa trend menaik mungkin bermula, menjana isyarat beli; sebaliknya, apabila MA pantas melintasi di bawah MA perlahan, ia menunjukkan bahawa trend menurun mungkin bermula, menjana isyarat jual. Pada masa yang sama, strategi menetapkan 2% stop loss dan 10% mengambil keuntungan untuk mengawal risiko dan mengunci keuntungan.

Kelebihan Strategi

  1. Sederhana dan mudah difahami: Logik strategi ini jelas dan mudah difahami dan dilaksanakan. Ia hanya memerlukan pengiraan dua purata bergerak dengan tempoh yang berbeza dan menilai hubungan silang mereka untuk menjana isyarat perdagangan.

  2. Pengesanan trend: Kelebihan utama strategi purata bergerak terletak pada keupayaan pengesanan trend. Dengan menggunakan persilangan MA cepat dan perlahan, ia dapat menangkap perubahan dalam trend harga dan menyesuaikan kedudukan dagangan dengan tepat pada masanya.

  3. Kawalan risiko: Strategi menetapkan tahap stop loss dan mengambil keuntungan yang jelas, yang dapat mengawal secara berkesan pendedahan risiko perdagangan tunggal. Sebaik sahaja harga mencapai tahap stop loss atau mengambil keuntungan, strategi akan menutup kedudukan secara automatik, mengelakkan kerugian berlebihan atau keuntungan.

Risiko Strategi

  1. Pilihan parameter: Prestasi strategi ini sebahagian besarnya bergantung pada pemilihan tempoh MA yang cepat dan perlahan. Gabungan tempoh yang berbeza boleh membawa kepada hasil perdagangan yang berbeza. Bagaimana memilih kombinasi parameter yang optimum adalah salah satu risiko utama yang dihadapi oleh strategi ini.

  2. Pasaran bergolak: Dalam pasaran bergolak, harga berfluktuasi dengan kerap tetapi tidak mempunyai trend yang jelas. Pada masa ini, MA yang cepat dan lambat boleh bersilang dengan kerap, menghasilkan sebilangan besar isyarat perdagangan, yang membawa kepada overtrading dan kos perdagangan yang tinggi.

  3. Lag: Purata bergerak adalah penunjuk yang tertinggal, dan tindak balas mereka terhadap perubahan harga mempunyai kelewatan tertentu. Ini bermakna bahawa strategi mungkin terlepas beberapa peluang trend awal atau gagal menutup kedudukan dengan tepat pada masanya apabila trend berbalik.

Arahan Pengoptimuman Strategi

  1. Pengoptimuman parameter: Dengan menguji semula kombinasi tempoh yang berbeza, kita boleh mencari tetapan parameter dengan prestasi sejarah terbaik. Ini memerlukan ujian dan pengesahan komprehensif pada data dalam sampel dan di luar sampel.

  2. Penapisan trend: Untuk mengurangkan overtrading di pasaran yang bergolak, penapisan trend indikator seperti ADX atau ParabolicSAR boleh diperkenalkan. Perdagangan hanya dibuat apabila trend jelas, mengelakkan perdagangan di pasaran julat.

  3. Hentikan kerugian dinamik: Hentikan kerugian peratusan tetap mungkin tidak sesuai untuk semua persekitaran pasaran. Mekanisme hentian kerugian dinamik, seperti hentian kerugian ATR atau hentian kerugian, boleh dipertimbangkan, yang membolehkan tahap hentian kerugian disesuaikan secara dinamik dengan turun naik pasaran.

  4. Pengoptimuman portfolio: Strategi ini boleh digabungkan dengan strategi lain yang tidak berkaitan untuk meningkatkan pulangan keseluruhan dan kestabilan. Melalui saiz kedudukan yang munasabah dan pengurusan risiko, keuntungan keseluruhan dapat ditingkatkan sambil memastikan kadar kemenangan yang tinggi.

Ringkasan

Strategi crossover purata bergerak berganda adalah strategi trend yang mudah dan mudah digunakan. Ia menjana isyarat perdagangan berdasarkan hubungan crossover MA yang cepat dan perlahan sambil menetapkan stop loss tetap dan mengambil tahap keuntungan untuk mengawal risiko. Walaupun strategi ini mudah difahami dan dilaksanakan, performanya sebahagian besarnya bergantung pada pemilihan parameter dan menghadapi risiko overtrading di pasaran yang bergolak. Melalui pengoptimuman parameter, penapisan trend, stop loss dinamik, dan kombinasi strategi, ketahanan dan keuntungan strategi ini dapat ditingkatkan lagi, menjadikannya alat perdagangan kuantitatif yang boleh dipercayai.


/*backtest
start: 2023-03-28 00:00:00
end: 2024-04-02 00:00:00
period: 1d
basePeriod: 1h
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/
// © uugankhuu

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

// Define length for fast and slow moving averages
fastLength = input(9, title="Fast MA Length")
slowLength = input(21, title="Slow MA Length")

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

// Generate buy and sell signals
buySignal = ta.crossover(fastMA, slowMA)
sellSignal = ta.crossunder(fastMA, slowMA)

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

// Execute trades based on signals
strategy.entry("Buy", strategy.long, when=buySignal)
strategy.close("Buy", when=sellSignal)

// Set stop loss and take profit levels
stopLoss = input(0.02, title="Stop Loss (%)") // 2% stop loss
takeProfit = input(0.10, title="Take Profit (%)") // 10% take profit

strategy.exit("Take Profit/Stop Loss", "Buy", stop=close * (1 - stopLoss), limit=close * (1 + takeProfit))



Berkaitan

Lebih lanjut