MetaTrader 5 build 4230 : Plus d'applications intégrées et un support ONNX étendu

Les préparatifs sont en cours pour le lancement des abonnements aux données de marché du Nasdaq. À partir de la plateforme, les traders pourront accéder à des cotations en temps réel et à des historiques de prix détaillés pour des centaines d'instruments financiers de l'une des plus grandes bourses

7 mars 2024

Terminal

  1. Ajout de 28 nouveaux Expert Advisors et de 12 nouveaux indicateurs à la plateforme standard. Les applications sont disponibles dans les sections 'Expert Advisors\Free Robots' et 'Indicators\Free Indicators' du Navigateur. Chaque programme est disponible sous forme de code source avec des commentaires détaillés pour vous aider à apprendre le langage MQL5.

    Les robots mettent en œuvre des stratégies de trading basées sur des indicateurs techniques et des motifs de chandeliers, tels que « 3 Corbeaux noirs - 3 Soldats blancs », « Engulfing haussier - Engulfing baissier», « Harami haussier - Harami baissier » et autres. Les nouveaux indicateurs sont des implémentations des canaux populaires classiques : Camarilla, DeMark, Donchian, Fibonacci et Keltner, entre autres.



  2. Les préparatifs sont en cours pour le lancement des abonnements aux données de marché du Nasdaq. À partir de la plateforme, les traders pourront accéder à des cotations en temps réel et à des historiques de prix détaillés pour des centaines d'instruments financiers de l'une des plus grandes bourses. Les abonnements seront disponibles pour tout utilisateur disposant d'un compte de démo sur le serveur MetaQuotes-Demo et d'un compte MQL5.community.



    Pour commencer, il vous suffit d'acheter un abonnement et d'ajouter les symboles que vous voulez au Market Watch. Vous pouvez utiliser ces symboles comme des instruments normaux : ouvrez des graphiques, analysez-les à l'aide d'objets et d'indicateurs et exécutez des Expert Advisors dans le testeur de stratégie. L'accès à toutes les informations est mis en œuvre comme pour les instruments financiers ordinaires avec lesquels vous travaillez avec un courtier.

  3. Amélioration de la section relative à la marge dans la spécification de l'instrument. La section présente désormais les taux de marge et les valeurs calculées pour chaque instrument.



    Correction d'erreurs dans l'affichage des marges pour certains types de symboles.

  4. Ajout d'un lien vers le canal Telegram de MQL5 dans le menu Aide. Des contenus intéressants pour les développeurs sont régulièrement partagés sur la chaîne, notamment des revues de nouveaux articles de programmation et des robots et indicateurs gratuits issus de la Base de Code. Abonnez-vous à la chaîne pour rester informé et ne pas manquer d'informations importantes.



  5. Prise en charge du paramètre ShutdownTerminal dans la section [StartUp] des fichiers de configuration personnalisés. Ce paramètre permet de lancer la plateforme pour exécuter des tâches ponctuelles à l'aide de scripts. Vous avez par exemple un script qui prend une capture d'écran du graphique. Vous pouvez créer un fichier de configuration qui lance ce script en même temps que la plateforme. Si vous ajoutez la valeur "Yes" à ShutdownTerminal dans ce fichier, la plateforme s'arrêtera automatiquement dès que le script sera terminé.
  6. Protection renforcée des protocoles réseau et des produits du Market.
  7. Désactivation de la prise en charge du service Signals pour les comptes de démonstration. Pour accéder à des statistiques améliorées sur vos comptes de formation, utilisez le nouveau rapport de trading. Il présente de nombreuses mesures caractérisant la rentabilité et les risques de votre stratégie, notamment des graphiques de croissance, d'équilibre et de capitaux propres, des diagrammes de répartition des transactions par direction et par instrument, et bien plus encore.
  8. Correction de l'affichage des liens vers les contrats de courtage dans le menu d'Aide.
  9. Amélioration de la sélection du meilleur serveur lors de la location d’un VPS.
  10. Correction de l'actualisation de la page des abonnements lors du passage d'une section à l'autre dans le Navigateur.
  11. Correction de la mise à jour de la liste des accords lors de l'ouverture d'un compte préliminaire.
  12. Mise à jour des traductions de l'interface utilisateur.

