Strategi Terobosan Purata Pergerakan Berganda


Tarikh penciptaan: 2024-04-01 11:58:55 Akhirnya diubah suai: 2024-04-01 11:58:55
Salin: 2 Bilangan klik: 568
1
fokus pada
1617
Pengikut

Strategi Terobosan Purata Pergerakan Berganda

Gambaran keseluruhan

“Strategi penembusan ketinggalan dua rata-rata” adalah strategi perdagangan analisis teknikal yang biasa digunakan. Strategi ini menggabungkan purata bergerak sederhana ((SMA) dan purata gelombang sebenar ((ATR) dari dua tempoh yang berbeza, bertujuan untuk menangkap titik perubahan trend pasaran dan mencapai perdagangan dengan keuntungan tinggi dengan risiko rendah.

Prinsip Strategi

Prinsip-prinsip utama strategi ini ialah:

  1. Hitung purata bergerak mudah (SMA) untuk dua kitaran yang berbeza, dengan kitaran lalai 14 dan 50.
  2. Mengira ATR, yang digunakan untuk mengukur kadar turun naik pasaran, dengan kitaran lalai 14 .
  3. Merangkai ATR atas dan bawah, sebagai kawasan rujukan untuk turun naik harga. Rangka atas diperoleh dengan harga tertinggi ditambah ATR kali ganda ((default 1.5)), dan rangka bawah diperoleh dengan harga terendah tolak ATR kali ganda.
  4. Apabila harga penutupan melintasi garis purata jangka pendek dan garis purata jangka pendek berada di atas garis purata jangka panjang, ia menghasilkan isyarat multitasking dan melukis anak panah ke atas di bawah garis K.
  5. Apabila harga penutupan melintasi garis purata jangka pendek di bawah dan garis purata jangka pendek di bawah garis purata jangka panjang, isyarat shorting dihasilkan dan anak panah ke bawah digambar di atas garis K.
  6. Tetapkan stop loss dan stop loss, stop loss adalah harga minimum dikurangkan ATR kali ganda, stop loss adalah harga pembukaan ditambah ((harga pembukaan - stop loss) kali ganda 2).

Dari prinsip di atas dapat dilihat bahawa strategi ini menggabungkan penilaian trend sistem garis rata dan pengukuran kadar turun naik indikator ATR, dengan trend yang mengikuti trend, sambil mengawal risiko penarikan balik, adalah strategi yang berorientasikan trend.

Analisis kelebihan

“Strategi Penembusan Gagal Garis Dua” mempunyai kelebihan berikut:

  1. Pengesanan trend: menilai arah trend melalui sistem garis rata, menangkap trend pasaran yang besar, mematuhi pasaran.
  2. Kawalan risiko: Mengukur kadar turun naik pasaran dengan menggunakan indikator ATR, menetapkan titik henti yang munasabah, dan mengawal penarikan balik dalam julat yang boleh diterima.
  3. Fleksibiliti parameter: Parameter seperti kitaran garis purata, kitaran ATR dan kelipatan boleh dioptimumkan dan disesuaikan mengikut pasaran dan varieti yang berbeza, dengan beberapa kebolehgunaan universal.
  4. Intuitif: isyarat perdagangan mudah dan jelas, sesuai untuk digunakan oleh pelabur dari pelbagai peringkat.

Analisis risiko

Walaupun ada kelebihan, strategi ini mempunyai risiko:

  1. Perdagangan yang kerap: Strategi ini mungkin menghasilkan isyarat perdagangan yang kerap, meningkatkan kos perdagangan, apabila pasaran tidak jelas dan tidak menentu.
  2. Ketinggalan: Sistem linear secara semula jadi mempunyai ketinggalan yang mungkin berlaku pada awal peralihan pasaran.
  3. Pengoptimuman parameter: Pengaturan parameter yang berbeza mempunyai kesan yang besar terhadap prestasi strategi, memerlukan pengoptimuman parameter untuk pasaran dan varieti yang berbeza, meningkatkan kesukaran pelaksanaan.

Untuk menangani risiko di atas, pengoptimuman dan penambahbaikan boleh dilakukan dalam aspek berikut:

  1. Memperkenalkan penapis trend: sebelum menghasilkan isyarat perdagangan, tentukan arah trend kitaran besar, dan hanya berdagang jika trend kitaran besar jelas, mengurangkan perdagangan yang kerap.
  2. Mengoptimumkan Hentian Kerosakan: Anda boleh mempertimbangkan untuk memperkenalkan cara berhenti dinamik seperti Hentian Bergerak, Hentian Kadar Fluktuasi, dan menyesuaikan tempat berhenti mengikut pergerakan kadar pasaran, meningkatkan fleksibiliti strategi.
  3. Optimasi gabungan: menggabungkan strategi ini dengan petunjuk teknikal atau faktor asas lain untuk meningkatkan kekuatan strategi.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Optimasi penyesuaian parameter: mencari kombinasi parameter yang optimum secara automatik untuk pelbagai varieti dan kitaran, mengurangkan jumlah kerja pengendalian parameter buatan. Optimasi boleh menggunakan algoritma genetik, carian grid dan lain-lain.
  2. Penapisan isyarat: Setelah menghasilkan isyarat perdagangan, anda boleh memperkenalkan lebih lanjut kepada petunjuk teknikal lain atau faktor asas untuk mengesahkan isyarat untuk kali kedua, meningkatkan kualiti isyarat. Contohnya, tambah petunjuk jumlah transaksi, menilai kekuatan trend; tambah data ekonomi makro, menilai sama ada persekitaran yang lebih baik untuk meneruskan trend.
  3. Pengurusan kedudukan: Apabila membuka kedudukan, anda boleh menyesuaikan saiz kedudukan secara dinamik berdasarkan faktor seperti turun naik pasaran, risiko akaun, dan lain-lain, untuk mengawal risiko perdagangan tunggal. Sebagai contoh, menggunakan formula Kelly, kaedah perkadaran tetap dan lain-lain untuk pengurusan kedudukan.
  4. Hentikan bergerak: Hentikan awal adalah tetap, dan apabila harga bergerak ke arah yang menguntungkan, anda boleh mempertimbangkan untuk bergerak ke arah yang menguntungkan, mengurangkan penarikan balik, meningkatkan kecekapan penggunaan dana.

Pengoptimuman di atas dapat meningkatkan fleksibiliti, kestabilan, dan keuntungan strategi, tetapi perlu diingat bahawa pengoptimuman berlebihan dapat menyebabkan penyesuaian kurva strategi, yang tidak berfungsi dengan baik di luar sampel, dan oleh itu memerlukan pengesahan balasan yang mencukupi di dalam dan di luar sampel.

ringkaskan

“Strategi penembusan ketinggalan dua garis rata” adalah strategi jenis trend yang klasik, dengan menilai arah trend melalui sistem garis rata, menggunakan indikator ATR untuk mengawal risiko, sambil menangkap trend trend. Walaupun terdapat beberapa masalah ketinggalan dan perdagangan yang kerap, dengan mengoptimumkan henti kerugian, memperkenalkan penapisan isyarat, penyesuaian parameter, pengoptimuman kedudukan, dan lain-lain, prestasi strategi ini dapat ditingkatkan lagi, menjadikannya sebagai strategi perdagangan kuantitatif yang praktikal.

Kod sumber strategi
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="2 Moving Averages", shorttitle="2MA", overlay=true)

// Moving Averages
len = input(14, minval=1, title="Length MA1")
src = input(close, title="Source MA1")
ma1 = sma(src, len)

len2 = input(50, minval=1, title="Length MA2")
src2 = input(close, title="Source MA2")
ma2 = sma(src2, len2)

// Plotting Moving Averages
plot(ma1, color=#0b6ce5, title="MA1")
plot(ma2, color=#00ff80, linewidth=2, title="MA2")

// ATR Bands
atrLength = input(14, title="ATR Length")
atrMultiplier = input(1.5, title="ATR Multiplier")
upperBand = high + atr(atrLength) * atrMultiplier
lowerBand = low - atr(atrLength) * atrMultiplier

u =plot(upperBand, color=color.rgb(217, 220, 223, 84), title="ATR Upper Band")
l = plot(lowerBand, color=color.rgb(217, 220, 223, 84), title="ATR Lower Band")
fill(u, l, color=#471eb821, title="ATR Background")

// Conditions for plotting arrows
upArrowCondition = ma1 > ma2 and crossover(close, ma1)
downArrowCondition = ma1 < ma2 and crossunder(close, ma1)

// Plotting arrows
plotshape(upArrowCondition, style=shape.arrowup, color=color.rgb(66, 45, 255), size=size.normal, location=location.belowbar, title="Up Arrow")
plotshape(downArrowCondition, style=shape.arrowdown, color=color.red, size=size.normal, location=location.abovebar, title="Down Arrow")
// Checkbox for trade execution
showTrades = input(true, title="Hiển thị giao dịch")

// Buy Condition
if (upArrowCondition and showTrades)
    strategy.entry("Buy", strategy.long)

// Sell Condition
if (downArrowCondition and showTrades)
    strategy.entry("Sell", strategy.short)

// Stop Loss and Take Profit
stopLossBuy = low - atr(14) * atrMultiplier
takeProfitBuy = close + (close - stopLossBuy) * 2

stopLossSell = high + atr(14) * atrMultiplier
takeProfitSell = close - (stopLossSell - close) * 2

strategy.exit("Exit Buy", "Buy", stop=stopLossBuy, limit=takeProfitBuy)
strategy.exit("Exit Sell", "Sell", stop=stopLossSell, limit=takeProfitSell)