Voir comment télécharger gratuitement des robots de trading
Retrouvez-nous sur Telegram !
Rejoignez notre page de fans
Un script intéressant ?
Poster un lien vers celui-ci -
laisser les autres l'évaluer
Vous avez aimé le script ? Essayez-le dans le terminal MetaTrader 5
Scripts

Creating a Simple News Filter for XAUUSD Trading on MT5 - script pour MetaTrader 5

Vues:
129
Note:
(3)
Publié:
2025.06.06 11:53
MQL5 Freelance Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance

XAUUSD (Or) est un instrument de trading populaire sur le marché des changes en raison de sa forte volatilité et de son potentiel de profit. Cependant, les événements économiques majeurs, tels que les salaires non agricoles, les décisions sur les taux d'intérêt de la Fed ou les annonces de la Banque centrale européenne, peuvent provoquer des pics de prix importants, ce qui présente des risques pour les stratégies de trading automatisées. Pour gérer ces risques, un filtre d'actualités dans un Expert Advisor (EA) peut interrompre le trading pendant les périodes d'actualités à fort impact. Dans cet article, je vous montrerai comment créer un filtre de nouvelles simple pour le trading du XAUUSD sur MT5 et je partagerai un exemple de code pratique pour vous aider à démarrer.

Pourquoi utiliser un filtre d'actualités pour le trading du XAUUSD ?

Les événements d'actualité liés à l'USD, à la GBP ou à l'EUR entraînent souvent des mouvements brusques dans les prix du XAUUSD. Par exemple, l'annonce d'une hausse des taux de la Fed peut entraîner une chute rapide des prix de l'or, déclenchant des stop-loss ou des pertes inattendues dans un système de trading automatisé. Un filtre d'actualité peut vous aider :

  • Mettre en pause les transactions : En interrompant temporairement les transactions avant et après les événements d'actualité majeurs afin d'éviter la volatilité.
  • Réduire le risque : protéger votre compte contre les fluctuations soudaines du marché.
  • Améliorer la cohérence : En s'assurant que votre EA ne négocie que dans des conditions de marché stables.

Dans la section suivante, je fournirai un extrait de code MQL5 simple pour mettre en œuvre un filtre de nouvelles pour votre stratégie de trading XAUUSD.

//+------------------------------------------------------------------+
//| Filtre de nouvelles simple pour le trading du XAUUSD|
//+------------------------------------------------------------------+
#property copyright "Duy Van NGUY"
#property link      "
https://www.mql5.com/fr/users/wazatrader"
#property version   "1.00"

input int MinutesBeforeNews = 15; // Quelques minutes avant l'annonce d'une nouvelle pour interrompre les transactions
input int MinutesAfterNews  = 15; // Reprise de la négociation quelques minutes après la publication de la nouvelle

// Heures d'actualité simulées (à des fins de démonstration, remplacer par une source de données d'actualité réelle)
datetime newsTimes[] = {D'2025.05.07 14:30:00'}; // Exemple : Actualités à 14h30 le 7 mai 2025

//+------------------------------------------------------------------+
//| Vérifier si la négociation doit être interrompue en raison d'une nouvelle |
//+------------------------------------------------------------------+
bool IsNewsTime()
{
   datetime currentTime = TimeCurrent();
   
   for(int i = 0; i < ArraySize(newsTimes); i++)
   {
      datetime newsTime = newsTimes[i];
      datetime startPause = newsTime - MinutesBeforeNews * 60; // Pause X minutes avant les nouvelles
      datetime endPause = newsTime + MinutesAfterNews * 60;   // Reprise X minutes après les nouvelles
      
      if(currentTime >= startPause && currentTime <= endPause)
      {
         Print("News Filter: Trading paused due to upcoming news at ", newsTime);
         return true; // Pause de l'échange
      }
   }
   
   return false; // Sûr d'être commercialisé
}

