Stratégie de suivi de tendance avec trois EMA combinées avec DMI et MACD


Date de création: 2024-01-25 15:48:59 Dernière modification: 2024-01-25 15:48:59
Copier: 0 Nombre de clics: 1177
1
Suivre
1617
Abonnés

Stratégie de suivi de tendance avec trois EMA combinées avec DMI et MACD

Aperçu

Il s’agit d’une stratégie de suivi de tendance qui utilise les trois indices des moyennes mobiles (EMA), de l’indicateur de tendance (DMI) et de l’indicateur de concentration des moyennes mobiles (MACD) pour déterminer la direction de la tendance et générer des signaux d’achat et de vente. Les composants clés comprennent les signaux croisés en or de l’EMA, la détermination de la force de la tendance par le DMI et la confirmation de la dynamique par le MACD.

Logique de stratégie

La logique de base repose sur trois EMA - 34, 89 et 200 - calculées sur la période M5 pour identifier la tendance générale. Les EMA de 34 cycles fournissent une direction à court terme, tandis que les EMA de 89 et 200 définissent la tendance à moyen et long terme.

Pour acheter un déclencheur de signal:

  • Le prix de clôture est à 34 EMA.
  • +DI (mouvement de la tendance des bulls) > 17
  • ADX (intensité de tendance) > -DI

Le signal de vente est généré:

  • Le prix de clôture a traversé la 34 EMA
  • -DI ((mouvement de tendance à la baisse) > 17
  • ADX > +DI

Les critères du MACD sont également validés avant l’admission.

Les avantages

Cette stratégie présente plusieurs avantages clés:

  1. La tendance à la croisée et à la capture précoce est inversée par la croisée et la capture précoce de l’or à l’EMA à court terme
  2. Utilisez plusieurs EMA pour juger de la force de la tendance dans différentes périodes
  3. Les filtres DMI aident à éviter les signaux erronés en examinant les mouvements de tendances fortes
  4. Le MACD fournit une confirmation dynamique pour améliorer la qualité et la probabilité des opportunités de trading
  5. La combinaison des indicateurs améliore la précision et la rapidité des signaux d’entrée

Les risques

Les risques les plus importants:

  1. Les croisements qui reposent uniquement sur l’or EMA sont vulnérables à l’erreur et à la délocalisation.
  2. La confirmation multiple peut entraîner un retard au moment de la génération du signal.
  3. Les pays les plus vulnérables à l’effet d’un renversement soudain des tendances

Les mesures d’atténuation

  • Utilisation d’une gestion appropriée des stop-loss et des positions
  • Optimiser les paramètres EMA en fonction des conditions actuelles du marché
  • Observer le mouvement des entités de prix pour une confirmation visuelle

Direction d’optimisation

La stratégie a été améliorée:

  1. Augmentation des indicateurs tels que le RSI pour juger des zones de survente
  2. La synthèse de l’analyse de la quantité de trafic génère un signal plus fort
  3. Optimisation des indicateurs et des paramètres en fonction des différents actifs et des différentes périodes
  4. L’utilisation de l’apprentissage automatique pour apprendre de nouvelles données de marché

Résumer

Dans l’ensemble, il s’agit d’un puissant système de suivi des tendances, combiné à l’utilisation de plusieurs indicateurs simples mais pratiques. Les trois EMA sont configurés pour juger des tendances sur plusieurs périodes, le DMI et le MACD examinent les opportunités d’entrée et les probabilités de profit. Associé à une optimisation et à une gestion des risques appropriées, il peut devenir un outil efficace pour les traders de tendances.

Code source de la stratégie
/*backtest
start: 2023-01-18 00:00:00
end: 2024-01-24 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("2 EMA di+ Buy Sell, strategy ", overlay=true)

// Define the EMA calculation function
ema(src, length) =>
    ta.ema(src, length)

// Calculate and plot EMA on M5
ema34_M5 = ema(close, 34)
ema89_M5 = ema(close, 89)
ema200_M5 = ema(close, 200)

// Plot EMAs
plot(ema34_M5, color=color.green, title="EMA 34 M5", linewidth=2)
plot(ema89_M5, color=color.blue, title="EMA 89 M5", linewidth=2)
plot(ema200_M5, color=color.black, title="EMA 200 M5", linewidth=2)

// Define DMI parameters
len = input(14, title="DI Length")
up = ta.change(high)
down = -ta.change(low)
plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
trur = ta.rma(ta.tr, len)
plusDI = 100 * ta.rma(plusDM, len) / trur
minusDI = 100 * ta.rma(minusDM, len) / trur

// Calculate ADX
adxValue = 100 * ta.rma(math.abs(plusDI - minusDI) / (plusDI + minusDI == 0 ? 1 : plusDI + minusDI), len)

// Define MACD parameters
fastLength = input(12, title="Fast Length")
slowLength = input(26, title="Slow Length")
signalLength = input(9, title="Signal Length")

// Calculate MACD
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalLength)

// Create buy/sell conditions
buyCondition = close > ema34_M5 and plusDI > 17 and adxValue > minusDI 
sellCondition = close < ema34_M5 and minusDI > 17 and adxValue > plusDI 

// Strategy logic
strategy.entry("Buy", strategy.long, when = buyCondition)
strategy.entry("Sell", strategy.short, when = sellCondition)

// Create alerts for buy/sell signals
alertcondition(buyCondition, title="Buy Signal", message="Buy Signal")
alertcondition(sellCondition, title="Sell Signal", message="Sell Signal")

// Plot buy/sell arrows on the price chart
bgcolor(buyCondition ? color.new(color.green, 90) : sellCondition ? color.new(color.red, 90) : na)

plotarrow(buyCondition ? 1 : sellCondition ? -1 : na, colorup=color.new(color.green, 0), colordown=color.new(color.red, 0), offset=-1)