Sumber dimuat naik... memuat...

Trend Crossover Purata Bergerak Berbilang Tempoh Mengikut Strategi

Penulis:ChaoZhang, Tarikh: 2024-07-30 10:54:14
Tag:EMAMASMASMMARMAWMAVWMA

img

Ringkasan

Strategi ini adalah sistem perdagangan mengikut trend berdasarkan persilangan purata bergerak pelbagai tempoh. Ia menggunakan empat purata bergerak dari tempoh yang berbeza untuk mengenal pasti trend pasaran dan menghasilkan isyarat perdagangan apabila purata bergerak jangka pendek melintasi purata bergerak jangka sederhana. Strategi ini juga menggabungkan mekanisme pengurusan risiko dengan menetapkan stop-loss untuk mengawal risiko penurunan. Pendekatan ini bertujuan untuk menangkap trend pasaran jangka menengah hingga panjang sambil menapis bunyi pasaran jangka pendek melalui kombinasi pelbagai purata bergerak.

Prinsip Strategi

Prinsip teras strategi ini adalah menggunakan persilangan pelbagai purata bergerak untuk menentukan perubahan dalam trend pasaran.

  1. Ia menggunakan empat purata bergerak: MA1 (20 tempoh), MA2 (50 tempoh), MA3 (100 tempoh), dan MA4 (200 tempoh).
  2. Isyarat beli dihasilkan apabila MA1 melintasi di atas MA2 dan harga penutupan di atas MA4.
  3. Isyarat jual dihasilkan apabila MA1 melintasi di bawah MA2 dan harga penutupan di bawah MA4.
  4. Selepas masuk, stop-loss ditetapkan pada harga terendah (untuk kedudukan panjang) atau harga tertinggi (untuk kedudukan pendek) di titik masuk.
  5. Posisi ditutup apabila isyarat silang bertentangan berlaku atau stop-loss dipukul.

Reka bentuk ini memanfaatkan kepekaan purata bergerak jangka pendek (MA1) terhadap perubahan pasaran sambil menggunakan purata bergerak jangka sederhana (MA2) dan jangka panjang (MA4) untuk mengesahkan trend keseluruhan, dengan itu mengurangkan risiko pecah palsu.

Kelebihan Strategi

  1. Keupayaan yang kuat untuk mengikuti trend: Gabungan pelbagai purata bergerak secara berkesan menangkap trend pasaran jangka sederhana hingga panjang, mengurangkan kesan turun naik jangka pendek.

  2. Pengurusan risiko yang kukuh: Mekanisme stop-loss dinamik membantu mengawal pendedahan risiko untuk setiap perdagangan.

  3. Fleksibiliti yang tinggi: Strategi ini membolehkan pengguna menyesuaikan jenis dan parameter purata bergerak, yang membolehkan pengoptimuman untuk pasaran dan instrumen perdagangan yang berbeza.

  4. Visualisasi yang baik: Pedagang dapat secara intuitif memerhatikan keadaan pasaran dan isyarat perdagangan melalui purata bergerak berwarna yang berbeza dan penanda latar belakang.

  5. Kemudahan penyesuaian yang tinggi: Strategi ini boleh digunakan untuk pelbagai rangka masa dan instrumen perdagangan, menunjukkan penerapan yang luas.

  6. Tahap automasi yang tinggi: Strategi ini boleh sepenuhnya automatik, mengurangkan gangguan emosi manusia.

