
La stratégie de croisement de la moyenne est une stratégie de trading quantitative qui utilise des moyennes mobiles indicielles ((EMA) de différentes périodes pour générer des signaux de négociation. La stratégie utilise les croisements des trois EMA de 5 cycles, 9 cycles et 21 cycles pour déterminer la tendance du marché et générer des signaux d’achat et de vente. La stratégie est également combinée avec des EMA de 100 cycles et 200 cycles de plus longues périodes pour déterminer la tendance générale.
La stratégie est basée sur trois EMA de 5 cycles, 9 cycles et 21 cycles. La logique de négociation est basée sur les points suivants:
Une rupture de l’EMA à 5 cycles génère un signal d’achat lorsqu’elle traverse à la hausse l’EMA à 9 cycles; une rupture de l’EMA à 5 cycles génère un signal de vente lorsqu’elle traverse à la baisse l’EMA à 9 cycles.
L’EMA à 21 cycles peut être utilisé pour vérifier les signaux de négociation. Ainsi, les signaux d’achat sont plus efficaces lorsque l’EMA à 5 cycles et l’EMA à 9 cycles sont supérieurs à l’EMA à 21 cycles; les signaux de vente sont plus efficaces lorsque les deux sont inférieurs à l’EMA à 21 cycles.
Les EMA de 100 cycles et de 200 cycles sont utilisés pour déterminer les tendances à moyen et long terme du marché. Ils peuvent fournir une confirmation ou une alerte sur les grandes tendances des signaux de trading à court terme.
Cette stratégie présente les avantages suivants:
Les opérations sont simples et faciles à mettre en œuvre. Les calculs de l’EMA et le jugement sur les situations de croisement sont très simples.
Les EMA des cycles 5 et 9 sont très sensibles aux variations de prix et captent rapidement les tendances à court terme.
L’EMA peut être utilisé comme une ligne mobile de stop-loss.
Scalable: peut être facilement introduit dans d’autres EMA ou indicateurs techniques pour enrichir le système.
La stratégie présente également les principaux risques suivants:
Risque de faux signaux. L’intersection EMA n’est pas fiable à 100% et peut entraîner une fausse rupture.
Risque de renversement de tendance. Les croisements rapides des EMAs peuvent refléter uniquement des ajustements à court terme, sans tenir compte des renversements de tendance majeurs. Les EMAs à moyen et long terme doivent être pris en compte.
Les paramètres de réglage peuvent varier considérablement selon les variétés et les conditions du marché, ce qui nécessite une optimisation et un test approfondis.
Cette stratégie peut être optimisée sous plusieurs angles:
L’introduction d’autres indicateurs de filtrage, tels que KD, MACD, etc., réduit la probabilité de faux signaux.
Augmenter le stop-loss pour réduire les pertes individuelles.
Optimiser les paramètres pour trouver la combinaison optimale de paramètres de cycle. Optimiser dynamiquement avec des méthodes d’apprentissage automatique.
L’automatisation de l’ensemble du processus de transaction, combinée à un cadre de quantification.
L’idée générale de cette stratégie de croisement uniforme est claire et facile à utiliser. Elle permet de capturer efficacement les tendances à court terme. Cependant, il existe encore une certaine zone aveugle dans la prise de décision basée uniquement sur l’intersection de l’EMA. D’autres facteurs doivent aider à la prise de décision et à la réduction des risques.
/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © nagversion
//@version=5
strategy("5/9/21 EMA Strategy with 200 and 100 EMA", overlay=true)
// Calculate EMAs
ema5 = ta.ema(close, 5)
ema9 = ta.ema(close, 9)
ema21 = ta.ema(close, 21)
ema100 = ta.ema(close, 100)
ema200 = ta.ema(close, 200)
// Plot EMAs
plot(ema5, title="5 EMA", color=color.blue)
plot(ema9, title="9 EMA", color=color.yellow)
plot(ema21, title="21 EMA", color=color.red)
plot(ema100, title="100 EMA", color=color.purple)
plot(ema200, title="200 EMA", color=color.green)
// Strategy conditions
longCondition = ta.crossover(ema5, ema9) and ta.crossover(ema9, ema21)
shortCondition = ta.crossunder(ema5, ema9) and ta.crossunder(ema9, ema21)
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// Set strategy properties if required (like stop loss, take profit, etc.)