Mises à jour : MetaTrader 5

L'historique des mises à jour des plateformes de bureau, mobile et web

20 août 2026
Mise à jour de la plateforme MetaTrader 5 Build 6140 : Améliorations apportées à l'Assistant IA et au Terminal Web

Terminal

  1. Ajout de la prise en charge d'un large éventail de nouveaux fournisseurs LLM pour l'Assistant IA, dont Alibaba, Atomic Chat, Bitdeer AI, Cerebras, z.ai et autres. Vous pouvez désormais choisir parmi un choix encore plus large de modèles et sélectionner celui qui convient le mieux à une tâche particulière, qu'il s'agisse d'analyse de marché, de programmation ou de développement d'applications de trading.

    Pour connecter un fournisseur, ouvrez les paramètres et saisissez les clés API correspondantes :


    Ajout de la prise en charge des nouveaux fournisseurs de LLM


  2. Ajout de la possibilité de supprimer les conversations de l'Assistant IA. Pour supprimer une conversation, utilisez le menu contextuel du navigateur ou sélectionnez la conversation et appuyez sur la touche Suppr :


    Terminal : Ajout de la possibilité de supprimer les conversations de l'Assistant IA

  3. Optimisation du fonctionnement des outils MCP. Ajout d'un outil pour arrêter le Testeur de Stratégie.
  4. La taille de la fenêtre de contexte a été modifiée pour le fournisseur d'IA intégré MQL5.community. La fenêtre de contexte a été réduite de 1 million à 500 000 jetons. Cela reste suffisant pour travailler sur des projets de grande envergure, analyser des quantités importantes de code et mener des conversations approfondies avec l'agent.
  5. Correction d'un problème lié à la modification des niveaux de Stop Loss et de Take Profit pour les ordres en attente via l'Assistant IA. Lors de cette opération, il était possible que la date d'expiration de l’ordre ait été réinitialisée incorrectement si elle avait été définie par l'utilisateur. 
  6. Correction d'un problème lié aux comptes ajoutés aux Favoris dans le Navigateur. Lors de l'ouverture de la boîte de dialogue de connexion pour un compte favori, les informations d'autorisation sont désormais correctement renseignées.

MQL5

  1. Ajout de la fonction MathCompareByDigits. Elle compare deux nombres pour déterminer leur égalité en se basant sur la précision de leurs chiffres significatifs. Cette fonction est utile lorsque l'ordre de grandeur des nombres comparés est inconnu à l'avance, ainsi que pour les nombres complexes dont les parties réelle et imaginaire peuvent différer considérablement en ordre de grandeur.
  2. Correction de la conformité `const` des méthodes de calcul Std, Var, et Cov pour les matrices et les vecteurs lorsqu'elles sont utilisées avec le paramètre `ddof`.
  3. Correction de la lecture et de l'écriture des valeurs à virgule flottante spéciales (nan, snan, ind, inf, -inf) par les méthodes ReadCSV et WriteCSV pour les matrices et les vecteurs.

MetaEditor

  • Correction du problème d'enregistrement du dernier onglet actif dans le Navigateur. Lorsque vous redémarrerez l'application, il s'ouvrira désormais à la même section que précédemment.

Testeur

Terminal Web

  1. Correction de l'enregistrement des paramètres du Depth of Market lors de la réouverture de la fenêtre.
  2. Correction du menu contextuel « Depth of Market ». Il se ferme désormais automatiquement après la sélection d'un paramètre.
  3. Amélioration de l’échelle des graphiques. Lorsque vous survolez l'échelle de prix ou de temps avec le curseur, l'indicateur de zoom correspondant s'affiche.
  4. Amélioration de l’interaction avec les graphiques. Les clics accidentels dans le coin situé entre les axes du temps et des prix n'auront plus d'incidence sur le graphique.
  5. Amélioration de la gestion du double-clic. Les petits mouvements du curseur entre les clics n'interféreront plus avec la détection du double-clic.
  6. Amélioration de la stabilité de la bascule entre symboles. Les changements successifs rapides sont désormais traités séquentiellement, empêchant ainsi les requêtes obsolètes de remplacer le symbole actuellement sélectionné.
  7. Correction d'un problème de défilement des graphiques.
30 juillet 2026
Mise à jour de la plateforme MetaTrader 5 Build 6090 : Améliorations Générales

Terminal

  1. Extension de l'ensemble des méthodes MCP que l’Assistant IA peut utiliser. Il permet notamment d'ajouter des indicateurs au graphique, ainsi que d'obtenir une liste des indicateurs disponibles avec leurs paramètres.
  2. Correction de bugs et amélioration des fonctionnalités de l'Assistant IA intégré.
  3. L'Assistant IA est désactivé dans Windows 7. Cette version du système d'exploitation est obsolète et ne prend pas en charge toutes les fonctions nécessaires.
  4. Correction de la prise en charge de Windows 7. Si vous ne parvenez pas à lancer la version précédente de la plateforme, ne la désinstallez pas, réinstallez simplement la nouvelle version par-dessus. Tous les paramètres seront enregistrés.
  5. Correction du rendu de la vitrine des signaux.
  6. Mise à jour du package d’intégration Python. Pour installer la mise à jour, exécutez la commande :
     pip install --upgrade MetaTrader5 
    
  7. Traductions de l'interface mises à jour.

Terminal Web

  • Correction de l'affichage des modifications du Depth of Market.
23 juillet 2026
MetaTrader 5 Build 6060 : Améliorations apportées à l'intégration de l'IA, aux clés d'accès et à la gestion du code dans MetaEditor

Terminal Client

  1. Nous avons introduit une prise en charge native du protocole MCP (Model Context Protocol) et de l'IA agentique. Les nouvelles fonctionnalités permettent une interaction totalement inédite avec la plateforme de trading : trader, analyser les marchés et les stratégies, et développer et tester des Expert Advisors avec l’aide de l’IA.


    Qu'est-ce que le MCP ?

    Le Model Context Protocol (MCP) est une norme ouverte qui permet aux applications de communiquer avec des agents IA. Contrairement aux chatbots traditionnels, les agents IA sont capables d'accomplir de manière autonome des tâches complexes en les décomposant en une séquence d'actions et en exploitant les fonctionnalités des applications connectées.

    Grâce à la prise en charge intégrée de MCP, MetaTrader 5 devient une source complète de données de marché et de fonctionnalités de trading pour les agents IA modernes. Ils peuvent accéder aux informations de marché, analyser les graphiques, utiliser l'environnement de trading et effectuer les opérations nécessaires via l'interface standard MCP.

    Outre l'assistant IA intégré, vous pouvez également connecter des systèmes externes prenant en charge MCP, notamment OpenAI Codex, Claude Code et d'autres solutions compatibles.


    Aucune installation requise

    Pour commencer à utiliser les fonctionnalités d'IA, il vous suffit de vous connecter à la plateforme avec votre compte MQL5.community. Tous les utilisateurs bénéficieront automatiquement d'un accès au forfait gratuit MQL5 Lite. Une fois la mise à jour effectuée, la plateforme configure automatiquement tout ce dont vous avez besoin : MQL5.community est sélectionné comme fournisseur d'IA par défaut, et la clé API requise est ajoutée automatiquement.

    Si vous le souhaitez, vous pouvez utiliser vos propres clés API pour OpenAI, Anthropic, Gemini, DeepSeek, Ollama ou d'autres fournisseurs pris en charge, et sélectionner le modèle de votre choix directement dans les paramètres du terminal.


    Paramètres IA


    Vos paramètres d'IA sont automatiquement synchronisés entre le terminal de trading et MetaEditor. 


    Assistant IA dans MetaTrader 5


    L'Assistant IA intégré vous aide à analyser les marchés. Il peut vous aider à comprendre la situation actuelle du marché pour un titre donné, passer en revue vos positions ouvertes, analyser votre historique de trading, répondre à vos questions sur les instruments financiers et vous fournir des informations contextuelles sur les événements récents sur les marchés.


    Demandez à l'IA d'analyser vos opérations de trading


    Exemples de prompts :

    • Analyse la situation actuelle de la paire EUR/USD sur le graphique H1. Identifie la tendance, les niveaux de support et de résistance les plus proches, et explique ce qui se passe sur le marché.
    • Analyse mes positions ouvertes. Quelles sont les opérations qui présentent actuellement le plus grand risque, et pourquoi ?
    • Analyse l'historique de mes transactions des trois derniers mois. Identifie mes transactions les plus rentables et propose-moi des moyens d'améliorer ma stratégie de trading.
    • Analyse tous les symboles du Market Watch et identifie ceux pour lesquels un franchissement de niveau important ou une tendance marquée est en train de se dessiner.
    Les réponses générées par l'IA sont fournies à titre purement informatif et ne constituent en aucun cas un conseil en investissement. Utilisez-les comme un outil d'analyse complémentaire et prenez toujours vos décisions de trading en vous fiant à votre propre jugement.
    Les opérations d'IA sont régies par des paramètres de sécurité configurables. Vous pouvez explicitement autoriser ou interdire les opérations de trading initiées par l'IA, ou exiger une confirmation manuelle. De plus, des paramètres distincts contrôlent l'accès de l'IA aux requêtes réseau et aux opérations en ligne de commande.


    Assistant IA dans MetaEditor

    L'Assistant IA de MetaEditor est devenu un véritable assistant de développement. Il permet de :

    • Générer de nouveaux programmes MQL5
    • Analyser le code existant
    • Détecter les erreurs et proposer des corrections
    • Expliquer des algorithmes complexes
    • Contribuer à la refactorisation et à l'amélioration du projet

    Lancez l'assistant à partir du menu Fichier, de la barre d'outils ou du menu contextuel du Navigateur. Il vous suffit ensuite de décrire votre tâche en langage naturel.


    Demandez à l'IA de vous écrire un script


    Exemples de prompts :

    • Crée un Expert Advisor qui ouvre une position lorsque la moyenne mobile exponentielle (EMA) à 20 périodes croise l'EMA à 50 périodes, utilise un Stop Loss de 500 points, un Take Profit de 1 000 points et engage 1% du solde du compte.
    • Analyse ce code MQL5, identifie les problèmes potentiels, explique leurs causes et propose une version corrigée.
    • Optimise cet indicateur afin de réduire le nombre de calculs et d'améliorer ses performances sans en modifier la logique.
    • Convertis cet Expert Advisor MQL4 en MQL5 en utilisant les fonctionnalités modernes du langage et la bibliothèque standard.
    • Explique comment fonctionne cet Expert Advisor. Décris sa logique de trading, les indicateurs qu'il utilise, ses conditions d'entrée et de sortie, ainsi que les éventuelles faiblesses de la stratégie.

    Plus votre demande sera détaillée, plus les résultats obtenus seront précis et utiles.

    L'historique de vos conversations est disponible dans l'onglet « Chats » du Navigateur.

  2. Ajout de la prise en charge de l'authentification par mot de passe (passkey). Il s'agit d'une technologie moderne qui améliore considérablement la sécurité des comptes de trading. Les clés d'accès (passkeys) protègent contre les attaques de phishing et le vol d'identifiants : même si un pirate obtient votre identifiant et votre mot de passe, il ne pourra pas accéder à votre compte sans confirmation de votre appareil enregistré ou de votre clé de sécurité matérielle.


    Activation et utilisation des clés d'accès

    La prise en charge des clés d'accès est activée côté courtier. Si l'authentification par clé d'accès est disponible pour votre compte de trading, le terminal vous invitera à créer une clé d'accès lors de votre première connexion après avoir saisi votre identifiant et votre mot de passe. L'authentification de base par identifiant et mot de passe reste disponible. Le code d'accès sert de facteur d'authentification supplémentaire.


    Création d'un code d'accès


    Vous pouvez enregistrer votre mot de passe de deux manières :

    • Sur un appareil mobile — scannez le QR Code affiché sur le terminal à l’aide de votre smartphone et sélectionnez « Enregistrer le code d’accès » sur votre appareil mobile.
    • Pour une clé de sécurité matérielle : connectez une clé de sécurité FIDO2 compatible à votre ordinateur et suivez les instructions à l’écran.
    Pour utiliser une clé d'accès stockée sur un appareil mobile, votre ordinateur doit prendre en charge le Bluetooth. Le Bluetooth est utilisé pour vérifier la proximité physique de votre appareil mobile. Cette mesure vise à empêcher les attaquants de s'authentifier à distance en vous envoyant un QR Code.
    Une fois inscrit, le code d'accès vous sera demandé à chaque fois que vous vous connecterez à votre compte après avoir saisi votre identifiant et votre mot de passe :

    • Si la clé d'accès est stockée sur un appareil mobile, scannez le code QR avec votre téléphone et confirmez la connexion.
    • Si vous utilisez une clé de sécurité matérielle, connectez-la à votre ordinateur pour terminer l'authentification.

    Si nécessaire, vous pouvez supprimer une clé d'accès enregistrée. Pour ce faire, sélectionnez « Gestionnaire de clés d'accès » dans le menu contextuel du compte dans la fenêtre Navigateur. Lors de votre prochaine connexion, vous serez invité à enregistrer une nouvelle clé d'accès.


    Gestionnaire de mots de passe


  3. Ajout de la prise en charge de nouveaux niveaux d'accès aux comptes :

    • Trader — permet les transactions mais interdit les changements de mot de passe ainsi que les dépôts et les retraits.
    • Gestionnaire de fonds — permet les dépôts, les retraits et les transferts entre comptes, mais interdit les transactions et les changements de mot de passe.

    Des mots de passe distincts sont requis pour accéder à ces modes de compte. Vous pouvez les configurer à l'aide de la boîte de dialogue de changement de mot de passe :


    Ajout de la prise en charge de nouveaux niveaux d'accès au compte


  4. Initialisation corrigée de la boîte de dialogue de trading pour les symboles utilisant l’Exécution Instantanée. Dans certaines conditions, la boîte de dialogue peut apparaître vide si la valeur du volume précédemment saisie dépassait le seuil à partir duquel la négociation bascule vers l'Exécution sur Demande.
  5. Calculs corrigés pour l'objet graphique Canal de régression .
  6. Suppression de la prise en charge de la publication des rapports de trading via FTP. Cette fonctionnalité héritée est obsolète et n'est plus largement utilisée.
  7. Aide : Ajout de la prise en charge des raccourcis clavier : Ctrl+Tab et Maj+Tab — permettent de basculer successivement entre les sections d'aide ; Alt+Flèche droite/gauche — permettent de passer à la page suivante ou précédente.
  8. Mise à jour des traductions de l'interface utilisateur.

