Tendance EMA combinée à une stratégie de trading de rupture de cycle

EMA SL TP ROI
Date de création: 2025-01-17 16:17:10 Dernière modification: 2025-01-17 16:17:10
Copier: 3 Nombre de clics: 102
1
Suivre
1166
Abonnés

Tendance EMA combinée à une stratégie de trading de rupture de cycle

Aperçu

Il s’agit d’une stratégie de trading quantitative qui combine la tendance EMA, la rupture de cycle et le filtrage des sessions de trading. La stratégie repose principalement sur l’évaluation de la direction de la tendance de la moyenne mobile et utilise le modèle de rupture du prix à la position clé du cycle comme signal de trading. Dans le même temps, un filtrage des périodes de trading est introduit pour améliorer la qualité du trading. La stratégie utilise des méthodes de stop loss en pourcentage et de take profit pour contrôler les risques.

Principe de stratégie

La logique fondamentale de la stratégie comprend les éléments clés suivants :

  1. Utilisez l’EMA sur 20 jours comme outil de détection de tendance et n’optez pour une position longue que lorsque le prix est supérieur à l’EMA et pour une position courte lorsque le prix est inférieur à l’EMA.
  2. Recherchez des modèles englobants à proximité du niveau de rotation clé (nombre rond de 5 USD) comme signaux de trading
  3. N’ouvrez des positions que pendant les séances de bourse de Londres et de New York pour éviter les périodes de faible volatilité
  4. Les signaux longs doivent répondre aux conditions suivantes en même temps : modèle d’avalement haussier, prix supérieur à l’EMA et séance de trading valide
  5. Le signal court doit répondre aux conditions suivantes en même temps : modèle d’avalement baissier, prix inférieur à l’EMA et dans une séance de trading valide
  6. Utilisez un ratio risque/récompense de stop loss de 1 % et de take profit de 1,5 % pour la gestion des transactions

Avantages stratégiques

  1. Le mécanisme de confirmation de signaux multiples améliore considérablement la fiabilité des transactions
  2. Combinez l’analyse technique et la psychologie des prix pour améliorer votre taux de réussite
  3. Le filtrage par période de temps garantit la négociation pendant les périodes de marché actives et évite les fausses cassures
  4. Le stop loss et le take profit à pourcentage fixe facilitent la gestion des risques
  5. La logique de la stratégie est claire, facile à comprendre et à mettre en œuvre
  6. Adapté aux environnements de marché volatils

Risque stratégique

  1. Peut générer trop de faux signaux dans un marché latéral
  2. Le stop loss fixe et le take profit ne sont pas suffisamment flexibles et peuvent manquer les grandes tendances du marché
  3. S’appuyer uniquement sur des indicateurs techniques sans tenir compte des facteurs fondamentaux
  4. Vous pouvez être confronté à un risque de dérapage lorsque des nouvelles importantes sont publiées
  5. Les restrictions sur les séances de trading peuvent vous faire manquer de bonnes opportunités lors d’autres séances

Orientation de l’optimisation de la stratégie

  1. Introduire un mécanisme adaptatif de stop-loss et de take-profit, s’adaptant dynamiquement en fonction de la volatilité du marché
  2. Ajoutez des indicateurs de confirmation de volume pour améliorer la crédibilité des percées
  3. Ajoutez un filtre de force de tendance pour éviter de trader sur des tendances faibles
  4. Envisagez d’introduire des indicateurs de sentiment du marché pour optimiser le moment d’entrée
  5. Développer un algorithme plus intelligent pour identifier la position de rotation

Résumer

Cette stratégie construit un système de trading logiquement rigoureux en combinant plusieurs mécanismes tels que les tendances de la moyenne mobile, les modèles de prix et le filtrage des périodes. Bien qu’il existe certaines limites, on s’attend à ce que la stabilité et la rentabilité de la stratégie soient encore renforcées grâce à une optimisation et une amélioration continues. La stratégie convient comme cadre de base d’un système de suivi des tendances à moyen et long terme, et peut être personnalisée et améliorée en fonction des besoins commerciaux réels.

Code source de la stratégie
/*backtest
start: 2024-12-17 00:00:00
end: 2025-01-16 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/


//@version=6
strategy("The Gold Box Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=200)

// Inputs
roundNumberInterval = input.int(5, title="Round Number Interval ($)", minval=1)
useEMA = input.bool(true, title="Use 20 EMA for Confluence")
emaLength = input.int(20, title="EMA Length")

// Session times for London and NY
londonSession = input("0300-1200", title="London Session (NY Time)")
nySession = input("0800-1700", title="New York Session (NY Time)")

// EMA Calculation
emaValue = ta.ema(close, emaLength)

// Plot Round Number Levels
roundLow = math.floor(low / roundNumberInterval) * roundNumberInterval
roundHigh = math.ceil(high / roundNumberInterval) * roundNumberInterval

// for level = roundLow to roundHigh by roundNumberInterval
//     line.new(x1=bar_index - 1, y1=level, x2=bar_index, y2=level, color=color.new(color.gray, 80), extend=extend.both)

// Session Filter
inLondonSession = not na(time("1", londonSession))
inNYSession = not na(time("1", nySession))
inSession = true

// Detect Bullish and Bearish Engulfing patterns
bullishEngulfing = close > open[1] and open < close[1] and close > emaValue and inSession
bearishEngulfing = close < open[1] and open > close[1] and close < emaValue and inSession

// Entry Conditions
if bullishEngulfing
    strategy.entry("Long", strategy.long, comment="Bullish Engulfing with EMA Confluence")
if bearishEngulfing
    strategy.entry("Short", strategy.short, comment="Bearish Engulfing with EMA Confluence")

// Stop Loss and Take Profit
stopLossPercent = input.float(1.0, title="Stop Loss (%)", minval=0.1) / 100
takeProfitPercent = input.float(1.5, title="Take Profit (%)", minval=0.1) / 100

strategy.exit("Exit Long", "Long", stop=close * (1 - stopLossPercent), limit=close * (1 + takeProfitPercent))
strategy.exit("Exit Short", "Short", stop=close * (1 + stopLossPercent), limit=close * (1 - takeProfitPercent))