Risiko Strategi

  1. Lag: Purata bergerak adalah penunjuk yang secara semula jadi ketinggalan, yang boleh menyebabkan penurunan yang ketara semasa pembalikan trend awal.

  2. Tidak berkesan di pasaran yang berkisar: Perpindahan purata bergerak yang kerap di pasaran sampingan boleh menyebabkan perdagangan berlebihan dan kerugian berturut-turut.

  3. Risiko pecah palsu: Walaupun menggunakan pelbagai purata bergerak untuk pengesahan, isyarat palsu masih boleh berlaku semasa turun naik jangka pendek.

  4. Tetapan stop-loss yang berpotensi ketat: Menggunakan harga tertinggi / terendah semasa masuk sebagai stop-loss boleh menyebabkan keluar awal di pasaran yang tidak menentu.

  5. Mengabaikan faktor pasaran lain: Bergantung hanya pada harga dan purata bergerak, strategi tidak mempertimbangkan faktor penting lain seperti jumlah dan asas.

  6. Sensitiviti parameter: Parameter purata bergerak yang berbeza boleh membawa kepada hasil yang berbeza dengan ketara, menimbulkan risiko terlalu banyak.

Arahan Pengoptimuman Strategi

  1. Memperkenalkan stop-loss dinamik: Pertimbangkan untuk menggunakan ATR (Average True Range) untuk menetapkan tahap stop-loss yang lebih munasabah yang menyesuaikan diri dengan perubahan turun naik pasaran.

  2. Tambah penapisan kekuatan trend: Sertakan penunjuk seperti ADX (Indeks Arah Purata) untuk mengukur kekuatan trend dan hanya masukkan kedudukan di pasaran trend yang kuat.

  3. Pertimbangkan faktor jumlah: Gunakan jumlah sebagai syarat pengesahan untuk isyarat perdagangan untuk meningkatkan kebolehpercayaan isyarat.

  4. Mengoptimumkan masa kemasukan: Tunggu tempoh pengesahan selepas persilangan purata bergerak atau menggabungkan dengan penunjuk teknikal lain (seperti RSI) untuk mengoptimumkan titik kemasukan.

  5. Tambah penangguhan berhenti: Melaksanakan penangguhan berhenti untuk menangkap lebih banyak keuntungan dalam trend yang berterusan.

  6. Penyesuaian parameter: Pertimbangkan untuk menggunakan kaedah parameter adaptif, seperti menyesuaikan tempoh purata bergerak secara dinamik berdasarkan turun naik pasaran.

  7. Mengintegrasikan analisis asas: Sesuaikan tingkah laku strategi semasa siaran data ekonomi penting atau peristiwa khas untuk menangani potensi turun naik yang tidak normal.

Kesimpulan

Strategi trend-mengikuti crossover purata bergerak berbilang tempoh adalah kaedah perdagangan kuantitatif klasik dan berkesan. Dengan menggabungkan pelbagai purata bergerak, ia dapat menangkap trend jangka menengah hingga panjang sambil menapis bunyi bising jangka pendek hingga tahap tertentu. Kelebihan utama strategi ini terletak pada kepekaan terhadap trend dan kelengkapan pengurusan risiko.

Arahan pengoptimuman masa depan harus memberi tumpuan kepada peningkatan kualiti isyarat, meningkatkan pengurusan risiko, dan meningkatkan kebolehsesuaian strategi. Dengan memperkenalkan lebih banyak penunjuk teknikal dan faktor pasaran, sistem perdagangan yang lebih komprehensif dan kukuh dapat dibina. Sementara itu, pengoptimuman parameter strategi dan mekanisme penyesuaian adalah kunci untuk peningkatan prestasi.

Secara keseluruhan, strategi ini menyediakan rangka kerja asas yang kukuh untuk perdagangan mengikut trend. Melalui pengoptimuman dan penambahbaikan berterusan, ia berpotensi menjadi sistem perdagangan automatik yang cekap dan boleh dipercayai. Walau bagaimanapun, pelabur masih harus menilai dengan teliti keadaan pasaran ketika menggunakan strategi ini dan membuat penyesuaian yang sesuai berdasarkan pilihan risiko individu dan objektif pelaburan.


//@version=5
strategy("Moving Average Ribbon with Orders", shorttitle="MA Ribbon Orders", overlay=true)