MQL5

  1. La fonction TextOut, qui génère du texte, a été optimisée et considérablement accélérée. Dans certains cas, les performances sont jusqu'à trois fois plus rapides que dans les versions précédentes.
  2. Ajout de la fonction SymbolInfoCommissions pour récupérer les informations sur les commissions des symboles de trading. 
    int SymbolInfoCommissions(
       string           name,              // nom du symbole
       MqlCommission&   commissions[]      //  tableau de règles de commission
       );
    Chaque élément du tableau « commissions » décrit une règle de calcul de commission distincte. Les conditions générales d'application de la commission sont spécifiées par les champs de la structure MqlCommission , et les valeurs et plages spécifiques de la commission sont représentées par le tableau « tiers ».

  3. Ajout de la méthode MatrixInfo pour l'analyse des propriétés structurelles des matrices. Elle analyse le contenu de la matrice, détermine son type structurel (symétrique, hermitienne, triangulaire, à bandes, etc.) et remplit la structure MqlMatrixInfo.

  4. Ajout de méthodes matricielles et vectorielles : 

    • Write — analyse le contenu de la matrice, détermine son type structurel (symétrique, hermitienne, triangulaire, à bandes, etc.) et écrit la matrice dans un fichier ouvert selon le format de stockage sélectionné.
    • Read — lit une matrice à partir d'un fichier qui a été préalablement écrit à l'aide de la méthode Écriture.
    • WriteBin — écrit une matrice dans un fichier en fonction de sa taille et de son type de données.
    • ReadBin — lit une matrice à partir d'un fichier qui a été préalablement écrit à l'aide de la méthode WriteBin.
    • WriteCSV — écrit une matrice dans un fichier CSV en fonction de sa taille et de son type de données.
    • ReadCSV — lit une matrice à partir d'un fichier qui a été préalablement écrit à l'aide de la méthode WriteCSV.

  5. Ajout de méthodes pour les factorisations orthogonales de matrices et de vecteurs :

    • FactorizationQRTallSkinny — calcule une factorisation QR bloquée d'une matrice haute et mince de taille m par n (m>n) : A = Q * R. Fonction LAPACK LATSQR.
    • FactorizationLQShortWide — calcule une factorisation LR par blocs d'une matrice courte-large de taille m par n (m<n) : A = L * Q. Fonction LAPACK LASWLQ.
    • FactorizationRZ — réduit une matrice trapézoïdale supérieure réelle ou complexe A de taille M par N (M ≤ N) à une forme triangulaire supérieure en utilisant des transformations orthogonales. Fonction LAPACK TZRZF.
    • FactorizationQR2 — calcule la factorisation QR généralisée de deux matrices : A de taille n x m et B de taille n x p : A = Q * R, B = Q * T * Z. Fonction LAPACK GGQRF.
    • FactorizationRQ2 — Calcule la factorisation RQ généralisée des matrices A de taille m par n et B de taille p par n : A = R * Q, B = Z * T * Q. Fonction LAPACK GGRQF.

  6. Ajout de la méthode SylvesterEquation . Elle résout les équations de Sylvester pour les matrices réelles et complexes : A*X + X*B = échelle*C où A est une matrice générale m par n et B est une matrice générale n par n. Utilise les fonctions GEES et TRSYL de LAPACK.

  7. Ajout de la méthode LeastSquaresGaussMarkov2. Elle résout le modèle linéaire général de Gauss-Markov : minimise la norme ∣∣y∣∣2 avec une contrainte d=A⋅x+B⋅y, en utilisant une factorisation QR généralisée des matrices A et B. Utilise la fonction LAPACK GGGLM.

  8. Ajout de méthodes BLAS de niveau 3 :

    • BlasL3LACRM — multiplie une matrice complexe par une matrice réelle carrée.
    • BlasL3LARCM — multiplie une matrice réelle carrée par une matrice complexe.

  9. Correction d'une erreur dans les calculs de quantiles de la distribution t dans la bibliothèque statistique MQL5.
  10. Correction de l’initialisation de la variable prédéfinie _StopFlag pour les indicateurs.
  11. Ajout de la génération de l'événement CHARTEVENT_CHART_CHANGE lorsque les propriétés graphiques CHART_PRICE_MIN et CHART_PRICE_MAX changent. Pour recevoir l'événement, utilisez le gestionnaire OnChartEvent .
  12. Correction de la gestion du délai d'attente spécifié lors de l'appel WebRequest .
  13. Fonctionnement corrigé de la fonction ObjectGetValueByTime pour les objets graphiques OBJ_REGRESSION et OBJ_STDDEVCHANNEL .
  14. Ajout de la valeur MQL_LAST_OPENBLAS_ERROR à l'énumération ENUM_MQL_INFO_INTEGER .

    La plupart des fonctions LAPACK de la bibliothèque OpenBLAS utilisent le paramètre entier « info » pour renvoyer l'état d'exécution d'une fonction ou d'une sous-routine : si elle s'est terminée avec succès, si des erreurs ont été détectées dans les paramètres d'entrée ou si des problèmes numériques sont survenus. La constante MQL_LAST_OPENBLAS_ERROR contient la valeur de 'info' renvoyée après le dernier appel de fonction OpenBLAS ayant échoué. 

MetaEditor

  1. Ajout d'une fonctionnalité de repliage de code. Vous pouvez désormais réduire et développer les fonctions, les classes, les boucles, les instructions conditionnelles et autres blocs de code. Cela simplifie la navigation dans les fichiers sources volumineux, vous aide à vous concentrer sur des parties spécifiques d'un programme et rend le travail sur des projets de grande envergure beaucoup plus pratique.


    Ajout d'une fonctionnalité de repliage de code


    Utilisez la nouvelle option dans les paramètres pour activer ou désactiver cette fonctionnalité :


    Activer et désactiver le repliage de code


  2. Ajout d'une mise en surbrillance de toutes les occurrences lors de la sélection d'un mot. Lorsque vous sélectionnez un identifiant, une variable, une fonction ou tout autre mot, MetaEditor met automatiquement en surbrillance toutes les occurrences de ce mot dans le fichier actuel. Cela permet de localiser plus facilement et rapidement les sections de code associées, de suivre l'utilisation des variables et des fonctions, et simplifie considérablement l'analyse et la navigation dans les fichiers sources volumineux.


    Ajout d'une fonctionnalité de mise en surbrillance de toutes les occurrences


  3. Correction des problèmes d'affichage des fichiers *.md.
  4. Ajout de la prise en charge UTF-8 pour les projets *.mqproj. Cet encodage est désormais utilisé lors de l'enregistrement de ces fichiers.
  5. Modification de l'encodage utilisé pour l'enregistrement des fichiers *.mq5 et *.mqh. Ils sont désormais enregistrés au format UTF-8 sans BOM. 
  6. Correction de la coloration syntaxique du code source. Auparavant, certains identifiants de langage MQL5 pouvaient s'afficher avec des couleurs incorrectes.
  7. Correction de l'enregistrement et du chargement des coordonnées pour les fenêtres détachées.
  8. Correction de la gestion des raccourcis clavier dans les fenêtres détachées.

Testeur

  1. Correction de l'application des spreads personnalisés dans le mode de test « Prix d'ouverture uniquement » .
  2. Calculs des swaps basés sur un pourcentage fixe.
  3. Correction de l'affichage des paramètres de test qui ne peuvent pas participer à l'optimisation (par exemple, les paramètres de type chaîne de caractères). Ces paramètres sont désormais affichés par un carré gris vide, indiquant que le paramètre est désactivé et ne peut pas être sélectionné.
  4. Correction de l'affichage de la valeur de couleur clrNONE dans les paramètres du programme MQL5 lors des tests.
  5. Correction de l'application des paramètres de marge personnalisés.

Terminal Web

  • Fonctionnement amélioré sur les appareils à écran tactile.
24 avril 2026
Mise à jour de la plateforme MetaTrader 5 Build 5830 : Améliorations Générales

Terminal

  1. Aide intégrée améliorée :

    • Couleurs optimisées dans le thème sombre pour une meilleure lisibilité.
    • La taille de la barre latérale de navigation a été optimisée.
    • Ajout de la possibilité de détacher la fenêtre d'aide dans MetaEditor.
    • Ajout de la prise en charge de la copie de texte via le menu contextuel et la combinaison de touches Ctrl+C.
    • Ajout de la possibilité de régler le zoom du texte : maintenez la touche Ctrl enfoncée et faites défiler la molette de la souris, ou utilisez le menu contextuel.
    • Ajout d'une fonction de navigation entre les sections déjà consultées à l'aide des touches Alt + flèches gauche/droite.
    • Ajout de la possibilité d'imprimer des pages à l'aide de la combinaison de touches Ctrl+P.

  2. Affichage optimisé de certains éléments de l'interface dans le thème sombre, notamment la courbe OHLC, les boutons de réduction/agrandissement des graphiques et les paramètres de saisie dans le testeur de stratégie.
  3. Correction de l'enregistrement de l'option « Utiliser les couleurs du système » dans le Market Watch. Le paramètre pouvait être réinitialisé après le redémarrage de l'application.
16 avril 2026
Mise à jour de la plateforme MetaTrader 5 Build 5800 : Nouvelle interface de la boîte de dialogue de trading et amélioration des opérations avec les fichiers CSV dans MetaEditor

Terminal

  1. Nous avons entamé une refonte complète de la fenêtre de trading afin de la rendre plus intuitive et plus fonctionnelle.

    • La boîte de dialogue intègre désormais une fonctionnalité « Depth of Market » (Profondeur du Marché), qui offre une visibilité complète sur les conditions du marché et permet de passer des ordres en attente à des niveaux de prix spécifiques.
    • Le changement de type d’ordre a été déplacé dans un panneau latéral pour faciliter l'accès.
    • Le panneau latéral comprend désormais des commandes permettant d'activer ou de désactiver le trading en-un-clic. Auparavant, elles n'étaient disponibles que dans les paramètres de la plateforme.


    Les prochaines versions apporteront de nouvelles améliorations en matière de placement des ordres stop et de gestion des risques.


    Nouvelle boîte de dialogue « Trading »


  2. Aide intégrée mise à jour. Le système d'aide intégré est passé du format CHM traditionnel à un moteur web moderne. Parallèlement à cette transition, l'interface d'aide a été repensée avec un nouveau design et une interactivité améliorée.

    Par défaut, la fenêtre d'aide s'ouvre dans un volet distinct au sein de la zone du graphique. Si nécessaire, elle peut être détachée et déplacée hors de la plateforme afin de libérer de l'espace pour les instruments de trading.


    Aide intégrée mise à jour


  3. Correction de problèmes liés aux bibliothèques ONNX et OpenBLAS. Les composants requis sont désormais correctement vérifiés et téléchargés lors des mises à jour de la plateforme.
  4. Correction de l'affichage du repère de position graphique.
  5. Correction du calcul de la baisse du solde dans les rapports de trading. Auparavant, il arrivait que des retraits soient pris en compte par erreur.
  6. Amélioration du thème sombre. Nous avons ajusté certaines couleurs afin d'améliorer le contraste.
  7. Correction de la sauvegarde des paramètres de connexion proxy et amélioration de la journalisation. Lorsqu'un proxy est utilisé pour la première fois au cours d'une session, le message suivant est enregistré :
    connecting through HTTP proxy [server]:[port]
  8. Mise à jour de la localisation en ouzbek — utilise désormais l'alphabet latin.

MQL5

  1. Ajout de nouvelles méthodes OpenBLAS pour le filtrage de tendance de niveau 1, permettant une extraction rapide et reproductible des composantes de tendance à partir de séries chronologiques.

    Où l'utiliser

    • Des tendances linéaires par segments plutôt qu'un lissage : le filtre L1 réduit le bruit et les fluctuations à court terme sans masquer les changements de régime, en représentant les tendances sous forme de segments linéaires.
    • Détection automatique des points d'inflexion : les changements de pente de la tendance sont identifiés naturellement grâce à la rareté des différences de deuxième ordre, ce qui s'avère particulièrement utile pour les séries chronologiques financières.
    • Paramètre de régularisation normalisé par rapport à λmax : le paramètre λ peut désormais être défini en termes relatifs (en tant que fraction de λmax). Cela facilite le transfert des paramètres entre les symboles, les périodes et les ensembles de données historiques de différentes longueurs.

    Nouvelles méthodes

    • L1TrendFilterLambdaMax — calcule la valeur maximale de régularisation (λmax) à laquelle la solution devient strictement linéaire (tendance globale). Renvoie vrai ou faux, la valeur λmax étant fournie via un paramètre de sortie.
    • L1TrendFilter — calcule la tendance L1 pour une valeur donnée de λ. Prend en charge relative=true, où λ est défini dans l'intervalle [0…1] en tant que fraction de λmax.

  2. Correction des demandes de données via CopyRates. Les requêtes portant sur des données historiques non disponibles renvoient désormais correctement le code d'erreur -1.
  3. Prise en charge étendue de CUDA pour les modèles ONNX. Les architectures suivantes peuvent actuellement être utilisées :

    • Turing : Nvidia 1660, RTX 2080/2070/2060, T4, Quadro RTX
    • Ampere : A100, RTX 3090/3080/3070
    • Ada Lovelace : RTX 4090/4080/4070, L40, L4
    • Hopper : H100, H200
    • Blackwell : B100, B200, B20, RTX 5090/5080/5070

  4. Amélioration du fonctionnement de WebRequest pour les requêtes de longue durée utilisant Keep-Alive.

