Cette stratégie est un système de suivi des tendances basé sur l'analyse technique, utilisant principalement les signaux croisés entre la moyenne mobile exponentielle (EMA) de 50 périodes et la moyenne mobile simple (MA) de 200 périodes pour capturer les tendances du marché.
La logique de base est basée sur le croisement de deux moyennes mobiles: un signal d'achat est généré lorsque l'EMA de 50 périodes franchit le MA de 200 périodes, tandis qu'un signal de vente est déclenché lorsque l'EMA de 50 périodes franchit le MA de 200 périodes. Après chaque entrée, le système définit automatiquement des niveaux de stop-loss (3 points à partir de l'entrée) et des niveaux de take-profit (7,5 points à partir de l'entrée).
Cette stratégie combine un système classique de double moyenne mobile croisée avec des mécanismes dynamiques de stop-loss et de take-profit pour créer un système de trading complet suivant la tendance. Ses atouts résident dans une grande systématisation et un contrôle complet des risques, bien que l'application pratique nécessite une optimisation en fonction des conditions spécifiques du marché et de la taille du capital.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-24 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("200 MA & 50 EMA Crossover Strategy with **Estimated** SL & TP", overlay=true) // Parameters for the 200 MA and 50 EMA ma200 = ta.sma(close, 200) // 200-period simple moving average ema50 = ta.ema(close, 50) // 50-period exponential moving average // Plot the MA and EMA on the chart plot(ma200, color=color.blue, linewidth=2, title="200 MA") plot(ema50, color=color.red, linewidth=2, title="50 EMA") // Define **estimated** stop loss and take profit values // SL = 3 points, TP = 7.5 points from the entry price sl_points = 3 tp_points = 7.5 // Buy signal: when the 50 EMA crosses above the 200 MA (bullish crossover) if (ta.crossover(ema50, ma200)) strategy.entry("Buy", strategy.long) // Set **estimated** stop loss and take profit strategy.exit("Take Profit/Stop Loss", "Buy", stop=strategy.position_avg_price - sl_points, limit=strategy.position_avg_price + tp_points) // Sell signal: when the 50 EMA crosses below the 200 MA (bearish crossover) if (ta.crossunder(ema50, ma200)) strategy.entry("Sell", strategy.short) // Set **estimated** stop loss and take profit strategy.exit("Take Profit/Stop Loss", "Sell", stop=strategy.position_avg_price + sl_points, limit=strategy.position_avg_price - tp_points) // Optional: Close the position when an opposite signal appears if (strategy.position_size > 0 and ta.crossunder(ema50, ma200)) strategy.close("Buy") if (strategy.position_size < 0 and ta.crossover(ema50, ma200)) strategy.close("Sell")