// Hàm tính toán các loại MA
ma(source, length, type) =>
    type == "SMA" ? ta.sma(source, length) :
     type == "EMA" ? ta.ema(source, length) :
     type == "SMMA (RMA)" ? ta.rma(source, length) :
     type == "WMA" ? ta.wma(source, length) :
     type == "VWMA" ? ta.vwma(source, length) :
     na

// MA1
show_ma1   = input(true   , "MA №1", inline="MA #1")
ma1_type   = input.string("SMA"  , ""     , inline="MA #1", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma1_source = input(close  , ""     , inline="MA #1")
ma1_length = input.int(20     , ""     , inline="MA #1", minval=1)
ma1_color  = input(color.new(color.yellow, 0), ""     , inline="MA #1")
ma1 = ma(ma1_source, ma1_length, ma1_type)
plot(show_ma1 ? ma1 : na, color = ma1_color, title="MA №1")

// MA2
show_ma2   = input(true   , "MA №2", inline="MA #2")
ma2_type   = input.string("SMA"  , ""     , inline="MA #2", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma2_source = input(close  , ""     , inline="MA #2")
ma2_length = input.int(50     , ""     , inline="MA #2", minval=1)
ma2_color  = input(color.new(color.orange, 0), ""     , inline="MA #2")
ma2 = ma(ma2_source, ma2_length, ma2_type)
plot(show_ma2 ? ma2 : na, color = ma2_color, title="MA №2")

// MA3
show_ma3   = input(true   , "MA №3", inline="MA #3")
ma3_type   = input.string("SMA"  , ""     , inline="MA #3", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma3_source = input(close  , ""     , inline="MA #3")
ma3_length = input.int(100    , ""     , inline="MA #3", minval=1)
ma3_color  = input(color.new(color.red, 0), ""     , inline="MA #3")
ma3 = ma(ma3_source, ma3_length, ma3_type)
plot(show_ma3 ? ma3 : na, color = ma3_color, title="MA №3")

// MA4
show_ma4   = input(true   , "MA №4", inline="MA #4")
ma4_type   = input.string("SMA"  , ""     , inline="MA #4", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma4_source = input(close  , ""     , inline="MA #4")
ma4_length = input.int(200    , ""     , inline="MA #4", minval=1)
ma4_color  = input(color.new(color.maroon, 0), ""     , inline="MA #4")
ma4 = ma(ma4_source, ma4_length, ma4_type)
plot(show_ma4 ? ma4 : na, color = ma4_color, title="MA №4")

// Điều kiện điểm MUA và BAN
buy_signal = ta.crossover(ma1, ma2) and close > ma4
sell_signal = ta.crossunder(ma1, ma2) and close < ma4

// Vẽ các điểm MUA và BAN
plotshape(series=buy_signal, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal", text="MUA")
plotshape(series=sell_signal, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal", text="BAN")

// Quản lý trạng thái lệnh
var float entry_price_long = na
var float stop_price_long = na
var float entry_price_short = na
var float stop_price_short = na

if (buy_signal)
    entry_price_long := close
    stop_price_long := low
    strategy.entry("Long", strategy.long)

if (sell_signal)
    entry_price_short := close
    stop_price_short := high
    strategy.entry("Short", strategy.short)

// Điều kiện thoát lệnh
exit_condition_long = ta.crossunder(ma1, ma2) or close < stop_price_long
exit_condition_short = ta.crossover(ma1, ma2) or close > stop_price_short

if (exit_condition_long)
    strategy.exit("Exit Long", "Long", stop=stop_price_long)
    strategy.close("Long")

if (exit_condition_short)
    strategy.exit("Exit Short", "Short", stop=stop_price_short)
    strategy.close("Short")

// Vẽ vùng MUA và BAN
var float buy_price = na
var float sell_price = na

if (buy_signal)
    buy_price := close

if (sell_signal)
    sell_price := close

bgcolor(buy_price and na(sell_price) ? color.new(color.green, 90) : na)
bgcolor(sell_price and na(buy_price) ? color.new(color.red, 90) : na)


Berkaitan

Lebih lanjut