MetaEditor

  1. Ajout d'un affichage sous forme de tableau pour les fichiers CSV.

    Lors de l'ouverture de fichiers CSV, l'éditeur les affiche désormais automatiquement sous forme de tableau structuré. Vous pouvez filtrer les données, trier par colonne et supprimer des lignes à l'aide du menu contextuel.

    N'importe quel caractère peut servir de délimiteur, y compris les virgules, les points-virgules, les tabulations et les espaces. Si la détection automatique ne fonctionne pas correctement, le séparateur peut être défini manuellement.


    Ajout de la fonctionnalité d'affichage sous forme de tableau CSV


  2. Amélioration du paramétrage du mode de compilation par défaut. Si votre processeur prend en charge le jeu d'instructions AVX2, l'éditeur configure automatiquement le mode de compilation approprié pour les applications MQL5. Cela garantit des performances optimales.
  3. Mise à jour du format d'encodage par défaut des fichiers source. Les fichiers sont désormais enregistrés au format UTF-8 sans BOM, ce qui garantit un affichage correct dans MQL5 Algo Forge.
  4. Correction de l'erreur « Le référentiel n'appartient pas à l'utilisateur actuel » lors de l'utilisation du stockage cloud MQL5 Algo Forge.

Signals

  1. Correction des retards survenant lors de la copie de signaux lorsque le compte de l'abonné ne dispose pas du taux de change nécessaire au calcul du ratio de copie.

    Lors du calcul des volumes de transactions, le système tient compte du rapport entre les soldes des comptes des abonnés et ceux des fournisseurs. Si les devises des dépôts diffèrent, un taux de conversion correspondant est nécessaire. Si le taux de conversion requis n'est pas disponible, le système suppose que les soldes sont identiques et enregistre l'avertissement :
    aucun taux de conversion pour la devise de dépôt du fournisseur et de l'abonné
    Auparavant, après cet avertissement, les utilisateurs pouvaient rencontrer des retards dans la copie des transactions. Ce problème a désormais été résolu.

Testeur

  1. Correction du comportement de CopyTicksRange. Les demandes concernant des symboles autres que le symbole de test principal généraient auparavant l'erreur 4401.
  2. Correction de l'import des paramètres personnalisés de trading. Ces paramètres peuvent désormais être modifiés après l'import.

Terminal Web

  1. Correction du positionnement de la boîte de dialogue d'ajout d'indicateur. Auparavant, elle pouvait apparaître au bord de l'écran chez certains utilisateurs.
  2. Correction de l'affichage des heures de début des séances de trading dans les caractéristiques des instruments.
  3. Correction du comportement du double-clic sur les objets et l'échelle verticale. Il ouvre désormais la fenêtre des propriétés et rétablit le zoom par défaut.
27 février 2026
Mise à jour de la plateforme MetaTrader 5 Build 5660 : Améliorations et corrections

Cette version améliore les opérations avec les serveurs proxy. Nous avons amélioré la prise en charge des protocoles HTTP et SOCKS5 afin de réduire les erreurs de connexion. Le protocole SOCKS4 obsolète n'est plus pris en charge.

Nous avons également révisé les opérations avec la bibliothèque d'algèbre linéaire OpenBLAS. Sa mise en œuvre est désormais fournie dans un fichier séparé : openblas.dll.

  • La taille des fichiers exécutables du terminal de trading et du testeur a été réduite, ce qui vous permet d'économiser de la bande passante lors des mises à jour de la plateforme. Étant donné qu'OpenBLAS est mis à jour beaucoup moins fréquemment, vous n'aurez pas besoin de le télécharger à chaque fois.
  • Si plusieurs instances de la plateforme sont installées sur un ordinateur, elles utiliseront toutes un seul fichier de bibliothèque partagé. Cela permet d'économiser de l'espace disque.
  • Si la fonctionnalité OpenBLAS n'est pas utilisée, la bibliothèque n'est pas chargée en mémoire, ce qui réduit la consommation de ressources.
20 février 2026
Nouvelle version de la plateforme MetaTrader 5 Build 5640 : Améliorations du thème sombre et prise en charge de Markdown dans MetaEditor

Terminal

  1. Thème sombre amélioré pour tous les composants : le terminal de trading, MetaEditor et le Strategy Tester. La couleur générale de l'arrière-plan, ainsi que les couleurs des onglets et des barres de défilement, ont été mises à jour pour améliorer la convivialité et le confort visuel.


    Thème sombre amélioré


  2. Correction d'un problème qui pouvait interrompre le téléchargement et la synchronisation de l'historique des ticks dans certaines conditions.
  3. Mise à jour des données fondamentales pour les instruments de trading. La liste des symboles pris en charge a été élargie et les données manquantes ont été ajoutées.


    Mise à jour des données fondamentales


  4. Ajout de la traduction de l'interface en kurde.
  5. Correction du rendu de l'objet graphique "Champ d’Edition (Edit Field)".
  6. Correction du rendu de l'objet "Ligne de Tendance (Trend Line)". Dans certains cas, l'objet n'était pas affiché si son point d'ancrage était situé en dehors de la plage visible des barres du graphique.
  7. Correction de la suppression des groupes de symboles personnalisés.

MQL5

  1. Ajout de la fonction Color2PRGB. Elle convertit le type color en uint pour obtenir la représentation de la couleur PRGB. Le format PRGB est utilisé lors de la création de ressources graphiques, de l'édition de texte et dans la classe CCanvas de la bibliothèque standard.
  2. Ajout de la méthode NormalizeDouble pour les vecteurs et les matrices. Elle fonctionne de la même manière que la méthode standard pour les valeurs doubles. Pour les nombres complexes, les parties réelles et imaginaires sont normalisées séparément. Cette méthode est utile lorsque les données de prix sont censées être stockées dans des vecteurs et des matrices.
  3. Amélioration du compilateur :

    • Correction d'un appel via un pointeur de fonction renvoyant un objet.
    • Ajout d'avertissements pour les constantes de décalage importantes ou négatives.
    • Correction d'un problème dans la méthode matrix<T>::Swap(array<T>&).
    • Correction de l'analyse du code utilisant des objets de classe implicites.

MetaEditor

  1. Ajout du support pour la visualisation et l'édition des fichiers Markdown. Markdown est largement utilisé pour créer de la documentation et des descriptions sur de nombreuses plateformes, notamment GitHub et AlgoForge.

    Par défaut, les fichiers .md s'ouvrent en mode prévisualisation avec un style de base appliqué pour plus de commodité. Pour passer en mode édition, utilisez le menu contextuel.


    Ajout de l'affichage et de l'édition de fichiers Markdown


  2. Correction de la gestion des fichiers de projet *.mqproj encodés en UTF-8 avec BOM.
  3. Correction de l’affichage automatique des variables locales. Leurs valeurs ne peuvent plus être supprimées de la liste de surveillance.

Testeur

  1. Correction des problèmes de synchronisation des données historiques qui survenaient lors du test d'instruments dont la devise de marge était différente de la devise de dépôt du compte. Par exemple, lorsque l'on teste CHFJPY avec une devise de dépôt USD ou EUR. Le testeur télécharge maintenant correctement les taux croisés requis à partir du serveur du courtier.

29 janvier 2026
Nouvelle version MetaTrader 5 build 5572 : ONNX et amélioration du rendu des graphiques

Terminal

  1. Correction du rendu du texte sur les graphiques dans les environnements macOS et Linux utilisant Wine.
  2. Correction du dessin des indicateurs affichés sous forme de lignes de couleurs variables.
  3. Correction du rendu des objets de type étiquette de texte et bouton.
  4. Correction du formatage de certaines statistiques dans les rapports de trading, qui pouvaient auparavant être arrondies de manière incorrecte.
  5. Correction du calcul du "bénéfice total" et de la "perte totale" dans les rapports de trading. Ces valeurs incluent désormais les commissions et les swaps.
  6. Correction de la sauvegarde de l'état de la barre d'outils pour les graphiques flottants. Les barres d'outils cachées pouvaient réapparaître après le redémarrage de la plateforme.
  7. Correction du chargement des paramètres des instruments de trading personnalisé à partir de fichiers JSON. En particulier, les paramètres de swap, les sessions de trading et les valeurs des ticks peuvent être importés de manière incorrecte.
  8. Ajout de l'affichage de l'instrument et de la période dans le titre de la fenêtre lors de l'exécution d'un script sur un graphique.



    Ajout de l'affichage de l'instrument et de la période dans le titre de la fenêtre lors de l'exécution d'un script sur un graphique.


  9. Correction de la duplication des instruments de trading dans l'infobulle affichée lors de la recherche d'instruments dans le Market Watch.
  10. Correction du rendu des polices Wingdings dans les graphiques.
  11. Correction du rendu des indicateurs affichés sous forme de chandeliers colorés (DRAW_COLOR_CANDLES) et de lignes colorées (DRAW_COLOR_LINE).
  12. Terminal : Ajout de la sortie d'un message de journal indiquant que le serveur du courtier utilise une version obsolète. Si la version du serveur est inférieure à la version 5200, publiée il y a 6 mois, un avertissement s'affiche :
    outdated server build - must be at least 5200, contact your broker please
    Le message est affiché à titre d'information uniquement et n'affecte pas la capacité à se connecter au serveur.
  13. Mise à jour des traductions de l'interface utilisateur.

MQL5

  1. La bibliothèque ONNX se charge désormais lors de la première exécution d'un programme MQL5 qui utilise ONNX, plutôt qu'avec la plateforme. Les mises à jour de la bibliothèque se font automatiquement.
  2. Ajout du support de CUDA pour ONNX. Si votre carte graphique prend en charge cette technologie, les performances de l'inférence du modèle seront considérablement améliorées. Nous recommandons vivement de mettre à jour les pilotes NVIDIA pour améliorer la stabilité et les performances.
    Les autorisations d'utilisation de CUDA peuvent être gérées dans les paramètres de la plateforme : 


    Gestion de CUDA dans les paramètres de la plateforme


  3. Mise à jour des flags dans l'énumération ENUM_ONNX_FLAGS. Ces indicateurs sont utilisés lors de la création et de l'exécution des modèles ONNX :

    Logs
    Au lieu de l'ancien ONNX_DEBUG_LOGS, les flags de logging suivants sont maintenant utilisés :

    • ONNX_LOGLEVEL_VERBOSE — enregistre tous les messages.
    • ONNX_LOGLEVEL_INFO — enregistre les messages d'information, les avertissements et les erreurs. Remplace l'ancien ONNX_DEBUG_LOGS.
    • ONNX_LOGLEVEL_WARNING — enregistre les avertissements et les erreurs. Utilisé par défaut.
    • ONNX_LOGLEVEL_ERROR — enregistre uniquement les erreurs.

    CUDA et Gestion des GPU
    L'indicateur ONNX_CUDA_DISABLE a été supprimé. Utilisez maintenant le nouveau flag ONNX_USE_CPU_ONLY. Lorsque cette option est activée, seul le processeur central (CPU) est utilisé pour l'exécution du modèle.

    Des flags ont été ajoutés pour sélectionner le périphérique GPU sur lequel le modèle sera exécuté :

    • ONNX_GPU_DEVICE_0
    • ONNX_GPU_DEVICE_1
    • ONNX_GPU_DEVICE_2
    • ONNX_GPU_DEVICE_3
    • ONNX_GPU_DEVICE_4
    • ONNX_GPU_DEVICE_5
    • ONNX_GPU_DEVICE_6
    • ONNX_GPU_DEVICE_7

    Utilisez ces flags si le système possède deux périphériques CUDA ou plus. Si plusieurs flags sont spécifiés, le périphérique ayant l'indice le plus bas sera sélectionné.

    Profilage du Modèle
    Nous avons ajouté l'option ONNX_ENABLE_PROFILING pour activer le profilage d’un modèle ONNX.

    Lorsqu'un modèle est démarré avec ce flag activé, un fichier de rapport de profilage portant le nom : [nom du fichier EX5]_[date]_[heure].json sera créé dans le dossier /MQL5/Files/OnnxProfileReports/.

  4. Augmentation de la limite des fichiers pouvant être inclus dans un programme en tant que ressource. La nouvelle limite est de 1 Go, ce qui vous permet d'inclure des modèles ONNX de grande taille dans des projets. 
  5. Amélioration de la stabilité des opérations OpenCL.
  6. Ajout de la méthode ReplaceToZero. Elle remplace les petites valeurs d'une matrice ou d'un vecteur par des valeurs nulles et renvoie le nombre d'éléments remplacés.
  7. Ajout de nouvelles méthodes OpenBLAS :

    • FactorizationLDLComplexSyRaw — calcule la factorisation d'une matrice complexe en utilisant la méthode de pivotement diagonal de Bunch-Kaufman.
    • LDLComplexSyLinearEquationsSolution — résout un système d'équations linéaires A * X = B avec une matrice indéfinie symétrique complexe en utilisant la factorisation A = U**T * D * U ou A = L * D * L**T calculée par FactorizationLDLComplexSyRaw, avec plusieurs côtés droits.
    • LDLComplexSyInverse — calcule l'inverse d'une matrice indéfinie symétrique complexe en utilisant la factorisation A = U**T * D * U ou A = L * D * L**T calculée par FactorisationLDLComplexSyRaw.
    • LDLComplexSyCondNumReciprocal — estime la réciproque du nombre de condition d'une matrice indéfinie réelle symétrique ou complexe hermitienne A, en utilisant la factorisation LDLT calculée par FactorizationLDLRaw.

  8. Ajout de la fonction ColorToPRGB. Elle convertit le type de couleur en uint pour obtenir une représentation des couleurs PRGB. Ce format est utilisé lors de la création de ressources graphiques, du rendu de texte et dans la classe CCanvas de la bibliothèque standard lors de l'utilisation du format de couleur COLOR_FORMAT_ARGB_RAW.
    uint  ColorToPRGB(
       color  clr,          // the color to be converted, in 'color' format
       uchar  alpha=255     // the alpha channel that controls color transparency
    );
    La couleur PRGB est calculée à l'aide de la formule suivante :
    R = R * A / 255
    G = G * A / 255
    B = B * A / 255
    A = A
  9. Correction du réglage du texte dans le code pour les objets OBJ_LABEL, OBJ_TEXT, OBJ_BUTTON et OBJ_EDIT. Le texte peut ne pas s'afficher dans certaines conditions.
  10. Correction de la définition des couleurs pour les objets graphiques utilisant ObjectSetInteger. La valeur clrNONE pouvait auparavant être ignorée.
  11. Correction du blocage de la fonction Bars lorsqu'aucun historique des prix n'est disponible sur le serveur.
  12. Correction de la recherche de variables globales dans les champs d'application. Auparavant, les variables à l'intérieur d'un espace de noms ne pouvaient pas avoir les mêmes noms que les variables de niveau global.
  13. Correction du fonctionnement de l'attribut final. La tentative de remplacement d'une fonction marquée comme "final" produit désormais correctement une erreur de compilation.
  14. Correction de faux avertissements du compilateur qui se produisaient lors de l'utilisation de déclarations de fonctions dans des fichiers *.mqh inclus sans la directive #import. Le compilateur gère désormais correctement ces déclarations et ne requiert pas #import si les fonctions ne sont pas importées d'une DLL.

    Exemple

    Fichier utils.mqh : 
    // Function forward declaration
    double CalcLot(double risk, double stop);
    Fichier expert.mq5 :
    #include "utils.mqh"
    
    double CalcLot(double risk, double stop)
      {   
       return risk / stop;
      }
    Auparavant, le compilateur pouvait émettre un avertissement indiquant que la fonction CalcLot dans utils.mqh ne comportait pas la directive #import, même si la fonction est définie par l'utilisateur et implémentée dans le code du projet. Ce code se compile désormais sans avertissement. La directive #import n'est requise que pour les fonctions effectivement importées de DLL externes. 

