La stratégie de moyenne mobile double exponentielle DEMA est une stratégie de trading à court terme basée sur la DEMA (Double Exponential Moving Average). Elle combine la douceur des moyennes mobiles et la rapidité de réponse des EMA, visant à capturer les tendances à court terme des prix et à générer des profits en négociant sur les croisements DEMA.
La stratégie repose principalement sur des croix dorées et des croix de mort entre la ligne rapide et la ligne lente de DEMA pour déterminer les signaux d'achat et de vente.
Plus précisément, la ligne rapide est calculée comme suit:
demaFast = 2 * ema(close, fastPeriod) - ema(ema(close, fastPeriod), fastPeriod)
Et la ligne lente est:
demaSlow = 2 * ema(close, slowPeriod) - ema(ema(close, slowPeriod), slowPeriod)
où fastPeriod et slowPeriod représentent respectivement les périodes de la ligne rapide et de la ligne lente.
Lorsque la ligne rapide traverse au-dessus de la ligne lente, un signal d'achat est généré.
buy = crossover(demaSlow, demaFast)
sell = crossunder(demaSlow, demaFast)
La stratégie détermine la direction des échanges basée sur les croisements de lignes DEMA.
Comparées aux moyennes mobiles traditionnelles, les lignes DEMA sont plus sensibles et peuvent réagir plus rapidement aux variations de prix.
En outre, les lignes DEMA intègrent la douceur des moyennes mobiles, ce qui aide à filtrer un peu de bruit du marché et à éviter de faux signaux.
En outre, la combinaison de lignes rapides et lentes évite dans une certaine mesure les faux croisements.
En résumé, la stratégie de la moyenne mobile double exponentielle DEMA présente les avantages d'une réponse rapide, d'un filtrage du bruit et de signaux fiables et stables.
Bien que plus stables que les EMA, les lignes DEMA peuvent encore souffrir de faux croisements, générant des signaux incorrects.
En outre, en tant que stratégie à court terme, elle est sensible aux coûts de négociation. Une fréquence de négociation élevée ou une taille de transaction réduite peuvent éroder les bénéfices. Des paramètres commerciaux raisonnables doivent être définis pour contrôler les coûts.
Enfin, aucune stratégie d'indicateur technique ne peut éviter complètement le stop loss.
Il y a encore des possibilités d'optimisation:
Testez différentes combinaisons de périodes pour trouver les paramètres optimaux.
Incorporer d'autres indicateurs comme le RSI pour confirmer les signaux et éviter les faux signaux.
Optimisez les mécanismes de stop loss, comme le trailing stop loss pour bloquer les profits.
Optimiser la gestion des capitaux, comme la taille des positions basée sur la taille du compte, ou la taille ajustée à la volatilité.
La stratégie DEMA double moyenne mobile exponentielle est globalement une stratégie de trading à court terme stable. Elle a des capacités de réponse et de lissage rapides. Par rapport aux SMA, elle peut capturer plus d'opportunités à court terme. Avec un réglage des paramètres et des mécanismes appropriés, la rentabilité et la stabilité de la stratégie peuvent être encore améliorées. Elle convient aux investisseurs qui souhaitent un trading à court terme à haute fréquence.
/*backtest start: 2022-09-19 00:00:00 end: 2023-09-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ strategy(title = "DEMA Strategy", shorttitle = "DEMA Strategy",initial_capital=1000, commission_value=0.2, commission_type =strategy.commission.percent, default_qty_value=100 , overlay = false, pyramiding=10, default_qty_type=strategy.percent_of_equity) //@Moneros 2017 //Based on The DEMA is a fast-acting moving average that is more responsive to market changes than a traditional moving average // !!!! IN ORDER TO AVOID REPAITING ISSUES !!!! // !!!! DO NOT VIEW IN LOWER RESOLUTIONS THAN res/2 PARAMETER !!!! // for example res = 120 view >= 60m res = 60 view >= 30m // the length of the DEMA sampling shouldn't be longer than a candle // Best profits tested on BTCUSD //res = 105 slowPeriod = 2 fastPeriod = 32 //res = 125 slowPeriod = 3 fastPeriod = 21 //res = 120 slowPeriod = 2 fastPeriod = 32 //res = 130 slowPeriod = 1 fastPeriod = 24 //res = 40 slowPeriod = 4 fastPeriod = 93 //res = 60 slowPeriod = 1 fastPeriod = 67 fastPeriod = input(defval = 32, title = "DEMA FAST Period", minval = 2) slowPeriod = input(defval = 2, title = "DEMA SLOW Period", minval = 1) res = input(title="Resolution - not lower than chart", defval="120") demaFast = request.security(syminfo.tickerid, res, 2 * ta.ema(close, fastPeriod) - ta.ema(ta.ema(close, fastPeriod), fastPeriod) ) demaSlow = request.security(syminfo.tickerid,res, 2 * ta.ema(close, slowPeriod) - ta.ema(ta.ema(close, slowPeriod), slowPeriod) ) plot(demaFast,color=color.red) plot(demaSlow,color=color.lime) buy = ta.crossover(demaSlow, demaFast) sell = ta.crossunder(demaSlow, demaFast) // value [1] for avoid repaiting bottom bars bgcolor( buy[1] ? color.lime : na, transp=0) bgcolor( sell[1] ? color.red : na, transp=0) strategy.entry("BUY", strategy.long, 1, when = buy) strategy.entry("SELL", strategy.short, 1, when = sell )