Stratégie de moyenne mobile double exponentielle

Auteur:ChaoZhang est là., Date: le 26 septembre 2023 20:28:11
Les étiquettes:

Résumé

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 logique de la stratégie

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.

Analyse des avantages

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.

Analyse des risques

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.

Directions d'optimisation

Il y a encore des possibilités d'optimisation:

  1. Testez différentes combinaisons de périodes pour trouver les paramètres optimaux.

  2. Incorporer d'autres indicateurs comme le RSI pour confirmer les signaux et éviter les faux signaux.

  3. Optimisez les mécanismes de stop loss, comme le trailing stop loss pour bloquer les profits.

  4. Optimiser la gestion des capitaux, comme la taille des positions basée sur la taille du compte, ou la taille ajustée à la volatilité.

Conclusion

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 ) 




Plus de