MetaEditor

  1. Correction des erreurs de mémoire insuffisante lors de l'utilisation de fichiers sources volumineux (mégaoctets).
  2. Correction de l'affichage des valeurs et des noms d'énumération dans la fenêtre du Market Watch pendant le débogage.

Testeur

  1. Correction de la fin des tests pour les Experts Advisors en boucle. Même en cas de boucle infinie, le fait d'appuyer sur "Stop" interrompt désormais immédiatement l'exécution.
  2. Correction de l'appel à EventChartCustom lors des tests visuels. Auparavant, l'événement pouvait être envoyé deux fois par erreur.
  3. Correction de la vérification du niveau de gel (SYMBOL_TRADE_FREEZE_LEVEL) lors de la suppression d'ordres en attente nouvellement placés.
  4. Correction de l'export des données de tests préalables. Lors de l'export d'un test n'utilisant pas le mode en avant (forward), les données des tests en avant précédents pouvaient parfois être sauvegardées.

Terminal Web

  1. Ajout de l'affichage du profit/de la perte approximatif(le) en monnaie lors de la définition du Stop Loss ou du Take Profit sur le graphique.


    Ajout de l'affichage du profit/perte approximatif en monnaie


  2. Affichage fixe des spécifications des symboles pour les instruments comportant des caractères spéciaux.
  3. Correction de l'affichage des prix négatifs dans les boîtes de dialogue des trades.
  4. Correction de l'affichage des métriques financières du compte dans les cas où la devise de dépôt a une précision supérieure à 2 décimales.

13 novembre 2025
Nouvelle plateforme MetaTrader 5 Build 5430 : Graphiques améliorés grâce à Blend2D

Terminal

  1. Mise à jour du noyau de rendu des graphiques. L'ancien framework GDI a été remplacé par le moteur moderne Blend2D.

    De meilleures performances
    Blend2D utilise une architecture de rendu moderne et exploite efficacement les processeurs multicœurs, ce qui garantit un rendu fluide des graphiques et des indicateurs, même avec un grand nombre d'objets.

    Accélération matérielle et optimisation du processeur
    Optimisé pour les jeux d'instructions modernes (SSE, AVX), Blend2D accélère considérablement la visualisation par rapport à GDI, qui ne prend pas en charge ces optimisations.

    Graphiques nets et fluides
    L'anticrénelage avancé et la gestion précise des couleurs permettent d'obtenir des lignes fluides, des transitions douces et des graphiques visuellement nets, ce qui est particulièrement visible lors des zooms ou de l'utilisation d'écrans haute résolution (HiDPI, 4K).

    Effets modernes et transparence
    Blend2D prend en charge la composition alpha et les opérations avancées sur les couleurs, ce qui permet d'obtenir des éléments semi-transparents, des ombres et d'autres effets graphiques modernes.

    Rendu unifié et stable
    Blend2D offre un rendu cohérent sur tous les systèmes, indépendamment de la version du système d'exploitation ou de la configuration du pilote vidéo.


    Les graphiques sont maintenant rendus en utilisant le nouveau moteur Blend2D


MQL5

  1. Ajout de méthodes matricielles permettant d'effectuer des calculs d'algèbre linéaire de niveau 2 (matrice-vecteur) : BLAS niveau 2 :

    • BlasL2GeMV — produit matrice-vecteur
    • BlasL2GeR — mise à jour du rang 1
    • BlasL2GeRC — Mise à jour conjuguée de rang 1
    • BlasL2SyMV — produit matrice-vecteur pour une matrice symétrique
    • BlasL2SyR — mise à jour de rang 1 d'une matrice symétrique
    • BlasL2SyR2 — mise à jour de rang 2 d'une matrice symétrique
    • BlasL2HeMV — produit matrice-vecteur pour une matrice hermitienne
    • BlasL2HeR — mise à jour conjuguée de rang 1 d'une matrice hermitienne
    • BlasL2HeR2 — mise à jour conjuguée de rang 2 d'une matrice hermitienne
    • BlasL2TrMV — un produit matrice-vecteur utilisant une matrice triangulaire

  2. Ajout de méthodes matricielles permettant d'effectuer des calculs d'algèbre linéaire de niveau 3 (matrice-vecteur) : BLAS niveau 3:

    • BlasL3GeMM — produit matrice-matrice pour les matrices générales
    • BlasL3SyMM — produit matrice-matrice lorsque la matrice d'entrée A est symétrique
    • BlasL3HeMM — produit matrice-matrice où la matrice d'entrée A est hermitienne
    • BlasL3TrMM — produit matrice-matrice où la matrice d'entrée A est triangulaire
    • BlasL3SyRK — mise à jour symétrique du rang-k
    • BlasL3HeRK — mise à jour du rang-k hermitien
    • BlasL3SyR2K — mise à jour symétrique de rang 2k
    • BlasL3HeR2K — mise à jour du rang 2k hermitien

  3. Correction d'un problème de WebRequest qui pouvait, dans certains cas, entraîner l'interruption de la connexion avec un hôte distant.
  4. Correction d'un crash rare qui pouvait se produire lorsque les variables n'étaient pas initialisées.
  5. Correction d'un crash rare qui pouvait se produire lors de l'utilisation de la fonction IntegerToString.

Testeur

  1. Correction de la duplication des événements personnalisés lorsque EventChartCustom était appelé lors des tests visuels.
  2. Correction du comportement de IsStopped lors de l'arrêt forcé d'un test.

Terminal Web

  1. Ajout de la possibilité de changer le mode d'affichage du volume dans le carnet d’ordres. Le bouton situé sur le panneau supérieur permet de visualiser les volumes en lots ou en unités.


    Changement du mode d'affichage du volume dans le carnet d’ordres


  2. Correction du gel lors de l'affichage du carnet d'ordres sur les appareils mobiles.
  3. Correction de l'affichage du prix actuel dans la boîte de dialogue de trading lorsqu'une opération échoue (par exemple, fonds insuffisants). Auparavant, un prix nul pouvait être indiqué dans ce cas.
  4. Amélioration de la sécurité du stockage des données dans le navigateur. 
16 octobre 2025
Mise à jour de la plateforme MetaTrader 5 Build 5370 : Améliorations du Terminal Web

Terminal Web MetaTrader 5

  1. Ajout de l'affichage des dates de début et de fin de contrat dans les spécifications de l'instrument :


    Dates de début et de fin de contrat


  2. Correction de l'indication retard du prix dans la section "Cotations". Sur les appareils mobiles, il se peut que l'icône correspondante n'apparaisse pas en mode d'affichage étendu.


    Cotations retardées


  3. Correction de l'affichage du menu de sélection des périodes. Le problème se produit en vue horizontale sur les appareils mobiles.
  4. Correction de l'affichage des types de comptes disponibles dans la fenêtre de création d'un compte de démo.
  5. Correction des problèmes de localisation dans la fenêtre de connexion au compte. Certains éléments pourraient n'apparaître qu'en anglais.
3 octobre 2025
Plateforme MetaTrader 5 Build 5326 : Améliorations et corrections

Terminal

  1. Ajout d'une vérification de la longueur du mot de passe lors de la connexion à un compte pour la première fois après la migration depuis MetaTrader 4. Le système vérifie désormais correctement la complexité du nouveau mot de passe.
  2. Correction de l'affichage de la colonne "ID" (identifiant dans un système externe) dans la liste des positions ouvertes. La colonne n'apparaîtra désormais que si au moins une des opérations de la liste possède un identifiant associé.

MQL5

  • Résolution d'un problème avec la génération de constructeurs implicites et d'opérateurs de copie pour les structures et les classes. Dans certains cas, cela pouvait conduire à des échecs critiques dans les programmes MQL.
25 septembre 2025
Mise à jour de la plateforme MetaTrader 5 Build 5320 : Services dans CodeBase et opérations de saisie améliorées dans MQL5
Le build 5320 est la dernière mise à jour à prendre en charge Windows 7, Windows 8, Windows 8.1 et Windows Server 2008. À partir de la prochaine version, les plateformes de bureau exécutées sur ces systèmes d'exploitation ne recevront plus de mises à jour. La seule exception concerne les plateformes fonctionnant sous Wine.


Terminal

  1. Ajout de la prise en charge des programmes de type Service MQL5 dans la base de code.

    Contrairement aux Expert Advisors, aux indicateurs et aux scripts, les services ne sont pas attachés à un graphique spécifique. Ils s'exécutent en arrière-plan et démarrent automatiquement au lancement du terminal. Grâce aux services, vous pouvez implémenter des flux de données de prix personnalisés pour la plateforme, et aussi effectuer un large éventail de tâches auxiliaires.

    Ces programmes disposent désormais d’une catégorie dédiée. Les développeurs peuvent partager leurs codes dans la CodeBase :


    Partagez votre code dans la bibliothèque


    Les utilisateurs peuvent facilement les télécharger directement depuis la plateforme ou MetaEditor. Une fois téléchargé, le programme est placé dans le bon dossier, compilé automatiquement et prêt à être exécuté :


    Téléchargez les codes directement depuis la plateforme


  2. Correction d'un problème où les fichiers des graphiques fermés (supprimés) étaient déplacés vers le mauvais répertoire. De ce fait, les utilisateurs ne pouvaient pas restaurer ces graphiques via le menu « Fichier \ Ouvrir les éléments supprimés ».

MQL5

  1. Ajout de la prise en charge d'une nouvelle syntaxe pour les paramètres d'entrée. Vous pouvez désormais définir explicitement un nom visible à afficher dans les propriétés du programme. Auparavant, cela n’était possible que via les commentaires.

    Au lieu de la syntaxe obsolète :
    input int InpVar;  /*visible name*/ // some comment
    Utilisez le nouveau format :
    input(name="visible name") int InpVar;  // some comment
    Le nom de la variable visible est défini dans le paramètre « name », qui accepte uniquement des chaînes de caractères.

    Lorsque la nouvelle syntaxe d'entrée est utilisée, tous les commentaires suivant la déclaration de variable sont ignorés. L'ancienne syntaxe reste prise en charge et n'est pas obsolète. Vous pouvez continuer à l'utiliser et le compilateur ne générera pas d'avertissements.

  2. Correction d'une erreur où le compilateur pouvait produire de manière incorrecte le message « la fonction doit avoir un corps ».

MetaEditor

Testeur

  • Correction d'une erreur lors du test des indicateurs. Le processus pouvait ne pas démarrer si le nom de l’indicateur correspondait au nom d’un modèle de graphique.