MQL5

  1. Ajout de la propriété MQL_STARTED_FROM_CONFIG dans l'énumération ENUM_MQL_INFO_INTEGER. Renvoie un résultat positif si le script/Expert Advisor a été lancé à partir de la section StartUp du fichier de configuration. Cela signifie que le script/Expert Advisor a été spécifié dans le fichier de configuration avec lequel le terminal a été lancé.
  2. Nous continuons à développer le support pour les modèles ONNX.

    Les tâches d'apprentissage automatique ne nécessitent pas toujours une plus grande précision de calcul. Pour accélérer les calculs, certains modèles utilisent des types de données de moindre précision tels que Float16 et même Float8. Pour permettre aux utilisateurs de saisir les bonnes données dans les modèles, les fonctions suivantes ont été ajoutées à MQL5 :
    bool ArrayToFP16(ushort & dst_array[], const float & src_array[], ENUM_FLOAT16_FORMAT fmt);
    bool ArrayToFP16(ushort & dst_array[], const double & src_array[], ENUM_FLOAT16_FORMAT fmt);
    bool ArrayToFP8(uchar & dst_array[], const float & src_array[], ENUM_FLOAT8_FORMAT fmt);
    bool ArrayToFP8(uchar & dst_array[], const double & src_array[], ENUM_FLOAT8_FORMAT fmt);
    
    bool ArrayFromFP16(float & dst_array[], const ushort & src_array[] ,ENUM_FLOAT16_FORMAT fmt) ;
    bool ArrayFromFP16(double & dst_array[],const ushort & src_array[],ENUM_FLOAT16_FORMAT fmt) ;
    bool ArrayFromFP8(float & dst_array[],const uchar & src_array[],ENUM_FLOAT8_FORMAT fmt) ;
    bool ArrayFromFP8(double & dst_array[], const uchar & src_array[], ENUM_FLOAT8_FORMAT fmt);
    Étant donné que les formats de nombres réels pour 16 et 8 bits peuvent être différents, le paramètre "fmt" des fonctions de conversion doit indiquer quel format de nombres doit être traité. Pour les versions 16 bits, la nouvelle énumération NUM_FLOAT16_FORMAT est utilisée, avec les valeurs suivantes :


    Pour les versions 8 bits, la nouvelle énumération ENUM_FLOAT8_FORMAT est utilisée, avec les valeurs suivantes :

    • FLOAT_FP8_E4M3FN : Nombre à virgule flottante de 8 bits, 4 bits pour l'exposant et 3 bits pour la mantisse. Généralement utilisés comme coefficients.
    • FLOAT_FP8_E4M3FNUZ : Nombre à virgule flottante de 8 bits, 4 bits pour l'exposant et 3 bits pour la mantisse. Prend en charge NaN, ne prend pas en charge le zéro négatif et Inf. Généralement utilisés comme coefficients.
    • FLOAT_FP8_E5M2FN : Nombre à virgule flottante de 8 bits, 5 bits pour l'exposant et 2 bits pour la mantisse. Prend en charge NaN et Inf. Généralement utilisé pour les dégradés (gradients).
    • FLOAT_FP8_E5M2FNUZ : Nombre à virgule flottante de 8 bits, 5 bits pour l'exposant et 2 bits pour la mantisse. Prend en charge NaN, ne prend pas en charge le zéro négatif et Inf. Également utilisé pour les dégradés (gradients).

  3. Ajout de nouvelles méthodes matricielles et vectorielles utilisées dans l'apprentissage automatique :

    • PrecisionRecall calcule les valeurs pour construire une courbe de rappel de précision. Comme pour ClassificationScore, cette méthode est appliquée à un vecteur de valeurs réelles.
    • ReceiverOperatingCharacteristic calcule les valeurs pour construire la courbe ROC (Receiver Operating Characteristic). Comme pour ClassificationScore, cette méthode est appliquée à un vecteur de valeurs réelles.

  4. Mise à jour du Runtime ONNX vers la version 1.17. Pour plus de détails sur la version, veuillez consulter GitHub.
  5. Mise à jour du package d'intégration Python vers la version 5.0.4200, ajout de la prise en charge de Python 3.12. Mettez à jour votre package en utilisant la commande "pip install --upgrade MetaTrader5" pour télécharger les derniers changements.
  6. Correction du fonctionnement de la fonction OrderCalcMargin dans certains cas.
  7. Ajout de la propriété DEAL_REASON_CORPORATE_ACTION dans l'énumération ENUM_DEAL_REASON. Il s'agit d'une opération réalisée à la suite d'une action de l'entreprise : fusion ou changement de nom d'un titre, transfert d'un client vers un autre compte, etc.
  8. Ajout de la prise en charge de la comparaison de vecteurs et de matrices complexes pour la méthode Compare. La comparaison consiste à estimer la distance entre des nombres complexes. La distance est calculée comme sqrt(pow(r1-r2, 2) + pow(i1-i2, 2) et est un nombre réel qui peut déjà être comparé à epsilon.
  9. Correction de la conversion des variables de type couleur en texte au format RVB.
  10. Correction du retour du résultat de l'obtention des vecteurs propres dans la méthode Eig dans le cas d'une valeur propre complexe. Ajout d'une surcharge de méthode pour l'évaluation complexe.

MetaEditor

  1. Ajout d'un lien vers le livre récemment publié "Programmation MQL5 pour les Traders" dans le menu Aide\MQL5.community. Le livre a également été ajouté au système de recherche, ce qui vous permet de trouver les informations nécessaires directement à partir de MetaEditor :




  2. Amélioration de la recherche intégrée :

    • La section des résultats de la recherche dans la fenêtre de la Boîte à Outils a été divisée en 2 onglets : "Recherche" pour les résultats de recherche en ligne (documentation, articles, livres, etc.) et "Recherche dans les fichiers" pour les résultats locaux.
    • Un champ de recherche spécifique a été ajouté à la section des résultats. Vous pouvez l'utiliser à la place de la barre de recherche dans la barre d'outils principale de MetaEditor.

  3. Prise en charge des modes AVX, AVX2 et AVX512 lors de la compilation des commandes à partir de la ligne de commande. Pour compiler, ajoutez l'une des clés suivantes dans votre commande : /avx, /avx2 ou /avx512.
  4. Le moteur SQLite pour les opérations avec les base de données a été mis à jour à la version 3.45.
  5. Désactivation de la prise en charge d'Internet Explorer. Désormais, seul Microsoft Edge WebView2 est utilisé pour afficher les pages HTML. Par rapport à l'ancien MSHTML, le nouveau composant élargit considérablement les possibilités d'affichage du contenu en donnant accès aux technologies les plus récentes. L'utilisation de WebView2 améliore l'apparence de certaines sections de MetaEditor, augmente les performances et crée une interface plus réactive.
  6. Correction du blocage qui se produisait dans de rares cas lors de l'autocomplétion de fonctions.
  7. Correction du blocage qui se produisait dans de rares cas lors de l'autocomplétion de fonctions.

Testeur

  1. Correction des calculs de triple swaps si le jour de début du test tombe sur le jour du triple swap.

Correction des erreurs rapportées dans les journaux de crash.

Terminal Web MetaTrader 5

Amélioration de l'affichage des exigences de marge dans les spécifications des contrats. En plus des ratios et des paramètres initiaux pour les calculs, les spécifications affichent désormais les valeurs finales de la marge. Si le montant de la marge dépend du volume de la position, les niveaux correspondants seront affichés dans la boîte de dialogue.



La marge est calculée sur la base du prix de l'instrument au moment de l'ouverture de la fenêtre de spécification et n'est pas mise à jour en temps réel. Les valeurs doivent donc être considérées comme indicatives. Pour recalculer les valeurs sur la base des prix actuels, ré-ouvrez la spécification de l'instrument.