Cette stratégie génère des signaux d'achat et de vente basés sur le croisement des moyennes mobiles. Elle utilise des moyennes mobiles exponentielles (EMA) de 8 jours, 18 jours et 50 jours. Un signal d'achat est généré lorsque le prix dépasse l'EMA de 8 jours et est supérieur à l'EMA de 50 jours. Un signal de vente est généré lorsque l'EMA de 8 jours dépasse l'EMA de 18 jours.
Les moyennes mobiles peuvent filtrer efficacement les fluctuations des prix et refléter les tendances des prix. Les moyennes mobiles plus rapides réagissent plus rapidement aux changements de prix. Lorsque la moyenne mobile plus rapide dépasse celle plus lente, elle indique une tendance à la hausse des prix. Et lorsqu'elle dépasse, elle indique une tendance à la baisse.
Cette stratégie utilise le croisement des EMA de différentes périodes pour déterminer les changements dans les tendances des prix et générer des signaux de trading.
Les signaux d'achat sont générés lorsque la tendance à la hausse à court terme (EMA à huit jours en hausse) s'aligne sur les tendances à moyen et à long terme (prix supérieur à l'EMA à cinquante jours).
Les avantages de cette stratégie sont les suivants:
Il y a aussi des risques:
Quelques méthodes pour optimiser et atténuer les risques:
Quelques orientations pour optimiser davantage la stratégie:
Dans l'ensemble, il s'agit d'une stratégie simple et pratique, utilisant des croisements EMA pour déterminer les changements de tendance.
/*backtest start: 2023-02-16 00:00:00 end: 2024-02-22 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy('Trading EMAs', overlay=true) // Definir las medias móviles con colores personalizados ema8 = ta.ema(close, 8) ema18 = ta.ema(close, 18) ema50 = ta.ema(close, 50) plot(ema8, color=color.new(color.green, 0), title='EMA8') plot(ema18, color=color.new(color.blue, 0), title='EMA18') plot(ema50, color=color.new(color.red, 0), title='EMA50') // Condiciones de entrada longCondition = ta.crossover(close, ema8) and close > ema50 // Señal de compra cuando el precio de cierre cruza al alza la EMA de 8 y el precio está por encima de la EMA de 50 // Condiciones de salida exitLongCondition = ta.crossunder(ema8, ema18) // Señal de venta cuando EMA8 cruza por debajo de EMA18 // Ejecutar las operaciones basadas en las condiciones de entrada if longCondition strategy.entry('Long', strategy.long) // Salida de las operaciones basadas en las condiciones de salida if exitLongCondition strategy.close('Long')