Terminal Web

  1. Ajout de traductions roumaines et hébraïques pour l'interface utilisateur ; traductions améliorées dans la fenêtre de connexion au compte.
  2. Correction de l'affichage du menu des objets dans la version mobile.
  3. Correction de l'affichage du volume minimum et de l'étape de volume dans les spécifications du contrat.
5 septembre 2025
Nouvelle version de la Plateforme MetaTrader 5 Build 5260 : Améliorations dans Algo Forge et nouvelles règles d'héritage dans MQL5

Terminal

  1. Correction de l'affichage des paramètres de marge dans les spécifications des symboles de trading. Auparavant, en cas d'utilisation d'un effet de levier flottant (par exemple, calculé sur la base du volume de la position du compte), les paramètres de marge dans les spécifications du contrat pouvaient être affichés de manière incorrecte.
  2. Correction du tri du carnet d'ordres pour les symboles dont les prix négatifs sont autorisés. Les ordres avec des prix positifs, négatifs et nuls sont désormais affichés correctement et dans l'ordre. 
  3. Le guide de l'utilisateur du terminal comprend désormais une nouvelle section Comment le Testeur télécharge les données historiques. Il résume les points clés nécessaires pour comprendre comment le Testeur de Stratégie fonctionne avec l'historique de trading. Pour garantir la stabilité des calculs, le testeur charge toujours une "mémoire tampon de l'historique avant le démarrage" :
    • D1 et moins — à partir du début de l'année civile précédente. Cela permet de disposer d'un historique d'au moins 1 an. Exemple : si la date de début du test est le 01/03/2023, le terminal téléchargera depuis le terminal les données depuis le 01/01/2022. Cela équivaut à 14 mois avant le début du test.
    • W1 — au moins 100 barres hebdomadaires (~2 ans).
    • MN1 — au moins 100 barres mensuelles (~8 ans).

    Si l'historique disponible est insuffisant, le testeur avance automatiquement la date de début réelle au point le plus proche répondant aux exigences.

    Dans ce cas, les tests commencent plus tard que la date spécifiée par l'utilisateur. Le journal du testeur affichera un message correspondant, par exemple :

    start time changed to 2024.03.15 00:00 to provide data at beginning


