Cette stratégie est basée sur la comparaison de quatre lignes EMA avec des périodes différentes pour mettre en œuvre le trading suivant la tendance. Elle devient longue lorsque la ligne EMA rapide traverse au-dessus de la ligne EMA moyenne, la ligne EMA moyenne traverse au-dessus de la ligne EMA lente et la ligne EMA lente traverse au-dessus de la ligne EMA la plus lente. Elle devient courte lorsque les relations de croisement opposées se produisent.
La logique de base de cette stratégie est basée sur la comparaison de quatre lignes EMA. Les lignes EMA peuvent effectivement lisser les données de prix et mettre en évidence les principales tendances. La ligne EMA rapide reflète le changement de prix le plus rapide, tandis que l'EMA moyenne a un certain retard, l'EMA lente a plus de retard et l'EMA la plus lente a le plus de retard. Lorsque l'EMA rapide traverse au-dessus de l'EMA moyenne, l'EMA moyenne traverse au-dessus de l'EMA lente et l'EMA lente traverse au-dessus de l'EMA la plus lente, cela signale une tendance haussière et la stratégie ira longue. Lorsque la séquence de croisement opposée se produit, cela signale une tendance à la baisse et la stratégie ira courte.
La stratégie utilise également une condition de filtrage de date, ne négociant que dans la fourchette de dates spécifiée entre le 1er juin 2018 et le 31 décembre 2019.
La stratégie est basée sur les fourchettes de prix de l'EMA, qui sont les quatre lignes de l'EMA. Plus précisément, les périodes des quatre lignes de l'EMA sont respectivement de 8, 13, 21 et 34 jours.
Les avantages de cette stratégie de tendance à 4 EMA sont les suivants:
Cette stratégie comporte également certains risques:
Pour réduire les risques susmentionnés, certaines directions d'optimisation sont les suivantes:
Les principales orientations d'optimisation sont les suivantes:
Optimisation des paramètres: Adapter les périodes EMA pour qu'elles s'adaptent à différents cycles et produits afin de mieux apprécier la tendance.
Contrôle des risquesLe risque de défaillance de l'opération est calculé sur la base de l'indice de défaillance de l'opération.
Filtrage du signal: Ajouter d'autres indicateurs auxiliaires pour éviter les signaux sans tendance claire, par exemple les filtres RSI et MACD.
Prise de profitRègles de prise de bénéfices appropriées pour verrouiller les bénéfices et éviter les retracements.
Commerce automatisé: paramétrer la stratégie et l'intégrer avec les systèmes de trading automatique pour étendre l'applicabilité.
Il s'agit d'une stratégie simple et pratique de suivi des tendances basée sur des comparaisons de lignes 4-EMA. Elle réagit rapidement et suit efficacement les tendances à court et moyen terme avec de bons résultats de backtest. Nous pouvons l'optimiser en ajustant les paramètres, en ajoutant des filtres et en arrêtant les pertes pour réduire les risques et augmenter l'efficacité. La paramétrisation et l'automatisation sont également des directions importantes permettant une plus grande applicabilité. En conclusion, la stratégie 4-EMA est une stratégie de trading quantique robuste et polyvalente digne de recherches et d'optimisation ultérieures.
/*backtest start: 2022-12-19 00:00:00 end: 2023-12-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("4 EMA TREND Strategy ", overlay=true) length1 = input(8, minval=1) outFAST = ema(close,length1) plot(outFAST, color=green ,linewidth=3) length2 = input(13, minval=1) outM = ema(close, length2) plot(outM, color=yellow,linewidth=3) length3 = input(21, minval=1) outSLOW = ema(close, length3) plot(outSLOW, color=red,linewidth=3) length4 = input(34, minval=1) outSLOWEST = ema(close, length4) plot(outSLOWEST, color=black,linewidth=3) price = close yearfrom = input(2018) yearuntil =input(2019) monthfrom =input(6) monthuntil =input(12) dayfrom=input(1) dayuntil=input(31) if ( (outFAST>outM) and (outM > outSLOW) and(outSLOW>outSLOWEST)) strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY") else strategy.cancel(id="BUY") if ( (outFAST<outM) and (outM<outSLOW) and (outSLOW <outSLOWEST)) strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND", comment="SELL") else strategy.cancel(id="SELL")