Pengenalpastian momentum aliran purata bergerak berganda dan sistem perdagangan stop loss

EMA SMA
Tarikh penciptaan: 2024-11-25 11:09:00 Akhirnya diubah suai: 2024-11-25 11:09:00
Salin: 0 Bilangan klik: 431
1
fokus pada
1617
Pengikut

Pengenalpastian momentum aliran purata bergerak berganda dan sistem perdagangan stop loss

Gambaran keseluruhan

Strategi ini adalah sistem pengesanan trend berdasarkan purata bergerak indeks empat kali ganda ((EMA) untuk mengenal pasti trend pasaran melalui perpaduan dan penyelarasan EMA 9, 21, 50 dan 200 dan untuk mengawal risiko dengan peratusan stop loss. Strategi ini menentukan arah trend pasaran dengan menilai urutan empat garis rata-rata, mengambil lebih banyak peluang apabila garis rata-rata jangka pendek berada di atas garis rata-rata jangka panjang, dan sebaliknya melakukan blanko, sambil menetapkan peratusan stop loss tetap untuk mengawal risiko.

Prinsip Strategi

Strategi ini menggunakan purata bergerak indeks dari empat kitaran yang berbeza (9, 21, 50, 200) untuk menilai trend pasaran dengan melihat hubungan antara garis rata-rata ini. Apabila EMA 9 berada di atas EMA 21, EMA 21 berada di atas EMA 50, dan EMA 50 berada di atas EMA 200, sistem menganggap bahawa pasaran berada dalam trend naik yang kuat dan mengeluarkan lebih banyak.

Kelebihan Strategik

  1. Pelbagai persilangan garis rata-rata memberikan isyarat pengesahan trend yang lebih dipercayai, mengurangkan risiko penembusan palsu
  2. Untuk menilai kekuatan trend melalui susunan garis purata berkala yang berbeza, anda boleh menyaring bunyi pasaran dengan berkesan
  3. Tetapan peratusan stop loss memberikan mekanisme kawalan risiko yang jelas
  4. Logik strategi ringkas dan jelas, mudah difahami dan dilaksanakan
  5. Sesuai untuk pelbagai pasaran dan tempoh masa, dengan kebolehgunaan yang kuat

Risiko Strategik

  1. Isyarat palsu yang boleh berlaku dalam pasaran yang bergolak, menyebabkan hentian berterusan
  2. Sistem garis rata mempunyai ketinggalan dan mungkin terlepas pergerakan harga penting pada awal trend
  3. Stop loss peratusan tetap mungkin tidak sesuai untuk semua keadaan pasaran dan kadar turun naik
  4. Tidak mengambil kira kesan perubahan kadar turun naik pasaran terhadap tetapan stop loss
  5. Kurangnya sasaran keuntungan boleh menyebabkan keuntungan tidak dapat dilaksanakan dengan berkesan

Arah pengoptimuman strategi

  1. Memperkenalkan jarak hentian ATR yang disesuaikan secara dinamik untuk memudahkan perubahan kadar turun naik pasaran
  2. Menambah penapis kekuatan trend, seperti penunjuk ADX, untuk meningkatkan kualiti isyarat masuk
  3. Menambah mekanisme henti rugi mudah alih untuk melindungi keuntungan yang lebih baik
  4. Memperkenalkan penunjuk kuantiti pertukaran sebagai penunjuk tambahan untuk pengesahan trend
  5. Pertimbangkan untuk menambah sasaran keuntungan atau menggerakkan mekanisme penangguhan
  6. Mengoptimumkan parameter kitaran rata-rata untuk menjadikannya lebih sesuai dengan ciri-ciri pasaran tertentu

ringkaskan

Ini adalah sistem perdagangan trend yang disusun dengan baik, yang menyediakan mekanisme pengenalan trend yang lebih dipercayai dengan penggunaan gabungan pelbagai garis rata-rata, sambil menggunakan peratusan stop loss tetap untuk mengawal risiko. Walaupun sistem ini agak ketinggalan zaman, tetapi dengan pengoptimuman parameter yang munasabah dan penambahan petunjuk tambahan, kestabilan dan keuntungan strategi dapat ditingkatkan lagi.

Kod sumber strategi
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-23 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("4 EMA Strategy with Stop Loss", overlay=true)

// Define the EMA lengths
ema1_length = input(9, title="EMA 1 Length")
ema2_length = input(21, title="EMA 2 Length")
ema3_length = input(50, title="EMA 3 Length")
ema4_length = input(200, title="EMA 4 Length")

// Calculate the EMAs
ema1 = ta.ema(close, ema1_length)
ema2 = ta.ema(close, ema2_length)
ema3 = ta.ema(close, ema3_length)
ema4 = ta.ema(close, ema4_length)

// Plot EMAs on the chart
plot(ema1, color=color.blue, title="EMA 9")
plot(ema2, color=color.orange, title="EMA 21")
plot(ema3, color=color.green, title="EMA 50")
plot(ema4, color=color.red, title="EMA 200")

// Define conditions for Buy and Sell signals
buy_condition = (ema1 > ema2 and ema2 > ema3 and ema3 > ema4)
sell_condition = (ema1 < ema2 and ema2 < ema3 and ema3 < ema4)

// Input stop loss percentage
stop_loss_perc = input(2.0, title="Stop Loss %")

// Execute buy signal
if (buy_condition)
    strategy.entry("Buy", strategy.long)
    
    // Set stop loss at a percentage below the entry price
    strategy.exit("Sell", "Buy", stop=strategy.position_avg_price * (1 - stop_loss_perc / 100))

// Execute sell signal
if (sell_condition)
    strategy.entry("Sell", strategy.short)

    // Set stop loss at a percentage above the entry price
    strategy.exit("Cover", "Sell", stop=strategy.position_avg_price * (1 + stop_loss_perc / 100))