MQL5 

  1. Ajout de 5 nouvelles méthodes OpenBLAS dans la section Matrix Balance, élargissant la fonctionnalité pour les matrices carrées. Le nouvel ensemble de fonctions fournit :
    • L’équilibrage des matrices pour une meilleure précision dans les calculs des valeurs propres
    • Les transformations arrière des vecteurs propres
    • La réduction à la forme de Hessenberg et à la décomposition de Schur, y compris la génération de matrices orthogonales

    Ces méthodes offrent aux développeurs un cycle de transformation complet, de la préparation préliminaire de la matrice au calcul précis et stable du spectre.

    Les méthodes sont basées sur des algorithmes LAPACK (GEBAL, GEBAK, GEHRD, ORGHR, HSEQR), ce qui garantit des performances et une fiabilité élevées :

    • MatrixBalance : Équilibre une matrice réelle ou complexe générale en permutant les lignes et les colonnes et en appliquant des transformations de similarité diagonale. L'équilibrage peut réduire la norme 1 de la matrice et améliorer la précision des valeurs propres et/ou des vecteurs propres calculés (fonction LAPACK GEBAL).
    • EigenVectorsBackward : Forme les vecteurs propres de droite ou de gauche d'une matrice générale réelle ou complexe par transformation à rebours des vecteurs propres calculés de la matrice équilibrée (fonction LAPACK GEBAK). 
    • ReduceToHessenbergBalanced : Réduit une matrice équilibrée générale réelle ou complexe à la forme de Hessenberg supérieure par une transformation de similarité orthogonale (fonction LAPACK GEHRD).
    • ReflectHessenbergBalancedToQ : Génère la matrice orthogonale Q qui est définie comme le produit des réflecteurs élémentaires d'ordre n générés par la réduction à la forme de Hessenberg (fonction LAPACK ORGHR).
    • EigenHessenbergBalancedSchurQ : Calcule les valeurs propres d'une matrice de Hessenberg et les matrices T et Z de la décomposition de Schur ; en option, calcule la factorisation de Schur d'une matrice d'entrée réduite à la forme de Hessenberg (fonction LAPACK HSEQR).


  2. Ajout de 2 nouvelles méthodes dans la section Valeurs propres. Les deux fonctions calculent efficacement les vecteurs propres après la décomposition de Schur, complétant ainsi l'ensemble des outils d'algèbre linéaire de MQL5 :

    • EigenVectorsTriangularZ : Calcule les vecteurs propres d'une matrice réelle quasi-triangulaire supérieure ou triangulaire supérieure complexe (forme de Schur). Utilise la décomposition A = Q - T - Qᴴ (fonction LAPACK TREVC). Offre une grande précision.
    • EigenVectorsTriangularZBlocked : Version en bloc pour le calcul des vecteurs propres d'une matrice réelle quasi-triangulaire supérieure ou triangulaire supérieure complexe (fonction LAPACK TREVC3). Plus rapide mais moins précis.


  3. Introduction d'un changement important dans l'héritage avec la nouvelle règle de dissimulation des méthodes

    Auparavant, si une classe ou une structure dérivée définissait une méthode portant le même nom que dans la classe de base, la surcharge était effectuée : toutes les versions (du parent et de l'enfant) étaient disponibles dans la classe dérivée. Or, les méthodes portant le même nom dans une classe dérivée cachent les méthodes de la classe de base (method hiding).

    Pour appeler une méthode cachée de la classe de base, vous devez spécifier explicitement sa portée lors de l'appel :
    class Base
      {
    public: 
       void Print(int x)   { ::Print("Base int: ", x); }
       void Print(double y){ ::Print("Base double: ", y); }
      };
    
    class Derived : public Base
      {
    public:
       void Print(string s){ ::Print("Derived string: ", s); }
      };
    
    void OnStart()
      {
       Derived d;
       d.Print("text");    // call of Derived::Print(string)
       d.Print(10);        // ATTENTION! Calling Derived::Print(string) since Base::Print is hidden (inaccessible)
       d.Base::Print(10);  // explicit call to hidden parent method
      }
    Depuis un certain temps, le compilateur MQL5 émet un avertissement si une méthode de base cachée correspond mieux aux paramètres de l'appel que la méthode dérivée disponible. Exemple pour le code ci-dessus d.Print(10) :
    call resolves to 'void Derived::Print(string)' instead of 'void Base::Print(int)' due to new rules of method hiding
       see declaration of function 'Derived::Print'
       see declaration of function 'Base::Print'
    implicit conversion from 'number' to 'string'

  4. Ajout de l'opérateur using pour restaurer les surcharges des méthodes de la classe de base.

    Pour contrôler ce nouveau comportement, MQL5 introduit l'opérateur 'using'. Il permet de "tirer" toutes les surcharges d'une méthode du type de base dans la portée d'une classe ou d'une structure :
    class Base
      {
    protected:
       void Print(int x)   { ::Print("Base int: ", x); }
       void Print(double y){ ::Print("Base double: ", y); }
      };
    
    class Derived : public Base
      {
    public:
       void Print(string s){ ::Print("Derived string: ", s); }
       using Base::Print;  // return Print overloads from Base
      };
    
    void OnStart()
      {
       Derived d;
       d.Print("text");   // Derived::Print(string)
       d.Print(42);       // Base::Print(int)
       d.Print(3.14);     // Base::Print(double)
      }
    Si "using Base::Print ;" est supprimé, les appels à d.Print(42) et d.Print(3.14) seront indisponibles ; seul Derived::Print(string) subsistera.

    Dans cet exemple, vous pouvez également voir que les méthodes protégées de la classe de base deviennent accessibles dans la classe dérivée (leur visibilité passe de protégée à publique).

    Les développeurs disposent ainsi d'un contrôle plus souple et plus prévisible sur les hiérarchies de classes, ce qui leur permet de définir précisément quelles surcharges de méthodes de la classe de base doivent rester accessibles dans les types dérivés.

MetaEditor

  1. Calculs de hachage SHA-1 accélérés pour les opérations Git dans Algo Forge. L'amélioration des performances est supérieure à 40% pour les opérations en masse.
  2. Correction des vérifications de modification de fichiers pour les opérations Git. Si seule l'heure de modification change mais que le contenu du fichier reste le même, le fichier n'est plus considéré comme modifié. Cela permet d'éliminer les fausses détections et d'éviter les conflits avec les dépôts distants.


Algo Forge

Publication du Guide de l'Utilisateur MQL5 Algo Forge. Il met en évidence tous les avantages clés de Git sans complexité inutile :
  1. un stockage fiable de l'historique des versions et des branchements,
  2. l'expérimentation rapide et la fusion sûre des modifications,
  3. créer votre propre dépôt ou forker les projets d'autres développeurs en un seul clic,
  4. une collaboration transparente au sein de l'équipe avec un suivi des contributions,
  5. un catalogue de projets ouverts offrant la possibilité d'apprendre des autres.


    Cloner le projet d'un autre développeur
    Ouvrez le projet que vous souhaitez cloner sur forge.mql5.io et cliquez sur Fork. Saisissez un nom et une description pour le fork et enregistrez.

    Cloner un projet

    Dans MetaEditor, en utilisant le même compte MQL5, exécutez la commande Rafraîchir dans le Navigateur. Votre fork apparaîtra dans le dossier Projets partagés. Téléchargez-le depuis Algo Forge en utilisant Git Clone. Vous recevrez non seulement les fichiers du projet, mais aussi l'historique complet des livraisons et toutes les branches. Cela signifie que vous pouvez continuer à travailler sur le fork tout en conservant l'historique complet du projet cloné.  

    Commande Git Clone dans Algo Forge


Terminal Web

  1. Correction de l'affichage des sessions de trading et de cotation dans les spécifications des symboles.
  2. Correction de l'affichage des titlehttps://www.metatrader5.com/fr/terminal/help/trading/market_watch#specificationtitleparamètres de marge dans les spécifications des symboles.
  3. Correction de l'affichage des sessions de trading et de cotation dans les spécifications des symboles.
  4. Ajout de la prise en charge du type de compte Championnat. Ces comptes sont affichés en bleu, alors que les comptes de démonstration apparaissent en vert.
  5. Correction de l'exactitude des calculs de marge de l'effet de levier dans certaines conditions. 
  6. Correction d'un problème lors de l'ouverture d'un nouveau compte où le bouton "Suivant" ne permettait pas toujours de passer à l'étape suivante.
  7. Correction d'un problème où il n'était pas possible de placer un ordre limité entre les prix Bid et Ask pour une exécution en Bourse.
  8. Correction de l'affichage des prix d'exécution des ordres. Une fois l'ordre envoyé, les résultats de son exécution apparaissent dans la fenêtre : une opération réussie ou la raison pour laquelle l'ordre n'a pas été exécuté. Dans certains cas, le prix d'exécution était incorrectement indiqué comme étant "0".
  9. Correction d'un problème où le bouton de fermeture de la position rapide ne s'affichait pas.

    Bouton de fermeture de position

  10. Correction de l'affichage des devises des comptes de trading dans la fenêtre de sélection des comptes.
31 juillet 2025
Nouvelle version de la Plateforme MetaTrader 5 Build 5200 : Prise en charge étendue d'OpenBLAS et contrôle amélioré dans MQL5

Terminal

  1. Ajout de la possibilité d'appliquer automatiquement le thème clair ou sombre en fonction de vos paramètres Windows. Pour l'activer, sélectionnez la nouvelle option : Affichage \ Thèmes de couleurs \ Système. À chaque lancement de la plateforme, elle détectera le thème de votre système et s'ajustera en conséquence.


    Ajout de la possibilité d'appliquer automatiquement le thème clair ou sombre en fonction de vos paramètres Windows


  2. Correction des problèmes d'affichage avec les barres d'outils détachées de la fenêtre principale.
  3. Correction du calcul de la valeur de liquidation du portefeuille dans la section Actifs. Dans certains cas, les positions de certains instruments n’étaient pas comptabilisées.
  4. Correction de l'affichage des prix négatifs dans le Marketing Depth. Ceux-ci sont désormais triés correctement.
  5. Correction de l'import de l'historique des prix fixes pour les symboles personnalisés. Pour les instruments situés dans le dossier racine, les commandes correspondantes pouvaient auparavant être indisponibles.
  6. Mise à jour des traductions de l'interface utilisateur.

MQL5

  1. Ajout de nouvelles méthodes OpenBLAS :

    Réductions de Matrice

    • ReduceToHessenberg — réduit une matrice générale n-par-n réelle ou complexe A à la forme de Hessenberg supérieure B par une transformation de similarité orthogonale : Q**T * A * Q = H. Fonction LAPACK GEHRD.
    • ReflectHessenbergToQ — génère une matrice orthogonale Q qui est définie comme le produit de n-1 réflecteurs élémentaires d'ordre n, comme renvoyé par ReduceToHessenberg : Q = H(1) H(2) . . . H(n-1). Fonction LAPACK ORGHR.

    Valeurs propres et vecteurs propres

    • EigenHessenbergSchurQ — calcule les valeurs propres d'une matrice de Hessenberg H et des matrices T et Z à partir de la décomposition de Schur H = Z T Z**T, où T est une matrice quasi-triangulaire supérieure (la forme de Schur) et Z est la matrice orthogonale des vecteurs de Schur. Fonction LAPACK HSEQR.

    Equations Linéaires

    • SylvesterEquationTriangular — résout l'équation de Sylvester pour les matrices quasi-triangulaires réelles ou triangulaires complexes : op(A)*X + X*op(B) = scale*C ou op(A)*X - X*op(B) = scale*C où op(A) = A ou A**T ou A**H, et A et B sont tous deux triangulaires supérieurs. Fonction LAPACK TRSYL.
    • SylvesterEquationTriangularBlocked — résout l'équation de Sylvester pour les matrices quasi-triangulaires réelles ou triangulaires complexes : op(A)*X + X*op(B) = scale*C ou op(A)*X - X*op(B) = scale*C où op(A) = A ou A**T ou A**H, et A et B sont tous deux triangulaires supérieurs. Fonction LAPACK TRSYL3. Il s'agit de la version bloc (BLAS niveau 3) de TRSYL. Jusqu'à 5 fois plus rapide mais pas aussi précis.

    Calculs factorisés

    • SylvesterEquationSchur — résout l'équation de Sylvester pour les matrices quasi-triangulaires réelles ou triangulaires complexes : A*X + X*B = C où A et B sont tous deux triangulaires supérieurs. A est de dimensions m par m et B est de dimensions n par n ; le côté droit C et la solution X sont de dimensions m par n. Fonction LAPACK TRSYL.
    • SylvesterEquationSchurBlocked — résout l'équation de Sylvester pour les matrices quasi-triangulaires réelles ou triangulaires complexes : A*X + X*B = C où A et B sont tous deux triangulaires supérieurs. A est de dimensions m par m et B est de dimensions n par n ; le côté droit C et la solution X sont de dimensions m par n. Fonction LAPACK TRSYL3. Il s'agit de la version bloc (BLAS niveau 3) de TRSYL. Jusqu'à 5 fois plus rapide mais pas aussi précis.

    Calculs de normes matricielles

    • MatrixNorm — renvoie la valeur de la norme 1, de la norme infinie, de la norme de Frobenius ou la plus grande valeur absolue de tout élément d'une matrice rectangulaire générale. Fonction LAPACK LANGE.
    • MatrixNormGeTrid — renvoie la valeur de la norme 1, de la norme infinie, de la norme de Frobenius ou la plus grande valeur absolue de tout élément d'une matrice tridiagonale générale. Fonction LAPACK LANGT.
    • MatrixNormHessenberg — renvoie la valeur de la norme 1, de la norme infinie, de la norme de Frobenius ou la plus grande valeur absolue de tout élément d'une matrice de Hessenberg supérieure. Fonction LAPACK LANHS.
    • MatrixNormSy — renvoie la valeur de la norme 1, de la norme infinie, de la norme de Frobenius ou la plus grande valeur absolue de tout élément d'une matrice hermitienne symétrique ou complexe réelle. Fonctions LAPACK LANSY, LANHE.
    • MatrixNormComplexSy — renvoie la valeur de la norme 1, de la norme infinie, de la norme de Frobenius ou la plus grande valeur absolue de tout élément d'une matrice symétrique complexe (non hermitienne). Fonction LAPACK LANSY.
    • MatrixNormSyTrid — renvoie la valeur de la norme 1, de la norme infinie, de la norme de Frobenius ou la plus grande valeur absolue de tout élément d'une matrice tridiagonale hermitienne symétrique ou complexe réelle. Fonctions LAPACK LANST, LANHT.
    • MatrixNormTriangular — renvoie la valeur de la norme 1, de la norme infinie, de la norme de Frobenius ou la plus grande valeur absolue de tout élément d'une matrice trapézoïdale m par n ou triangulaire. Fonction LAPACK LANTR.

    Classification matricielle

    • IsSymmetric — vérifie si une matrice carrée est symétrique.
    • IsHermitian — vérifie si une matrice complexe carrée est hermitienne.
    • IsUpperTriangular — vérifie si une matrice carrée est triangulaire supérieure.
    • IsLowerTriangular — vérifie si une matrice carrée est triangulaire inférieure.
    • IsTrapezoidal — vérifie si une matrice rectangulaire (et non carrée) m par n est trapézoïdale supérieure ou inférieure.
    • IsUpperHessenberg — vérifie si une matrice carrée est une matrice de Hessenberg supérieure.
    • IsLowerHessenberg — vérifie si une matrice carrée est une matrice de Hessenberg inférieure.
    • IsTridiagonal — vérifie si une matrice carrée est tridiagonale.
    • IsUpperBidiagonal — vérifie si une matrice carrée est bidiagonale supérieure.
    • IsLowerBidiagonal — vérifie si une matrice carrée est bidiagonale inférieure.
    • IsDiagonal — vérifie si une matrice carrée est diagonale.
    • IsScalar — vérifie si une matrice carrée est une matrice scalaire.

  2. Ajout de la méthode Conjugate pour les matrices et vecteurs complexes. Cette méthode change le signe de la partie imaginaire d'un nombre complexe et renvoie la matrice ou le vecteur modifié.
  3. Méthode renforcée masquant les règles. Lorsqu'une classe dérivée contient une méthode portant le même nom qu'une méthode de la classe de base, la version de la classe dérivée est désormais appelée par défaut. Pour appeler explicitement la méthode de la classe de base, un qualificateur est désormais requis :
    struct A
      {
       int y;
      
       string func(double x)
         {
          return(__FUNCSIG__);
         }
      };
      
    struct B : public A
      {
       string func(int x)   // the method hides A::func
         {
          return(__FUNCSIG__);
         }
      };
      
    void OnStart(void)
      {
       B b;
       b.func(M_PI);          // according to new rules, it is a call to B::func
       b.A::func(M_PI);       // call the hidden method A::func
      }
    Ce changement simplifie la lisibilité du code et élimine l’ambiguïté qui n’était auparavant accompagnée que d’un avertissement du compilateur.

    Auparavant, la compilation générait un avertissement :
    deprecated behavior, hidden method calling will be disabled in a future MQL compiler version
    Ce changement est désormais effectif.

    Pour un certain nombre de builds, un avertissement apparaîtra toujours dans le journal si une méthode cachée plus appropriée est disponible en fonction des paramètres :
    call resolves to 'string B::func(int)' instead of 'string A::func(double)' due to new rules of method hiding
       see declaration of function 'B::func'
       see declaration of function 'A::func'
    truncation of constant value from 'double(3.141592653589793)' to 'int(3)'
  4. Les noms en double au sein d'une même portée sont désormais interdits. Par exemple, il était auparavant possible de déclarer un paramètre d’entrée et une fonction portant le même nom dans un seul fichier. Une telle duplication n'est plus autorisée :
    input int somename=42;
    
    int somename(int x)
      {
       return(42);
      }
  5. Ajout d'une vérification de type stricte pour les valeurs par défaut dans les énumérations. Pour les paramètres de fonction acceptant une énumération, non seulement la valeur mais également le type exact doivent désormais correspondre :
    int somename(ENUM_TIMEFRAMES TF=PERIOD_CURRENT);
    
    int somename(ENUM_TIMEFRAMES TF=0)   // error, type mismatch for the default parameter value, despite having the same value
      {
       return(42);
      }
  6. Les identifiants identiques sont désormais interdits dans différentes énumérations. Un identifiant déclaré dans une énumération ne peut plus être réutilisé dans une autre au sein de la même portée :
    enum A
      {
       Value
      };
      
    enum B
      {
       Value  // error, name 'Value' is already used in enumeration A
      };
      
    void OnStart(void)
      {
       enum C
         {
          Value // OK, 'Value' is not used within the OnStart scope
         };
      }
    Les noms correspondant peuvent toutefois être utilisés dans différentes portées.

  7. Introduction d’exigences plus strictes pour les fonctions d’initialisation de modèle. Lors de la création de matrices/vecteurs à l'aide de fonctions d'initialisation, les fonctionnalités suivantes sont désormais désactivées :

    • Déduction automatique de type dans les templates de fonctions
    • Valeurs des paramètres par défaut

    Tous les paramètres et arguments du modèle doivent désormais être spécifiés explicitement : 
    template<typename T>
    void Initializer(matrix<T>& mat,int method=0);
    
    matrix<double> A(10,10,Initializer,42);          // error, Initializer must be explicitly typed
    matrix<double> A(10,10,Initializer<double>);     // error, missing 'method' parameter (default values no longer supported)
    matrix<double> A(10,10,Initializer<double>,42);  // OK
  8. Amélioration de la prise en charge ONNX. Ajout d'une conversion implicite des types signés lors du passage de tableaux ulong aux fonctions, simplifiant l'intégration MQL5 avec les modèles ONNX.
    OnnxSetInputShape( … , ulong_array );
    OnnxSetOutputShape( … , ulong_array );
  9. Affichage fixe des types dans les avertissements du compilateur liés aux conversions de chaînes implicites.
  10. Package d'intégration Python mis à jour. Pour installer la mise à jour, exécutez la commande :
    pip install --upgrade MetaTrader5

MetaEditor

  1. Correction de la commande « Revenir à la révision » utilisée avec MQL5 Storage. L'évaluation des conflits entre les versions qui peuvent survenir lors d'une pération de restauration est désormais effectuée avant le début de l'opération. Si le retour en arrière n’est pas possible, l’opération est annulée.
  2. Mise à jour des traductions de l'interface utilisateur.

Testeur

  1. Correction de la fonction OrderCalcMarginpour les comptes avec le mode de calcul Exchange.
  2. Correction du basculement entre les graphiques lors des tests visuels des Expert Advisors multidevises.

Terminal Web

  1. Correction de la vérification de l'e-mail pendant l'enregistrement d’un compte préliminaire ou de démonstration. Dans certains cas, le champ de saisie du code de confirmation n'était pas affiché.
  2. Correction des problèmes de connexion de compte lors de l'utilisation du navigateur sur les appareils Huawei.
  3. Correction de la connexion aux comptes lors de l'utilisation de mots de passe à usage unique. Dans certains cas, le champ de saisie de l'OTP était manquant lors de la première tentative de connexion.
27 juin 2025
Nouveau MetaTrader 5 pour iPhone/iPad : Rapport de trading et indicateurs supplémentaires

Les dernières versions de l'application mobile MetaTrader 5 pour iOS introduisent une série de nouvelles fonctionnalités conçues pour aider les traders à rester au courant des marchés financiers où qu'ils soient.

  1. Ajout du rapport représentant les résultats des transactions dans un format visuel pratique. Il aide à évaluer les performances de trading, à optimiser les portefeuilles et à trouver des méthodes permettant de réduire les risques ainsi que d'améliorer la stabilité du trading. Pour analyser votre stratégie, accédez à la section Historique et appuyez sur l'icône de sélection de la période. Ensuite, sélectionnez la période et appuyez sur "Créer un rapport de transaction".


    Nouveau rapport d'activité


    Le rapport est divisé en onglets, chacun fournissant des informations agrégées :

    • Résumé — un aperçu du trading au fil du temps : profits et pertes globaux, montants des dépôts et des retraits, graphiques de solde, de croissance et de dividendes et autres résultats de trading.
    • Profit/perte — données sur les transactions gagnantes ou perdantes. Le paramètre est divisé en fonction des types d'opérations (manuelles, algorithmiques et par copie). Les résultats peuvent être analysés en termes de transactions ou d'argent par mois et par année.
    • Long/Short — ratio dynamique des achats et des ventes à des périodes déterminées, ainsi que la rentabilité des achats et des ventes.
    • Symboles — analyse des transactions par instruments financiers. Vous y verrez les symboles sur lesquels vous gagnez ou perdez, la fréquence à laquelle vous les négociez, les graphiques des transactions et les volumes monétaires pour ces symboles.
    • Risques — principales caractéristiques de risque de votre stratégie : graphiques de retrait et de rechargement de votre dépôt, ainsi que le ratio de transactions gagnantes et perdantes.

  2. Ajout des indicateurs ZigZag et Market Profile, ainsi que d'un nouveau type de graphique — le Heikin Ashi. Ces outils permettront d'améliorer l'analyse du marché et l'identification des tendances.

    Pour ajouter de nouveaux indicateurs, ouvrez le menu graphique, appuyez sur Fenêtre principale et sélectionnez-les dans la liste. ZigZag se trouve sous les indicateurs de tendance, et Market Profile appartient aux indicateurs de volume.


    Indicateurs Market Profile et ZigZag


    Pour afficher le graphique Heikin Ashi, appuyez sur le graphique et accédez aux paramètres.


    Graphique Heikin Ashi


  3. Ajout d'informations sur les transactions dans la Fenêtre des Données. Lorsque le pointeur est placé sur une barre contenant des transactions, la Fenêtre des Données affiche des informations générales sur la transaction : direction, ticket, volume, prix et résultat financier, ainsi que les prix et les valeurs des indicateurs.


    Fenêtre des données améliorée


  4. Ajout du mode rapide pour l'affichage de la Fenêtre des Données sur le graphique. Appuyez sur le graphique principal pendant plus d'une seconde pour activer le mode réticule ainsi que la Fenêtre des Données. Dès que vous relâchez votre doigt, le graphique revient en mode normal. Cela permet de visualiser rapidement les valeurs exactes des barres, des indicateurs et des transactions sans avoir à passer en mode réticule via le panneau supérieur.
  5. Ajout d'une commande distincte pour redimensionner et réorganiser les fenêtres d'indicateurs supplémentaires. La même action peut être effectuée en appuyant longuement sur la sous-fenêtre de l'indicateur sur le graphique. Le mode d'édition des sous-fenêtres a également été amélioré par l'ajout d'icônes pour plus de clarté.


    Nouvelle commande pour redimensionner et réorganiser les sous-fenêtres de l'indicateur


  6. Affichage optimisé de l'historique des transactions sur le graphique. L'application peut désormais afficher des milliers de transactions sans dégradation significative des performances.

    Installez la dernière version de l'application et débloquez des fonctionnalités de trading étendues :


    12 juin 2025
    Mise à jour de la plateforme MetaTrader 5 Build 5120 : Améliorations et corrections

    Terminal

    1. Correction des problèmes d'affichage de l'interface graphique lors de l'exécution sous Linux et sous macOS.
    2. Amélioration du mécanisme de mise à jour de la plateforme. La bibliothèque standard MQL5 ne sera plus entièrement écrasée lors des mises à jour : seuls les fichiers qui ont réellement changé seront remplacés.
    3. Ajout de la réinitialisation automatique du mode d'affichage plein écran au redémarrage de l'application. L'interface complète sera désormais affichée à chaque lancement.

    MQL5

    1. Activation du passage de tableaux avec un typage signé/non signé dans les fonctions suivantes :

      • ArraySwap
      • WebRequest
      • CryptEncode
      • CryptDecode
      • StringToCharArray
      • CharArrayToString
      • StringToShortArray
      • ShortArrayToString
      • StructToCharArray
      • CharArrayToStruct

    2. Correction de la récupération des états clés pour les programmes MQL sur le graphique actif à l'aide de la fonction TerminalInfoInteger.
    3. Correction de l’exécution de la fonction ArrayInitialize pour les tableaux d'énumération.

    MetaEditor

    1. Modèles disponibles mis à jour pour l’AI Assistant. Tous les modèles GPT-4.1 et 04-mini sont désormais pris en charge.
    2. Activation de la vérification stricte de l'état des fichiers dans le stockage MQL5 Storage. Les hachages de fichiers sont désormais vérifiés pour éviter les fausses indications. Auparavant, les fichiers sans modifications locales réelles par rapport à la version du référentiel pouvaient être marqués à tort avec une icône rouge.
    3. Mise à jour des traductions de l'interface utilisateur.

    5 juin 2025
    Nouvelle version de la Plateforme MetaTrader 5 Build 5100 : Passage à Git et au hub de développement MQL5 Algo Forge, thème sombre et améliorations de l'interface

    MetaEditor

    • Nous avons entièrement revu le stockage MQL5 Storage, en remplaçant Subversion par Git comme système de contrôle de version. Git est la norme mondiale pour les développeurs, offrant une fiabilité et une flexibilité accrues dans la gestion du code.

      • Branchements et merge flexibles – créez des branches distinctes pour les nouvelles fonctionnalités ou les expériences et fusionnez-les facilement avec la version principale du projet.
      • Opérations de dépôt plus rapides – contrairement à Subversion, Git stocke toutes les données localement, ce qui rend les validations, les changements de version et les comparaisons de modifications beaucoup plus rapides.
      • Possibilité de travailler hors ligne – pas besoin d'une connexion constante au serveur : validez les modifications localement et transférez-les dans un référentiel en ligne quand cela vous convient.
      • Suivi avancé des modifications – consultez facilement l'historique des versions, suivez les modifications à l'aide des timestamps et des auteurs, et revenez aux versions précédentes sans complications.
      • Fonctionnalité de fusion (merge) supérieure – des outils de comparaison et de fusion avancés permettent de minimiser les conflits et de rationaliser le développement collaboratif.

      Un nouveau niveau de développement collaboratif
      Avec la transition vers Git, nous introduisons MQL5 Algo Forge, un nouveau portail en ligne pour la gestion de projets. Plus qu'une simple liste de projets, il s'agit d'un véritable réseau social pour les développeurs – essentiellement GitHub pour les traders algorithmiques. Suivez des développeurs intéressants, créez des équipes et collaborez à des projets sans effort.




      Affichez les détails du projet : structure, fichiers, commits, branches, etc. Suivez les contributions individuelles, créez de la documentation et partagez les projets en ligne.




      Surveillez tous les changements de code : détecter les lignes nouvelles, modifiées et supprimées. En cas de problème, confiez les tâches aux développeurs directement au sein du projet.




      Pour améliorer la convivialité de Git, nous avons redessiné le Navigateur et la fenêtre active d'édition du code. Nous avons également introduit un menu Git dédié dans la barre d'outils de MetaEditor :




      Une documentation complète sur Git sera bientôt disponible.

    Terminal

    1. Ajout de la prise en charge d'un schéma de couleurs sombres pour tous les composants, y compris le terminal de trading, MetaEditor et le testeur visuel. Le thème sombre offre une expérience de développement plus confortable la nuit. Utilisez le menu Affichage pour passer d'un mode à l'autre :




      Tout en adaptant l'interface à différents thèmes, nous avons apporté de nombreuses améliorations à l'affichage des boîtes de dialogue, des menus, des panneaux et des boutons pour une expérience utilisateur plus confortable. Dans MetaEditor, les informations sur la position du curseur et l'indicateur du mode de saisie du texte (INS/OVR) sont désormais affichés dans le coin supérieur droit. La barre d'état inférieure a été supprimée pour économiser l'espace de travail.

    2. Ajout d'une option de location de VPS pour 12 mois. En achetant d'emblée un hébergement à long terme, vous économisez un tiers du coût total.


      Ajout d'une option de location de VPS pour 12 mois.


    3. Utilisation optimisée de la mémoire. Le terminal consomme désormais moins de ressources système, ce qui améliore ses performances.
    4. Affichage optimisé de l'historique des transactions du compte. La plateforme peut désormais afficher correctement des millions d'enregistrements.
    5. Ajout de la commande "Rétablir les paramètres par défaut" dans le menu Fenêtres. Il réinitialise tous les éléments de l'interface, y compris les graphiques, le Navigateur, le Testeur de Stratégie et d'autres, à leur position d'origine.
    6. Correction d'une erreur provoquant le blocage de la boîte de dialogue de modification de la position dans certaines conditions.
    7. Calcul de la valeur fixe pour les positions ouvertes avec des prix négatifs.
    8. Calculs de taux de marge fixes dans les spécifications de symboles de trading avec des prix négatifs.
    9. Correction du calcul des valeurs MFE et MAE actuelles et de l'affichage de leurs graphiques dans les rapports de trading.
    10. Correction de l'échelle des oscillateurs dans les sous-fenêtres graphiques. L'échelle verticale des oscillateurs est désormais affichée correctement.
    11. Correction de la visibilité des carnets d’ordres et des tableaux d'options lors du passage en mode plein écran.
    12. Ajout de l'affichage des tickets de position dans l'historique des transactions du compte. Utilisez le menu contextuel pour activer la colonne concernée.
    13. Correction du calcul de la valeur de liquidation dans l'onglet Exposition pour les contrats à terme et les options.
    14. Correction d'un problème lié à la copie dans le presse-papiers des données d'un compte nouvellement créé. Lors de la dernière étape de l'enregistrement d'un compte de démonstration ou préliminaire, l'utilisateur reçoit les détails de son compte : login, mots de passe, etc. Ils peuvent être copiés dans le presse-papiers pour être enregistrés dans un fichier séparé. La commande correspondante fonctionne désormais correctement sur macOS.
    15. Correction de l'affichage de la section "Journal VPS". La page pouvait afficher une erreur dans certaines conditions.
    16. Correction de la prise en charge des moniteurs HiDPI sous Linux.
    17. Mise à jour des traductions de l'interface utilisateur.

    MQL5

    1. Ajout de l'opérateur de multiplication de matrice @. Il suit les règles de l'algèbre linéaire et permet la multiplication des matrices et des vecteurs, ainsi que les produits scalaires (point) des vecteurs.

      Multiplication matricielle (matrice × matrice)
      matrix A(2, 3);
      matrix B(3, 2);
      matrix C = A @ B; // Result: Matrix C of size [2,2]
      Multiplication matricielle (matrice × vecteur)
      matrix M(2, 3);
      vector V(3);
      vector R = M @ V; // Result: Vector R of 2 elements
      Multiplication matricielle (vecteur x matrice)
      matrix M(2, 3);
      vector V(1, 2);
      vector R = V @ M; // Result: Vector R of 3 elements
      Multiplication scalaire (vecteur × vecteur)
      vector V1(1, 3), V2(1, 3);
      double r = V1 @ V2; // Result: Scalar
    2. Ajout du paramètre 'ddof' dans les méthodes Std, Var et Cov. Ce paramètre définit le nombre de degrés de liberté soustrait du dénominateur lors du calcul de l'écart-type. Pour Std et Var, le paramètre par défaut est 0, pour Cov il est 1.

      Comment ddof affecte le calcul :

      • Par défaut, ddof=0, ce qui signifie que l'écart-type de la population est calculé.
      • Si ddof=1, la fonction calcule l'écart type de l'échantillon, qui tient compte des tailles d'échantillon finies, couramment utilisé en statistique lors de l'analyse d'un sous-ensemble de données.

    3. Ajout de nouvelles méthodes OpenBLAS :

      Valeurs propres et vecteurs propres

      • EigenTridiagonalDC – calcule les valeurs propres et les vecteurs propres d'une matrice tri-diagonale symétrique à l'aide de l'algorithme de division et de conquête (fonction LAPACK STEVD).
      • EigenTridiagonalQR – calcule les valeurs propres et les vecteurs propres d'une matrice tri-diagonale symétrique à l'aide de l'algorithme QR (fonction LAPACK STEV).
      • EigenTridiagonalRobust – calcule les valeurs propres et les vecteurs propres d'une matrice tri-diagonale symétrique en utilisant l'algorithme MRRR (Multiple Relatively Robust Representations) (fonction LAPACK STEVR).
      • EigenTridiagonalBisect – calcule les valeurs propres et les vecteurs propres d'une matrice tri-diagonale symétrique à l'aide de l'algorithme de bissection (fonction LAPACK STEVX).
      • ReduceToBidiagonal – réduit une matrice générale réelle ou complexe m-par-n A à la forme bi-diagonale supérieure ou inférieure B par une transformation orthogonale : Q**T * A * P = B. Si m≥n, B est une matrice bi-diagonale supérieure ; sinon, B est bi-diagonale inférieure. (fonction LAPACK GEBRD).
      • ReflectBidiagonalToQP – génère les matrices orthogonales Q et P**T (ou P**H pour les types complexes) déterminées par la méthode ReduceToBidiagonal lors de la réduction d'une matrice réelle ou complexe A à la forme bi-diagonale : A = Q * B * P**T. Q et P**T sont définis comme des produits de réflecteurs élémentaires H(i) ou G(i) respectivement (fonctions LAPACK ORGBR, UNGBR).
      • ReduceSymmetricToTridiagonal – réduit une matrice symétrique réelle ou hermitienne complexe A à la forme tri-diagonale B par une transformation de similarité orthogonale : Q**T * A * Q = B (fonctions Lapack SYTRD, HETRD).
      • ReflectTridiagonalToQ – génère une matrice orthogonale Q définie comme le produit de n-1 réflecteurs élémentaires d'ordre n, tel que renvoyé par ReduceSymmetricToTridiagonal.

      • LinearEquationsSolution – calcule la solution du système d'équations linéaires avec une matrice à coefficients carrés A et plusieurs côtés droits.
      • LinearEquationsSolutionTriangular – calcule la solution du système d'équations linéaires avec une matrice de coefficient triangulaire carrée A et plusieurs côtés droits.
      • LinearEquationsSolutionSy – calcule la solution du système d'équations linéaires avec une matrice A conjuguée symétrique ou hermitienne et plusieurs côtés droits.
      • LinearEquationsSolutionComplexSy – calcule la solution du système d'équations linéaires avec une matrice symétrique complexe A et plusieurs côtés droits.
      • LinearEquationsSolutionGeTrid – calcule la solution du système d'équations linéaires avec une matrice A symétrique ou hermitienne conjuguée à définition positive et plusieurs côtés droits.
      • LinearEquationsSolutionSyPD – calcule la solution du système d'équations linéaires avec une matrice tri-diagonale générale (non symétrique) à coefficients A et plusieurs côtés droits.
      • LinearEquationsSolutionSyTridPD – calcule la solution du système d'équations linéaires avec une matrice symétrique tri-diagonale à coefficients définis positifs A et plusieurs côtés droits.
      • FactorizationQR – calcule la factorisation QR d'une matrice générale m par n : A = Q * R (fonction LAPACK GEQRF).
      • FactorizationQRNonNeg – calcule la factorisation QR d'une matrice générale m par n : A = Q * R, où R est une matrice triangulaire supérieure avec des entrées diagonales non négatives (fonction LAPACK GEQRFP).
      • FactorizationQRPivot – calcule la factorisation QR d'une matrice générale m par n avec pivotement des colonnes : A * P = Q * R (fonction LAPACK GEQP3).
      • FactorizationLQ – calcule la factorisation LQ d'une matrice générale m par n : A = L * Q (fonction LAPACK GELQF).
      • FactorisationQL – calcule la factorisation QL d'une matrice générale m par n : A = Q * L (fonction LAPACK GEQLF).
      • FactorizationRQ – calcule la factorisation RQ d'une matrice générale m par n : A = R * Q (fonction LAPACK GERQF).
      • FactorizationPLU – calcule une factorisation LU d'une matrice générale M par N A en utilisant le pivotement partiel avec des changements de ligne (fonction LAPACK GETRF).
      • FactorizationPLUGeTrid – calcule une factorisation LU d'une matrice tri-diagonale générale (non symétrique) N par N A en utilisant l'élimination avec pivotement partiel et les changements de ligne (fonction LAPACK GTTRF).
      • FactorizationLDL – calcule la factorisation d'une matrice réelle symétrique ou complexe hermitienne A en utilisant la méthode de pivotement diagonal de Bunch-Kaufman (fonctions LAPACK SYTRF et HETRF).
      • FactorisationLDLSyTridPD – calcule la factorisation d'une matrice tri-diagonale symétrique à définition positive ou, pour les données complexes, hermitienne à définition positive A (fonction LAPACK PTTRF).
      • FactorisationCholesky – calcule la factorisation d'une matrice réelle symétrique ou complexe hermitienne à définition positive A (fonction LAPACK POTRF).
      • FactorizationCholeskySyPS – calcule la factorisation de Cholesky avec pivotement complet d'une matrice réelle symétrique (hermitienne complexe) semi-définie positive n-par-n (fonction LAPACK PSTRF).

    4. Ajout de la fonction Random et de la méthode pour remplir les vecteurs et les matrices avec des valeurs aléatoires. Des valeurs aléatoires sont générées uniformément dans la plage spécifiée.
      static vector vector::Random(
        const ulong   size,       // vector length
        const double  min=0.0,    // min value
        const double  max=1.0     // max value
         );
      
      static matrix matrix::Random(
        const ulong   rows,       // number of rows
        const ulong   cols        // number of columns
        const float   min=0.0,    // min value
        const float   max=1.0     // max value
         );
    5. Ajout de la prise en charge d'alias supplémentaires pour les types entiers. Cela simplifiera le portage du code à partir d'autres langages tels que C et C++.

      Ces alias n'introduisent pas de nouveaux types mais fournissent des noms alternatifs pour les types existants dans MQL5. Ils peuvent être utilisés dans tous les contextes où les types de base sont applicables.

      • int8_t
      • uint8_t
      • int16_t
      • uint16_t
      • int32_t
      • uint32_t
      • int64_t
      • uint64_t

    6. Ajout de nouvelles fonctions pour détecter le schéma de couleurs du terminal :

      • Une nouvelle propriété TERMINAL_COLORTHEME_NAME a été ajoutée à l'énumération ENUM_TERMINAL_INFO_STRING. Utilisez cette propriété avec la fonction TerminalInfoString pour demander le schéma de couleurs du terminal. Valeurs possibles : Clair et Sombre.
      • De nouvelles propriétés THEME_COLOR_* ont été ajoutées à l'énumération ENUM_TERMINAL_INFO_INTEGER. Utilisez-les avec la fonction TerminalInfoInteger pour récupérer les couleurs d'éléments spécifiques de l'interface utilisateur.

      Pour détecter un changement de schéma de couleurs, utilisez le gestionnaire OnChartEvent. Lorsque le thème change, l'événement CHARTEVENT_CHART_CHANGE est déclenché 2 fois.

    7. Correction d'un bug qui provoquait le plantage de MetaEditor lors de la compilation de code contenant la méthode Array::Reserve. La méthode "Reserve" ne modifie pas la taille du tableau mais réserve de l'espace pour le nombre d'éléments spécifié afin d'éviter une réallocation de la mémoire lors de l'ajout de nouveaux éléments.
    8. Correction du comportement de la méthode Array::Push, qui ajoute de nouveaux éléments à la fin d'un tableau. Le problème s'est produit dans les tableaux dont l'espace tampon est pré-alloué.
    9. Résolution de problèmes dans les fonctions pour travailler avec OpenCL.

    MetaTester

    1. Accélération de l'optimisation des stratégies de trading.
    2. Correction d'un bug qui, dans certains cas, entraînait une utilisation excessive de la mémoire par les agents de test lors de l'exécution de tâches à partir du réseau MQL5 Cloud Network.

    Terminal Web

    1. Correction de l'option de sauvegarde du mot de passe dans la boîte de dialogue de connexion au compte.
    2. Correction des boutons de déplacement des graphiques. Dans certains cas, l'utilisation de ces boutons a fait disparaître le graphique.
    3. Correction de la validation du champ "Second prénom" dans le formulaire d'enregistrement d'un compte réel. Elle est désormais facultative.
    4. Correction de l'ouverture des comptes de démo. Dans certains cas, les utilisateurs ont été redirigés à tort vers le site web du courtier.
    5. Correction de la visibilité des boutons d'ouverture des comptes de démo et des comptes réels. Ces boutons sont désormais masqués si la fonction correspondante est désactivée par le courtier.
    6. Correction du comportement du champ "Dépôt" dans le formulaire d'ouverture de compte de démo.
    7. Correction de l'affichage du champ "Trading" dans la spécification du contrat.
    8. Correction du champ de recherche de symboles dans la fenêtre du "Market Watch". Le bouton "X" apparaît maintenant correctement pour quitter le mode de recherche.
    9. Correction de l'affichage d'une info-bulle pour le champ du code de confirmation de l'email dans le formulaire d'ouverture de compte.
    18 mars 2025
    MetaTrader 5 pour iPhone et iPad : Règle, objets texte pour les graphiques, et minuterie des barres

    Les dernières versions de l'application mobile MetaTrader 5 pour iOS introduisent une série de fonctionnalités graphiques pratiques, ainsi que d'importantes améliorations de la stabilité pour une expérience utilisateur plus fluide.

    1. Ajout d'un objet texte pour créer des étiquettes personnalisées sur les graphiques. Ouvrez le menu des objets graphiques et appuyez sur "Ajouter un texte". Saisissez ensuite le texte que vous souhaitez et sélectionnez un point sur le graphique pour placer l'étiquette. Un objet possède deux points : l'un pour se déplacer et l'autre pour ajuster la direction.



      Objet texte pour la création d'étiquettes personnalisées sur les graphiques



      Nous avons également ajouté un petit menu d'objets sur le graphique, qui apparaît en bas de l'écran immédiatement après la création d'un objet. Vous pouvez désormais modifier les propriétés les plus importantes sans avoir à naviguer dans le menu complet des objets.

    2. Ajout d'un compte à rebours qui affiche le temps restant jusqu'à la fermeture de la barre actuelle. Il fonctionne sur toutes les échelles de temps, de la minute à la journée. Cette fonction sera particulièrement utile aux traders dont les stratégies dépendent des ouvertures et fermetures de barres.

      Pour activer la minuterie, allez dans les paramètres du graphique. Le compte à rebours est affiché sur l'échelle verticale sous le prix actuel.


      Compte à rebours qui affiche le temps restant jusqu'à la fermeture de la barre actuelle



    3. Amélioration du mode réticule – il peut désormais être utilisé comme une règle. Activez le réticule et placez-le au point de départ souhaité. Touchez ensuite le point d'arrivée pour mesurer la distance. L'infobulle affiche la différence de prix, le pourcentage et le nombre de barres.


      Mode réticule amélioré – il peut maintenant être utilisé comme règle



    4. Ajout de l'affichage des tickets des positions dans l'historique des transactions.


      Ajout de l'affichage des tickets de positions dans l'historique des transactions



    5. Indication améliorée du délai des cotations s’il est utilisé pour un instrument de trading. Ces informations sont désormais affichées sur le graphique, et l'icône de la section Market Watch est mise en évidence.



      Amélioration de l'affichage des délais des cotations



    6. Ajout d'un support pour les nouveaux fournisseurs dans le système de paiement intégré.
    7. Ajout d'un champ pour la saisie de la date de naissance lors de l'ouverture d'un compte de démonstration.
    8. Amélioration des chats : Correction des problèmes d'affichage des avatars, ajout d'une visionneuse de documents, prise en charge des images *.webp et amélioration de la fonctionnalité de recherche.

    Téléchargez la dernière version de l'application et améliorez votre expérience de trading :

    MetaTrader 5 sur l'App Store
    13 décembre 2024
    MetaTrader 5 Build 4755 : Améliorations générales
    Cette mise à jour corrige une erreur dans le calcul des swaps triples dans le testeur de stratégie, qui se produisait dans certaines combinaisons de conditions de test. Un certain nombre d'améliorations et de corrections mineures ont également été mises en œuvre pour améliorer encore la stabilité de la plateforme.
    6 décembre 2024
    MetaTrader 5 Build 4730 : Prise en charge étendue d'OpenBLAS et optimisation générale des performances

    Terminal

    1. Terminal : Modification des calculs pour les valeurs d’une position, d'un ordre et d’une transaction. Les valeurs sont désormais affichées dans la devise de dépôt du compte plutôt que dans la devise de base du symbole de trading :

      La valeur des positions, des ordres et des transactions est maintenant affichée dans la devise de dépôt du compte.

    2. Terminal : Ajout d'un champ pour la saisie de la date de naissance lors de l'ouverture d'un compte de démonstration.

      Ajout d'un champ pour la saisie de la date de naissance lors de l'ouverture de comptes de démonstration


    3. Terminal : Correction de l'échelle des indicateurs affichés dans la sous-fenêtre du graphique. Pour certains oscillateurs, les valeurs minimales et maximales de l'échelle pouvaient auparavant être sélectionnées de manière incorrecte.
    4. Terminal : Optimisation et accélération de la décompression des données des ticks de l'historique des prix, ce qui augmentera la vitesse de chargement des graphiques.
    5. Terminal : Correction de l'édition de la couleur du texte dans la fenêtre de composition d’un email interne.
    6. Terminal : Mise à jour des traductions de l'interface utilisateur.

    MQL5

    1. Ajout de nouvelles méthodes OpenBLAS :

      • EigenSolver2 – calcule les valeurs propres et les vecteurs propres généralisés pour une paire de matrices carrées ordinaires (fonction lapack GGEV).
      • EigenSolverX – calcule les valeurs propres et les vecteurs propres d'une matrice carrée régulière en mode expert, c'est-à-dire avec la possibilité d'influencer l'algorithme de calcul et d'obtenir les données de calcul correspondantes (fonction lapack GEEVX).
      • EigenSolver2X - calcule les valeurs propres et les vecteurs propres pour une paire de matrices carrées régulières en mode expert, c'est-à-dire avec la possibilité d'influencer l'algorithme de calcul et d'obtenir les données de calcul correspondantes (fonction lapack GGEVX).
      • EigenSolverShur – calcule les valeurs propres, la matrice triangulaire supérieure sous forme de Schur et la matrice des vecteurs de Schur (fonction lapack GEES).
      • EigenSolver2Shur – calcule les valeurs propres, les vecteurs propres généralisés, les formes de Schur généralisées et les vecteurs de Schur gauche et droit pour une paire de matrices carrées régulières (fonction lapack GGES).
      • EigenSolver2Blocked – calcule les valeurs propres et les vecteurs propres généralisés pour une paire de matrices carrées régulières à l'aide d'un algorithme par blocs (fonction lapack GGEV3).
      • EigenSolver2ShurBlocked – pour une paire de matrices carrées régulières, calcule les valeurs propres, les vecteurs propres généralisés, les formes de Schur généralisées et les vecteurs de Schur gauche et droit à l'aide d'un algorithme par blocs (fonction lapack GGES3).
      • EigenSymmetricRobust – calcule les valeurs propres et les vecteurs propres d'une matrice symétrique ou hermitienne (conjugué complexe) en utilisant l'algorithme MRRR (Multiple Relatively Robust Representations, MRRR) (fonctions lapack SYEVR, HEEVR).
      • EigenSymmetricBisect – calcule les valeurs propres et les vecteurs propres d'une matrice symétrique ou hermitienne (conjuguée complexe) en utilisant l'algorithme de bi-section (fonctions lapack SYEVX, HEEVX).

    2. Ajout de nouvelles méthodes pour les matrices complexes :

      • TransposeConjugate – crée une matrice transposée conjuguée.
        matrix<complex<T>> matrix<complex<T>>::TransposeConjugate(void) const;
        La méthode renvoie une nouvelle matrice conjuguée-transposée dans laquelle les éléments de la matrice originale sont transposés et convertis en leurs conjugués complexes.

        En cas d'erreur, une matrice vide est renvoyée. Utilisez la fonction GetLastError pour obtenir le code d'erreur.

      • CompareEqual – comparaison absolue de deux matrices.
        int matrix<T>::CompareEqual(const matrix<T>& mat) const
        Les valeurs de retour sont les suivantes :

        • -1 – si l'élément de la matrice A est inférieur à l'élément correspondant de la matrice B.
        • 0 – si tous les éléments des matrices A et B sont identiques.
        • 1 – si l'élément de la matrice A est supérieur à l'élément correspondant de la matrice B.

        La méthode peut également renvoyer des erreurs si les données d'entrée ne sont pas valides. Pour obtenir le code d'erreur, utilisez la fonction GetLastError.

    3. Ajout de la prise en charge de Python jusqu'à la version 3.13 pour le package d'intégration correspondant. Pour mettre à jour le package, exécutez la commande suivante :

      pip install --upgrade MetaTrader5

    4. Correction de l'omission du premier événement de l’évènement Timer. Une erreur s'est produite si une minuterie a été démarrée dans le gestionnaire OnTimer.

    MetaEditor

    • Correction du calcul des valeurs des variables d'entrée en mode debug. Dans certains cas, le message "identifiant inconnu" s'affichait à la place de la valeur.

    Testeur

    • Correction de la recherche des taux de change requis pour la conversion des devises lors des tests d'applications utilisant des instruments de change.

    Terminal Web

    1. Ajout de la prise en charge du type d'exécution Request pour les ordres à gros volume.
    2. Ajout de la prise en charge d'une description étendue de la raison des demandes rejetées par un courtier.
    3. Formulaire d'ouverture de compte fixe. Les informations sont maintenant demandées en fonction des paramètres du courtier.
    4. Correction de la détection du pays lors de l'enregistrement des comptes de démonstration.
    5. Correction de l'alignement dans la boîte de dialogue affichant l'avertissement relatif au trading en-un-clic.