Strategi ini menggabungkan EMA 8 hari, 13 hari, 21 hari dan 55 hari dan menghasilkan isyarat panjang dan pendek apabila persilangan berlaku di antara mereka, bertujuan untuk menangkap trend jangka menengah dan panjang.
Mengira EMA 8 hari, 13 hari, 21 hari dan 55 hari.
Apabila EMA 8 hari, 13 hari, 21 hari semua melintasi di atas EMA 55 hari, isyarat panjang dicetuskan.
Apabila 8-hari, 13-hari, 21-hari EMA semua menyeberangi di bawah 55-hari EMA, isyarat pendek dicetuskan.
Pergi panjang pada salib emas, pergi pendek pada salib kematian.
Posisi dekat pada persimpangan belakang.
Multiple EMA combo berkesan dalam menapis pecah palsu.
55 hari EMA sebagai jangkar mengelakkan terperangkap.
Ujian belakang menunjukkan pulangan tahunan yang stabil selama 10 tahun yang lalu.
Crossover visual, mudah digunakan, mudah digunakan.
Parameter tetap mungkin tidak sesuai dengan semua produk dan pasaran, pengoptimuman bebas diperlukan.
Tidak berkesan dalam pasaran yang berbeza, risiko whipsaws dan hentian kerap.
Tiada stop loss yang tidak dapat mengehadkan kerugian perdagangan tunggal.
Frekuensi perdagangan mungkin terlalu tinggi atau rendah, tweak parameter diperlukan.
Sampel 10 tahun terhad, memerlukan data yang lebih besar untuk mengesahkan ketahanan.
Uji gabungan tempoh EMA untuk mencari kecocokan terbaik.
Tambah penapis kelantangan untuk mengelakkan gangguan palsu.
Melaksanakan stop loss tetap atau bergerak.
Mengoptimumkan saiz kedudukan untuk mengurangkan risiko setiap perdagangan.
Perdagangan kedua-dua sisi panjang dan pendek.
Memperluas ujian ke dalam lebih banyak produk dan jangka masa yang lebih lama.
Strategi ini mengenal pasti trend jangka menengah dan panjang menggunakan persilangan EMA dengan cara visual yang intuitif. Kekuatan adalah ketara dan kesederhanaan. Tetapi parameter memerlukan pengoptimuman yang lebih banyak dan tidak mempunyai kawalan risiko. Lebih banyak penunjuk teknikal harus diperkenalkan untuk menapis isyarat dan berhenti ditambahkan untuk mengehadkan kerugian. Juga memerlukan uji balik sampel besar di seluruh produk dan masa untuk menyempurnakan dan mengesahkan, untuk menjadi sistem trend berikut yang mantap.
/*backtest start: 2023-08-21 00:00:00 end: 2023-09-20 00:00:00 period: 6h basePeriod: 15m 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/ // © ColinMccann18 //@version=4 // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // --------------------------------------------------------------RULES------------------------------------------------------------------------------ // - VISUALLY REPRESENTS THE CROSSING OF 8,13,21,55 EMA'S FROM KROWNS PROGRAM strategy(title="CM EMA Trend Cross STRAT", shorttitle="CM EMA Strat", overlay=true) ema8 = ema(close,8) ema13 = ema(close, 13) ema21 = ema(close, 21) ema55 = ema(close, 55) //PLOT plot(ema8, title="EMA 1",linewidth=2, color=#00eeff) plot(ema13, title="EMA 2",linewidth=2, color=#fff900) plot(ema21, title="EMA 3",linewidth=2, color=#42ff0f) plot(ema55, title="EMA 4",linewidth=2, color=#8b49ff) //LOGIC--------------------------------------------------------------------------------------------------------------------------------- emacrossover = crossover(ema21, ema55) and ema8 and ema13 > ema55 emacrossunder = crossunder(ema21, ema55) and ema8 and ema13 < ema55 //Long---------------------------------------------------------------------------------------------------------------------------------- longCondition = emacrossover closelongCondition = emacrossunder strategy.entry("Long", strategy.long, qty=na, when=longCondition) strategy.close("Close Long", when=closelongCondition) //Short---------------------------------------------------------------------------------------------------------------------------------- shortCondition = emacrossunder closeshortCondition = emacrossover strategy.entry("Short", strategy.short,qty=na, when=shortCondition) strategy.close("Close Short", when=closeshortCondition)