
Cette stratégie est un système de suivi de tendances basé sur l’analyse technique, qui utilise principalement les signaux croisés des moyennes mobiles à 50 cycles de l’indice (EMA) et des moyennes mobiles simples à 200 cycles (MA) pour capturer les tendances du marché. La stratégie intègre un mécanisme de stop-loss dynamique, permettant de contrôler les risques et de bloquer les gains grâce à des points d’arrêt et d’arrêt prédéfinis.
La logique centrale de la stratégie est basée sur un jugement croisé de deux équations: lorsque l’EMA à 50 cycles monte et traverse l’MA à 200 cycles, le système génère un signal de prise de position; lorsque l’EMA à 50 cycles descend et traverse l’MA à 200 cycles, le système génère un signal de prise de position. Après chaque ouverture de position, le système définit automatiquement un point d’arrêt (en dessous de 3 points du prix d’entrée) et un point d’arrêt (en dessous de 7,5 points du prix d’entrée).
La stratégie, combinant un système classique de croisement biuniversale et un mécanisme de stop-loss dynamique, construit un système de trading de suivi de tendance complet. L’avantage de la stratégie réside dans son degré élevé de systématisation et sa maîtrise des risques, mais dans la pratique, il faut encore effectuer des ajustements optimisés en fonction de l’environnement du marché et de la taille des fonds.
/*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")