Cette stratégie calcule deux EMA avec des périodes différentes et compare leur relation de taille pour déterminer la tendance du marché et obtenir la tendance suivante. Lorsque l'EMA à court terme dépasse l'EMA à long terme, le marché est jugé être dans une tendance à la hausse et la stratégie est longue. Lorsque l'EMA à court terme dépasse l'EMA à long terme, le marché est jugé être dans une tendance à la baisse et la stratégie est courte.
L'indicateur EMA peut filtrer le bruit du marché et refléter les changements de tendance réels. Cette stratégie utilise deux EMA avec des paramètres différents, une EMA à court terme de 34 périodes et une EMA à long terme de 89 périodes.
Lorsque l'EMA à court terme traverse au-dessus de l'EMA à long terme depuis le bas, cela indique que la tendance à court terme commence à dominer la tendance à long terme et que les prix entrent dans un canal ascendant. C'est le signal long de la stratégie. Lorsque l'EMA à court terme traverse en dessous de l'EMA à long terme depuis le haut, cela indique que la tendance à court terme commence à inverser la tendance à long terme et que les prix entrent dans un canal descendant. C'est le signal court de la stratégie. De cette façon, la stratégie tire pleinement parti du croisement des deux EMA pour capturer les signaux de tendance des changements de prix.
Après avoir fait long ou court, la stratégie maintiendra la position jusqu'à ce que le signal opposé apparaisse. Par exemple, après avoir fait long, lorsque la courte EMA traverse en dessous de la longue EMA, qui est un signal court, la position longue sera fermée et une position courte sera ouverte. Cela permet de sortir en douceur des positions longues rentables et de court-circuiter en temps opportun dans la direction inverse pour maximiser le verrouillage des profits de tendance.
L'avantage majeur de cette stratégie est qu'elle utilise pleinement les formations croisées de l'EMA pour déterminer avec précision les changements des tendances du marché, en long et en court, afin de mieux suivre les tendances.
Utilisez l'outil EMA pour déterminer la principale variation de tendance des prix.
Adopter une double structure EMA pour filtrer un peu de bruit et rendre le signal plus stable et fiable.
Les paramètres du cycle EMA sont réglables et peuvent être adaptés de manière flexible aux caractéristiques du marché afin d'obtenir des signaux de négociation plus précis.
Détenir des positions le long de la tendance pour éviter de négocier contre la tendance, ce qui peut réduire le risque de négociation.
Utilisez pleinement les profits de tendance. Une fois rentable, prenez des profits à temps pour éviter les pertes inversées.
Les principaux risques auxquels cette stratégie est confrontée sont les suivants:
Bien que les EMA puissent filtrer efficacement le bruit et déterminer la direction de la tendance, des signaux perdants fréquents intercalés peuvent se produire sur les marchés à plage, ce qui entraîne une négociation trop fréquente, augmentant les coûts et les risques de transaction.
Une sélection incorrecte des paramètres du cycle EMA peut entraîner un décalage du signal, en manquant le meilleur point d'entrée.
Ne pouvant déterminer le point d'inflexion et le temps d'inversion de la tendance, il y a un risque d'être piégé avant que le tournant ne vienne.
En réponse aux risques susmentionnés, les contre-mesures suivantes peuvent être prises:
Dans les marchés à plage, assouplir le stop loss de manière appropriée pour réduire les pertes, ou sauter complètement la négociation en attendant une tendance claire.
Optimiser la sélection des paramètres du cycle EMA pour trouver la combinaison optimale de paramètres.
L'augmentation des indicateurs supplémentaires pour déterminer la fin de la tendance et les points de basculement structurels afin d'éviter d'être pris au piège.
Il y a lieu d'optimiser davantage cette stratégie, principalement sur les points suivants:
Optimiser davantage la sélection des cycles EMA pour trouver la combinaison optimale de paramètres.
Augmenter les stratégies de stop loss telles que le stop loss mobile, le stop loss temporel, le stop loss par volatilité, etc. pour contrôler le risque des transactions uniques.
Augmenter les indicateurs supplémentaires pour déterminer la structure du marché et éviter le risque d'être pris au piège.
Ajuster les paramètres de stratégie en fonction des fluctuations structurelles à des niveaux de cycle importants, en particulier les combinaisons de paramètres multiples pour les marchés tendance et les combinaisons de paramètres courts pour les marchés à fourchette.
Incorporer une gestion des positions pour ajuster dynamiquement la taille des positions en fonction de l'utilisation du capital, du taux de rendement et d'autres indicateurs.
L'idée de base de cette stratégie est simple et claire, en utilisant des croisements d'indicateurs EMA pour déterminer les changements de tendance du marché pour aller long et court. La stratégie présente des avantages en utilisant des outils EMA pour déterminer les tendances, détenir des positions le long de la tendance et tirer parti des tendances. Mais il existe également des problèmes tels que la sélection du cycle et la capture des points d'inflexion.
/*backtest start: 2023-02-11 00:00:00 end: 2024-02-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Simple Moving Average Strategy", overlay=true) // Input for EMA lengths emaShortLength = input.int(34, title="Short EMA Length") emaLongLength = input.int(89, title="Long EMA Length") // Calculate EMAs based on inputs emaShort = ta.ema(close, emaShortLength) emaLong = ta.ema(close, emaLongLength) // Plot the EMAs plot(emaShort, color=color.blue, linewidth=2, title="EMA Short") plot(emaLong, color=color.orange, linewidth=2, title="EMA Long") // Generate long and short signals longCondition = ta.crossover(emaShort, emaLong) shortCondition = ta.crossunder(emaShort, emaLong) // Enter long positions if (longCondition) strategy.entry("Long", strategy.long) // Enter short positions if (shortCondition) strategy.entry("Short", strategy.short) // Close long positions if (shortCondition) strategy.close("Long") // Close short positions if (longCondition) strategy.close("Short")