//+------------------------------------------------------------------+
//| Fonction d'initialisation de l'expert|
//+------------------------------------------------------------------+
int OnInit()
{
   return(INIT_SUCCEEDED);
}

//+------------------------------------------------------------------+
//| Fonction de tic-tac expert|
//+------------------------------------------------------------------+
void OnTick()
{
   if(IsNewsTime())
   {
      return; // Ne pas effectuer d'opérations pendant les heures d'actualité
   }
   
   // Ajoutez votre logique de trading XAUUSD ici
   Print("Safe to trade XAUUSD");
}

//+------------------------------------------------------------------+
//| Fonction de désinitialisation de l'expert|
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
   // Nettoyage du code si nécessaire
}
//+------------------------------------------------------------------+

Explication du code

  • Entrées : MinutesBeforeNews et MinutesAfterNews vous permettent de définir la fenêtre de temps (en minutes) pour mettre en pause le trading avant et après un événement d'actualité.
  • News Times : Le tableau newsTimes contient des heures prédéfinies pour les événements d'actualité (par exemple, le 7 mai 2025, 14:30). Dans la pratique, vous pouvez remplacer ce tableau par un flux d'informations réel provenant d'une API de calendrier économique.
  • Logique : La fonction IsNewsTime() compare l'heure actuelle(TimeCurrent()) avec les heures des événements d'actualité. Si l'heure actuelle se situe dans la fenêtre de pause, la négociation est interrompue.
  • Utilisation : Intégrez ce filtre dans votre EA en appelant IsNewsTime() dans la fonction OnTick() avant d'exécuter des transactions.

Améliorez votre trading XAUUSD avec XAU OneShot EA MT5

Bien que le code ci-dessus fournisse un filtre de base, vous pourriez vouloir une solution plus robuste pour le trading du XAUUSD. C'est pourquoi j'ai développé XAU OneShot EA MT5, un Expert Advisor conçu spécifiquement pour le trading de l'or avec une gestion du risque avancée. Il comprend :

  • Un filtre de nouvelles intégré qui interrompt le trading 15 minutes avant et après les événements majeurs de l'actualité USD/GBP/EUR.
  • Un seuil de rentabilité automatique et un stop suiveur pour verrouiller les profits.
  • Un Take Profit partiel (clôture 50% de la position) pour sécuriser les gains tout en laissant courir le reste.
  • Une limite de perte quotidienne pour protéger votre compte contre les baisses excessives.

Conclusion

L'intégration d'un filtre de nouvelles dans votre stratégie de trading XAUUSD est un moyen simple mais efficace de gérer les risques pendant les périodes de volatilité. Le code fourni dans cet article peut servir de point de départ pour le développement de votre EA. Pour une solution plus complète, essayez XAU OneShot EA MT5 pour faire passer votre trading sur l'or au niveau supérieur. Bon trading !


Traduit de l’anglais par MetaQuotes Ltd.
Code original : https://www.mql5.com/en/code/59130

AlphaTrend AlphaTrend

Il s'agit d'un indicateur utilisé pour déterminer la tendance, le niveau de support et de résistance du marché. Lorsque les données de volume sont disponibles, il calcule en utilisant l'IFM, sinon il calcule en utilisant le RSI. Momentum : RSI et IFM Volatilité : ATR

Price prediction by Nearest Neighbor found by a weighted correlation coefficient Price prediction by Nearest Neighbor found by a weighted correlation coefficient

Cet indicateur trouve le plus proche voisin en utilisant un coefficient de corrélation pondéré, dans lequel les prix les plus récents ont un poids plus important. La pondération diminue linéairement des prix les plus récents aux prix les plus anciens au sein d'un modèle de prix.

ATR Channels Indicator ATR Channels Indicator

The indicator displaying multi level of ATR Channel.

BB 3sigma BB 3sigma

Bandes de Bollinger +-3sigma. Vous pouvez modifier la période et le ratio sigma (la taille appropriée de l'écart est de 0,5~1,0).