Cette stratégie utilise une combinaison de l'EMA Zéro Lag et de l'EMA Hull pour mettre en œuvre le suivi des tendances.
Comptez d'abord l'EMA à retard zéro:EMA1 = ema(close, Period) EMA2 = ema(EMA1, Period) Difference = EMA1 - EMA2 ZeroLagEMA = EMA1 + Difference
Où ZeroLagEMA est la EMA Zéro Lag. Elle élimine le problème du retard de la EMA régulière.
Calculer ensuite la courbe lissée Hull EMA:
```
n2ma = 2*wma(ZeroLagEMA, round(S_period/2))
nma = wma(ZeroLagEMA, S_period)
n1 = wma(n2ma - nma, sqn)
```
Enfin, déterminez la direction de la tendance en fonction de la relation de magnitude entre l'actuelle Hull EMA (n1) et l'Hull EMA (n2) des périodes précédentes et formulez la stratégie de négociation.
Le plus grand avantage de cette stratégie est la capacité de capturer avec précision les tendances.
Zero Lag EMA élimine le problème de retard de l'EMA régulier et peut capturer les changements de prix plus rapidement.
Le doublement de l'EMA de la coque assouplit les prix et filtre un peu de bruit pour capturer les tendances plus clairement.
Par rapport à l'utilisation de l'EMA ou de l'EMA de Hull seul, la combinaison tire parti des forces des deux pour une stratégie plus précise et fiable.
Les principaux risques de cette stratégie sont les suivants:
Des paramètres de période et de S_period incorrects peuvent rendre la stratégie insensible au marché et faire rater des opportunités de négociation.
Dans les marchés à fourchette, l'EMA et l'EMA de Hull peuvent produire davantage de faux signaux croisés qui nécessitent une prudence.
Elle ne peut pas gérer efficacement les écarts de prix du jour au lendemain.
Par conséquent, des essais minutieux des paramètres sont nécessaires, les signaux des indicateurs doivent être interprétés avec prudence et les risques d'écart de prix doivent être évités.
La stratégie peut être optimisée dans les aspects suivants:
Combinaisons de paramètres à tester sur différents marchés et dans des délais différents pour une meilleure adaptabilité.
Ajouter d'autres indicateurs pour filtrer les faux signaux de rupture, tels que KDJ, MACD, etc., pour améliorer la stabilité.
Ajouter un stop loss pour contrôler les pertes d'une seule transaction.
Optimiser le calendrier d'entrée pour améliorer davantage le taux de gain, par exemple en évitant les transactions contre la tendance.
Cette stratégie utilise la combinaison Zero Lag Hull EMA pour capturer avec précision et sensibilité les tendances du marché pour une tendance à faible risque après le trading. Des améliorations supplémentaires de la stabilité peuvent être obtenues grâce à l'optimisation des paramètres, au filtrage des signaux, au stop loss, etc. Dans l'ensemble, la stratégie est simple, pratique et adaptée aux paires de devises et indices en tendance.
/*backtest start: 2023-08-19 00:00:00 end: 2023-09-18 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 // Zero Lag EMA combined with Hull moving average for smoothing purposes. // author: email: sbginter@gmail.com strategy("Ujanja", overlay=true) Period = input(title="Period",defval=30, minval=1) S_period=input(title="Smoother Period",defval=176) EMA1= ema(close,Period) EMA2= ema(EMA1,Period) Difference= EMA1 - EMA2 ZeroLagEMA= EMA1 + Difference n2ma=2*wma(ZeroLagEMA,round(S_period/2)) nma=wma(ZeroLagEMA,S_period) diff=n2ma-nma sqn=round(sqrt(S_period)) n2ma1=2*wma(ZeroLagEMA[1],round(S_period/2)) nma1=wma(ZeroLagEMA[1],S_period) diff1=n2ma1-nma1 sqn1=round(sqrt(S_period)) n1=wma(diff,sqn) n2=wma(diff1,sqn) c=n1>n2?green:red ma=plot(n1,color=c) longCondition = n1>n2 if (longCondition) strategy.entry("Long", strategy.long) shortCondition = longCondition != true if (shortCondition) strategy.entry("Short", strategy.short)