Strategi Pengesanan Trend Purata Bergerak Berganda

Penulis:ChaoZhang, Tarikh: 2023-12-19 14:49:52
Tag:

img

Ringkasan

Dual Moving Average Trend Tracking Strategy adalah strategi perdagangan kuantitatif yang menggunakan dua purata bergerak dengan tempoh yang berbeza untuk menentukan arah trend pasaran. Ia menggunakan status panjang / pendek purata bergerak cepat dan perlahan untuk mengenal pasti trend dan membuat perdagangan di sepanjang arah trend.

Prinsip-prinsip

Strategi ini menggunakan dua purata bergerak, termasuk purata bergerak pantas (contohnya 10 tempoh) dan purata bergerak perlahan (contohnya 30 tempoh).

Secara khusus, strategi pertama mengira purata bergerak pantas dan perlahan. Kemudian ia membandingkan purata bergerak pantas semasa dengan tempoh sebelumnya untuk melihat sama ada yang semasa lebih besar daripada yang sebelumnya. Jika ya, berikan nilai 1 yang menunjukkan trend naik. Jika tidak, berikan -1 untuk trend turun. Lakukan perkara yang sama untuk purata bergerak perlahan.

Akhirnya, tentukan trend dengan nilai kedua-dua purata bergerak. Jika kedua-dua nilai adalah 1, keputusan akhir adalah 1, menunjukkan trend menaik. Jika kedua-dua adalah -1, keputusan akhir adalah -1, menunjukkan trend menurun. Jika nilai berbeza, mengekalkan keputusan trend sebelumnya.

Setelah mengenal pasti arah trend, strategi akan panjang pada trend menaik dan pendek pada trend menurun.

Kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Logiknya mudah dan mudah difahami dan dilaksanakan.
  2. Purata bergerak berganda membantu menapis bunyi pasaran dan mengenal pasti trend.
  3. Parameter purata bergerak boleh diselaraskan untuk produk dan jangka masa yang berbeza.
  4. Tidak perlu menetapkan stop loss atau mengambil keuntungan, yang mengurangkan kekerapan perdagangan dan membantu mengikuti trend.
  5. Boleh fleksibel pergi panjang sahaja atau pendek hanya berdasarkan pilihan.

Risiko

Terdapat juga beberapa risiko strategi:

  1. Purata bergerak mungkin terlambat semasa perubahan harga yang tajam, menyebabkan kehilangan masa kemasukan terbaik.
  2. Penembusan palsu dan persilangan yang salah mungkin berlaku, mengakibatkan isyarat perdagangan yang salah.
  3. Tiada stop loss ditetapkan, tidak dapat dengan berkesan mengehadkan kerugian perdagangan tunggal.
  4. Kedudukan penuh secara lalai membawa risiko yang lebih besar, memerlukan operasi yang berhati-hati.

Untuk mengurangkan risiko, parameter purata bergerak boleh ditetapkan dengan lebih munasabah, penunjuk lain boleh diperkenalkan, stop loss dan mengambil keuntungan boleh ditetapkan, dan saiz kedudukan boleh diselaraskan.

Pengoptimuman

Strategi ini boleh dioptimumkan lagi dalam aspek berikut:

  1. Tambah lebih banyak jenis purata bergerak seperti SMA dan EMA untuk menggunakan lebih banyak alat carta.
  2. Memperkenalkan penunjuk bantuan lain seperti MACD dan BOLL untuk meningkatkan ketepatan.
  3. Tambah garis trend dan analisis sokongan / rintangan untuk isyarat perdagangan yang lebih tepat.
  4. Tetapkan stop loss dan ambil keuntungan untuk mengawal kerugian perdagangan tunggal.
  5. Mengoptimumkan saiz kedudukan berdasarkan penggunaan dana, nisbah keuntungan dll.

Kesimpulan

Strategi Pengesanan Trend Purata Bergerak Berganda mempunyai logik yang jelas menggunakan purata bergerak berganda untuk menapis bunyi bising dan mengenal pasti trend, dan berdagang mengikut arah trend. Ini adalah strategi trend yang biasa. Pedagang boleh memilih panjang sahaja atau pendek hanya berdasarkan pilihan. Masih ada beberapa risiko strategi. Penunjuk tambahan, henti rugi / ambil keuntungan harus ditambah untuk mengawal risiko. Dengan berbuat demikian, keuntungan yang stabil jangka panjang dapat dicapai.


/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © noro
// 2020

//@version=4
strategy(title = "Noro's TrendMA Strategy", shorttitle = "TrendMA str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_value = 0.1)

//Settings
needlong = input(true, title = "Long")
needshort = input(true, title = "Short")
fast = input(10, minval = 1, title = "MA Fast (red)")
slow = input(30, minval = 2, title = "MA Slow (blue)")
type = input(defval = "SMA", options = ["SMA", "EMA"], title = "MA Type")
src = input(ohlc4, title = "MA Source")
showma = input(true, title = "Show MAs")
showbg = input(false, title = "Show Background")

//MAs
fastma = type == "EMA" ? ema(src, fast) : sma(src, fast)
slowma = type == "EMA" ? ema(src, slow) : sma(src, slow)

//Lines
colorfast = showma ? color.red : na
colorslow = showma ? color.blue : na
plot(fastma, color = colorfast, title = "MA Fast")
plot(slowma, color = colorslow, title = "MA Slow")

//Trend
trend1 = fastma > fastma[1] ? 1 : -1
trend2 = slowma > slowma[1] ? 1 : -1
trend = 0
trend := trend1 == 1 and trend2 == 1 ? 1 : trend1 == -1 and trend2 == -1 ? -1 : trend[1]

//Backgrouns
colbg = showbg == false ? na : trend == 1 ? color.lime : trend == -1 ? color.red : na
bgcolor(colbg, transp = 80)

//Trading
if trend == 1
    if needlong
        strategy.entry("Long", strategy.long)
    if needlong == false
        strategy.close_all()

if trend == -1
    if needshort
        strategy.entry("Short", strategy.short)
    if needshort == false
        strategy.close_all()
    

Lebih lanjut