Strategi Dagangan Trend Purata Bergerak Berbilang Jangka Masa

Penulis:ChaoZhang, Tarikh: 2023-09-23 16:10:08
Tag:

Ringkasan

Strategi ini menggunakan purata bergerak dalam jangka masa yang berbeza untuk melaksanakan trend selepas perdagangan. Ia mengira purata bergerak pantas dan perlahan pada jangka masa harian, 4 jam dan 15 minit. Apabila purata bergerak pantas melintasi di atas yang perlahan pada ketiga-tiga jangka masa, ia menjadi panjang. Apabila purata bergerak pantas melintasi di bawah yang perlahan, ia menjadi pendek. Strategi ini memanfaatkan sepenuhnya maklumat harga di seluruh jangka masa untuk menapis pecah palsu dengan berkesan.

Logika Strategi

Strategi ini mengira purata bergerak pantas dan perlahan berdasarkan tiga bingkai masa yang berbeza. Ia mengambil bingkai masa harian, 4 jam dan 15 minit, dan mengira EMA pantas 21 tempoh dan EMA perlahan 34 tempoh pada setiap bingkai masa. Apabila EMA pantas melintasi di atas EMA perlahan pada bingkai masa harian, 4 jam dan 15 minit, ia menentukan aliran naik dan pergi panjang. Apabila EMA pantas melintasi di bawah EMA perlahan pada ketiga-tiga bingkai masa, ia menentukan aliran turun dan pergi pendek.

Strategi ini juga menetapkan julat masa dagangan untuk mengelakkan keadaan pasaran yang tidak menguntungkan.

Khususnya, perkara utama strategi termasuk:

  1. Masukan jangka masa yang berbeza: harian, 4 jam, 15 minit

  2. Mengira EMA pantas dan perlahan pada setiap jangka masa

  3. Pergi panjang apabila EMA cepat melintasi di atas EMA perlahan pada semua jangka masa, pergi pendek apabila di bawah

  4. Set bulan dagangan dan julat tarikh

  5. Buka kedudukan panjang/pendek berdasarkan syarat, tutup apabila syarat tidak dipenuhi

Menghakimi trend merentasi bingkai masa dapat menapis pecah palsu dengan berkesan. Menggunakan saiz kedudukan merentasi pelbagai bingkai masa juga dapat mengawal risiko.

Kelebihan

Kelebihan utama strategi ini ialah:

  1. Pengesanan trend jangka masa silang menapis pecah palsu dengan berkesan.

  2. Ukuran kedudukan pelbagai jangka masa mengurangkan risiko daripada jangka masa tunggal.

  3. Perdagangan jangka masa mengelakkan terjebak di pasaran yang tidak baik.

  4. EMA yang cepat dan perlahan merangkumi trend dengan lancar.

  5. Peraturan mudah dan jelas, penyesuaian parameter mudah menjadikan strategi mudah dilaksanakan.

  6. Secara meluas boleh digunakan di seluruh kelas aset dengan fleksibiliti yang tinggi.

Risiko

Beberapa risiko untuk dipertimbangkan untuk strategi ini:

  1. Berprestasi lebih baik dalam pasaran yang bertrend panjang, pasaran yang berbeza meningkatkan risiko whipsaw.

  2. Parameter konservatif mungkin terlepas trend yang lebih kuat. boleh memendekkan tempoh EMA atau mengurangkan bilangan jangka masa perdagangan.

  3. EMA menunjukkan prestasi yang lemah di pasaran yang bergelora.

  4. Jangka masa harian lambat untuk menentukan trend, tidak dapat keluar dari kedudukan tepat pada masanya.

  5. Julat masa dagangan tetap tidak menyesuaikan diri dengan pasaran yang berubah.

Peningkatan

Beberapa cara untuk meningkatkan strategi ini:

  1. Mengoptimumkan tempoh EMA untuk trend yang lebih lancar. Boleh menguji tempoh EMA cepat / perlahan yang lebih pendek atau menambah EMA yang lebih cepat.

  2. Tambah penunjuk momentum untuk kekuatan trend seperti MACD, RSI untuk isyarat tambahan.

  3. Mengoptimumkan saiz kedudukan berdasarkan keadaan pasaran. Sesuaikan saiz kedudukan strategi berdasarkan turun naik pasaran.

  4. Masukkan penunjuk turun naik untuk meningkatkan kemasukan dan keluar. Tambah ATR atau variasi untuk menyesuaikan diri dengan turun naik secara dinamik.

  5. Uji lebih banyak kombinasi jangka masa untuk mencari keseimbangan optimum. Boleh menambah jangka masa yang lebih tinggi atau membuang yang tertentu.

  6. Menggunakan pembelajaran mesin untuk pengoptimuman parameter automatik.

  7. Tambah pengesahan trend untuk mengelakkan whipsaws seperti memerlukan lilin berturut-turut dekat di atas EMA.

  8. Melakukan backtesting yang kukuh untuk menilai kestabilan parameter.

Kesimpulan

Strategi ini menggunakan konsep penapisan trend jangka masa silang dengan EMA cepat / perlahan untuk mewujudkan sistem trend berikut yang stabil dan cekap. Ia mempunyai kelebihan pengenalan trend dan pengurusan risiko yang tepat. Walau bagaimanapun, kawalan risiko di pasaran yang tidak menentu dan peningkatan parameter berterusan diperlukan untuk mencapai pulangan yang konsisten. Secara keseluruhan, kerangka EMA jangka masa berbilang adalah digunakan secara meluas dan pendekatan perdagangan trend yang disyorkan.


/*backtest
start: 2023-09-15 00:00:00
end: 2023-09-22 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//Cryptocurrency Trading Tools by XMAXPRO
//ATA
//Test 1.0v Date  : 10.11.2018
//

strategy("MTF+MA", overlay=false, shorttitle="MTF-MA", overlay = true,default_qty_type = strategy.percent_of_equity, default_qty_value = 100, commission_type=strategy.commission.percent,commission_value=0.1,initial_capital=100000)
src = input(title= "Source", defval=close)
fast = input(title="Input For Fast MA",  defval=21)
slow = input(title="Input For Slow MA",defval=34)
//MTF source
long = input(title="LONGTERM",  defval="D")
mid = input(title="MIDTERM",  defval="180")
short = input(title="SHORTTERM",  defval="15")
//MTF Grafikleri
ln = security(syminfo.ticker, long, src)
md = security(syminfo.ticker, mid, src)
sh = security(syminfo.ticker, short, src)
//0
lnma = ema(ln,fast) - ema(ln,slow)
mdma = ema(sh,fast) - ema(md,slow)
shma = ema(sh,fast) - ema(sh,slow)

plot(lnma,color=green,linewidth=3)
plot(mdma,color=blue,linewidth=3)
plot(shma,color=red,linewidth=3)
plot(0,color=white,linewidth=3)

longCond = lnma>0 and mdma>0  and shma>0
shortCond= lnma<0  and mdma<0  and shma <0 



monthfrom =input(8)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)
yearfrom=input(2018)
yearuntil=input(2020)

if (  longCond  ) 
    strategy.entry("LONG", strategy.long, stop=close, oca_name="TREND",  comment="LONG")
    
else
    strategy.cancel(id="LONG")
    



if ( shortCond   ) 

    strategy.entry("SHORT", strategy.short,stop=close, oca_name="TREND",  comment="SHORT")
else
    strategy.cancel(id="SHORT")


Lebih lanjut