Strategi ini menggunakan arah cerun dan hubungan silang antara pelbagai EMA untuk menentukan arah trend, untuk perdagangan trend tanpa henti.
Mengira 3 kumpulan EMA - EMA pantas, sederhana dan perlahan.
Apabila EMA pantas melintasi di atas EMA sederhana, dan cerun EMA sederhana menjadi positif, isyarat panjang dihasilkan.
Apabila EMA pantas melintasi di bawah EMA sederhana, dan cerun EMA sederhana menjadi negatif, isyarat pendek dihasilkan.
Pergi panjang apabila harga melintasi EMA yang perlahan, dan pendek apabila harga melintasi EMA yang perlahan.
Hubungan kemiringan EMA mencerminkan perubahan trend.
Pelbagai EMA meningkatkan ketepatan dalam penilaian trend.
EMA pantas, sederhana dan perlahan membezakan trend dan penyatuan.
Perubahan kemiringan EMA memberikan petunjuk awal mengenai perubahan trend.
Crossover harga juga mengesahkan untuk mengelakkan pecah palsu.
Sentiasa menjaga kedudukan sepenuhnya menangkap peluang trend.
Mengandalkan hanya EMA membawa risiko kedudukan yang besar semasa tempoh yang terikat julat.
Parameter EMA yang tidak betul mungkin terlepas titik perubahan.
Tidak dapat menentukan kekuatan trend, risiko masuk tergesa-gesa.
Tiada kawalan kerugian perdagangan tunggal yang berkesan.
Uji gabungan EMA yang berbeza untuk mencari parameter optimum.
Tambah penunjuk lain seperti MACD untuk menentukan kekuatan.
Tambahkan mekanisme stop loss untuk kawalan risiko.
Menilai kekuatan trend untuk mengelakkan kemasukan terbalik yang lebih awal.
Mengoptimumkan saiz kedudukan untuk pengurusan modal.
Hentikan perdagangan sementara apabila trend menjadi bergolak.
Strategi ini dengan bijak menggunakan kombinasi EMA untuk menentukan trend. Tetapi bergantung kepada EMA sahaja mempunyai batasan, meninggalkan ruang pengoptimuman yang besar untuk menggabungkan lebih banyak penunjuk. Mekanisme kawalan risiko juga diperlukan untuk meningkatkan kestabilan. Secara keseluruhan kerangka kerja ini direka secara saintifik, dan berpotensi berkembang menjadi strategi perdagangan trend yang kuat selepas peningkatan berterusan.
/*backtest start: 2023-08-20 00:00:00 end: 2023-09-19 00:00:00 period: 6h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("EMA Slope + EMA Cross Strategy (by ChartArt)", shorttitle="CA_-_EMA_slope_cross", overlay=true) // ChartArt's EMA Slope + EMA Cross Strategy // // Version 1.0 // Idea by ChartArt on March 10, 2018. // // This strategy uses divergences between // three moving averages and their slope // directions as well as crosses between // the price and the moving averages // to switch between long/short positions. // // The strategy is non-stop in the market // and always either long or short. // // In addition the moving averages are colored // depending if they are trending up or down. // // List of my work: // https://www.tradingview.com/u/ChartArt/ // Input price = input(close) MA1_Length = input(2,step=1, title="EMA 1 Length") MA2_Length = input(4,step=1, title="EMA 2 Length") MA3_Length = input(20,step=1, title="EMA 3 Length") switch1=input(true, title="Show Bar Color?") switch2=input(true, title="Show Moving Averages?") // Calculation MA1 = ema(price, MA1_Length) MA2 = ema(price, MA2_Length) MA3 = ema(price, MA3_Length) // Strategy long = crossunder(price, MA3) or ( change(price)<0 and change(MA1)<0 and crossunder(price,MA1) and change(MA2)>0 ) short = crossover(price, MA3) or ( change(price)>0 and change(MA1)>0 and crossover(price,MA1) and change(MA2)<0 ) if long strategy.entry("Long", strategy.long, comment="Long") if short strategy.entry("Short", strategy.short, comment="Short") // Strategy Alert alertcondition(long, title='EMA Slope + EMA Cross Strategy, Long Alert', message='Go Long!') alertcondition(short, title='EMA Slope + EMA Cross Strategy, Short Alert', message='Go Short!') // MA trend bar color up = change(MA2)>0 and change(MA3)>0 dn = change(MA2)<0 and change(MA3)<0 bar_color = up?green:dn?red:blue barcolor(switch1?bar_color:na) // MA trend output color MA2_color = change(MA2)>0?lime:change(MA2)<0?red:blue MA3_color = change(MA3)>0?lime:change(MA3)<0?red:blue // MA output EMA2 = plot(switch2?MA2:na, title="EMA 2", style=linebr, linewidth=2, color=MA2_color) EMA3 = plot(switch2?MA3:na, title="EMA 3", style=linebr, linewidth=4, color=MA3_color) fill(EMA2, EMA3, color=silver, transp=50) //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)