Comment démarrer avec Metatrader 5 - page 115

 

C'est l'un des principaux changements -

------------

MetaTrader 5 Build 1700 : Instruments synthétiques, projets partagés et MQL5 Cloud Protector

MQL5 : Un nouveau service en ligne MQL5 Cloud Protector a été ajouté pour fournir une protection supplémentaire aux programmes MQL5. La protection est similaire à l'option utilisée dans le plus grand magasin d'applications de tradingMetaTrader Market, où les fichiers de produits EX5 soumis par les vendeurs sont en plus compilés en code natif.

Désormais, ce type de protection est disponible pour tous les utilisateurs de la plateforme. Pour protéger vos fichiers, exécutez la commande suivante dans MetaEditor : Outils-MQL5 Cloud Protector. La seule différence du MQL5 Cloud Protector par rapport au mécanisme utilisé sur le marché, est que le fichier n'est pas lié à l'ordinateur de l'utilisateur. Les fichiers protégés par MQL5 Cloud Protector peuvent être exécutés sur n'importe quel ordinateur, tout comme les fichiers EX5 courants.

MQL5 Cloud Protector est un service sécurisé. La protection supplémentaire est uniquement appliquée à un fichier compilé. Le code source n'est pas transmis au service. À la première étape, un programme est compilé en un fichier EX5 sur l'ordinateur de l'utilisateur ; ensuite, le fichier compilé est envoyé par un canal crypté au service, où il est protégé et renvoyé à l'utilisateur.

MQL5 Cloud Protector est un service sécurisé. La protection supplémentaire est uniquement appliquée à un fichier compilé. Le code source n'est pas transmis au service. À la première étape, un programme est compilé en un fichier EX5 sur l'ordinateur de l'utilisateur ; ensuite, le fichier compilé est envoyé par un canal crypté au service, où il est protégé et renvoyé à l'utilisateur.




 

Forum sur le trading, les systèmes de trading automatisés et le test des stratégies de trading.

La mise à jour Windows 10 d'avril 2018 rend invalides les mots de passe MetaTrader enregistrés

MetaQuotes Software Corp., 2018.05.04 09:35

La mise à jour Windows 10 April 2018 rendra invalides les mots de passe MetaTrader enregistrés.

Le 30 avril, Microsoft a officiellement publié une mise à jour majeure de son système d'exploitation Windows 10 April 2018 Update. Cette mise à jour affecte les configurations et les clés de chiffrement de manière similaire à l'installation d'un nouveau système d'exploitation Windows.

Afin de protéger les informations des traders, la plateforme MetaTrader lie toutes les données au système d'exploitation et au matériel de l'ordinateur, sur lequel elle est installée. Cette méthode de protection garantit que, même si les fichiers de la plateforme sont volés, les pirates ne pourront pas se connecter aux comptes des traders ou utiliser les produits achetés sur le marché.

Malheureusement, après l'installation de Windows 10 April 2018 Update, tous les mots de passe des comptes de trading stockés sur votre ordinateur deviendront invalides. Nous vous recommandons vivement de vous préparer à la nouvelle version de Windows et de sauvegarder vos mots de passe dans un endroit sûr, afin de pouvoir vous connecter à vos comptes après la mise à jour.

En raison du changement des clés de cryptage, les applications achetées sur le marché perdront une activation, car tous les produits sont liés au système d'exploitation. Nous avons fourni une activation supplémentaire pour tous les produits achetés sur le Marché, quel que soit le système d'exploitation, tout comme nous avons fourni des activations après la précédente version de Windows 10 Fall Creators Update. Ainsi, les utilisateurs de MetaTrader Market ne perdront pas les activations de produits après l'installation de Windows 10 April 2018 Update.

Les activations des produits de démonstration seront également perdues, vous devrez donc télécharger à nouveau ces applications à partir du Market.


 

Comme de nombreuses personnes demandent "Comment ouvrir un compte avec MT5" et "Comment ajouter un courtier à MT5", je souhaite rappeler les liens suivants :

-----------------

Aide MetaTrader 5-Ouvrir un compte

Aide MetaTrader5 Android OS-Ouvrir un compte de démonstration

Aide MetaTrader5 iPhone/iPad-Connexion à un compte et ouverture d'un compte de démonstration

-----------------

Méthode simplifiée pour demander un compte réel dans MetaTrader 5 Android

-----------------

Trouver un serveur par le nom du courtier

Une autre nouvelle fonctionnalité pratique de MetaTrader 5 est l'ajout des serveurs des courtiers par leur nom. Avec la version précédente, vous deviez contacter votre courtier pour connaître l'adresse IP du serveur de négociation ou télécharger un terminal client spécial. Désormais, il vous suffit de saisir le nom du courtier. Le système trouve automatiquement le serveur portant le nom spécifié et l'ajoute à la liste.

Forum sur le trading, les systèmes de trading automatisés et le test des stratégies de trading.

Comment le solde de MQL5.com interagit-il avec le solde du courtier ?

Eleni Anna Branou, 2017.02.25 23:03

Votre solde MQL5.com sert uniquement à acheter des services sur le site MQL5.com, tels que : produits de marché, abonnements aux signaux, hébergement VPS, etc.

Il n'a rien à voir avec le solde du compte de votre courtier, qui est l'argent avec lequel vous tradez.

Open an Account - Getting Started - MetaTrader 5
Open an Account - Getting Started - MetaTrader 5
  • www.metatrader5.com
Two types of accounts are available in the trading platform: demonstration (demo) and real. Demo accounts provide the opportunity to work in a training mode without real money, allowing to test a trading strategy. They feature all the same functionality as the live ones. The difference is that demo accounts can be opened without any investment...
 

MetaQuotes officiel - Plateformes MetaTrader 4/5


MetaQuotes Official - MetaTrader 4/5 Platforms - YouTube
MetaQuotes Official - MetaTrader 4/5 Platforms - YouTube
  • www.youtube.com
All secrets, life hacks and features of the MetaTrader platforms from the developer company - MetaQuotes Software. You will find out everything about desktop...
 

Un nouvel article a été publié -

----------------

Synchronisation de plusieurs graphiques de même symbole sur différentes échelles de temps


Depuis Elder jusqu'à aujourd'hui, les traders prennent des décisions de trading en analysant des graphiques à différentes échelles temporelles. Je pense que beaucoup d'entre vous sont familiers avec la situation où les objets qui affichent les tendances globales sont appliqués à des graphiques de plus grande échelle temporelle. Ensuite, le comportement d'un prix est analysé à proximité d'objets situés à des échelles de temps inférieures. Au cours d'une telle analyse, les objets précédemment créés peuvent être modifiés. Les outils MetaTrader 5 existants permettent d'effectuer ce travail sur un seul graphique en changeant d'horizon temporel tout en préservant les objets appliqués. Mais que faire si vous devez suivre un prix sur plusieurs graphiques simultanément ?

Vous pouvez utiliser des modèles pour cela. Cependant, la modification d'un seul objet nécessite de réenregistrer le modèle et de le réappliquer à tous les graphiques. Dans cet article, je vous propose d'automatiser ce processus et d'attribuer la fonction de synchronisation des graphiques à un indicateur.

 

Forum sur le trading, les systèmes de trading automatisés et le test des stratégies de trading

Nouvelle plateforme MetaTrader 5 beta build 1845 : Fonctions MQL5 pour les opérations avec les barres et améliorations de Strategy Tester

MetaQuotes Software Corp., 2018.06.08 19:02

Nouvelle plateforme MetaTrader 5 beta build 1845 : Fonctions MQL5 pour les opérations avec les barres et améliorations de Strategy Tester

La nouvelle version bêta de la plateforme MetaTrader 5 mise à jour sera publiée le 8 juin 2018. Nous mettrons à jour notre serveur public MetaQuotes-Demo situé à access.metatrader5.com:443. Nous invitons tous les traders à participer aux tests afin d'évaluer les fonctionnalités mises à jour de la plateforme et d'aider les développeurs à corriger les erreurs.

Pour mettre à jour la plateforme MetaTrader 5 jusqu'à la version 1845, connectez-vous au serveur access.metatrader5.com:443.

La version finale de la nouvelle plateforme MetaTrader 5 sera publiée après le test bêta public.

Cette mise à jour de la plateforme est uniquement disponible pour les terminaux fonctionnant sous Windows 7 et les systèmes d'exploitation ultérieurs. Les versions antérieures de Windows ne sont pas prises en charge.
Il contient les changements suivants :
  1. Terminal : Le dialogue d'ouverture de compte a été complètement redessiné. Maintenant, vous pouvez sélectionner un courtier dans la liste et ensuite choisir le type de compte désiré. Cette mise à jour a rendu la liste des courtiers plus compacte, puisqu'elle n'affiche maintenant que les noms des sociétés au lieu de montrer tous les serveurs disponibles.

    Pour rendre la recherche encore plus pratique, les logos des sociétés sont également affichés dans la liste. Si le courtier souhaité ne figure pas dans la liste, tapez le nom de la société ou l'adresse du serveur dans le champ de recherche et cliquez sur "Trouver votre courtier".



    Des descriptions des types de comptes ont été ajoutées à la boîte de dialogue pour aider les débutants à choisir le bon compte. En outre, pour s'aligner sur la politique générale de protection des données (GDRP), la boîte de dialogue mise à jour peut contenir des liens vers les accords et les politiques de protection des données des courtiers :



    Les possibilités d'ouverture de comptes réels ont été considérablement élargies. La fonctionnalité de téléchargement de documents d'identité et de confirmation d'adresse, qui était auparavant présentée dans les terminaux mobiles, est désormais disponible dans la version de bureau. Désormais, les courtiers réglementés par la directive MiFID peuvent demander toutes les données d'identification du client requises, y compris des informations sur l'emploi, les revenus, l'expérience de négociation, etc. Cette nouvelle fonctionnalité aidera les traders à ouvrir des comptes réels plus rapidement et plus facilement, sans procédures bureaucratiques inutiles.




  2. MQL5 : La vitesse des applications MQL5 a augmenté grâce à l'optimisation supplémentaire du code source lors de la compilation. Recompilez vos programmes dans la nouvelle version de MetaEditor pour les rendre plus rapides.
    Malheureusement, les nouveaux programmes ne seront pas compatibles avec les versions précédentes du terminal en raison de cette optimisation supplémentaire. Les programmes compilés dans la version 1845 et plus de MetaEditor ne peuvent pas être lancés dans les versions de terminal inférieures à 1845. Les programmes compilés dans les versions antérieures de MetaEditor peuvent fonctionner sur les nouveaux terminaux.

  3. MQL5 : Nouvelles fonctions : iTime, iOpen, iHigh, iLow, iClose, iVolume, iBars, iBarShift, iLowest, iHighest, iRealVolume, iTickVolume, iSpread. Ces fonctions sont similaires à celles utilisées dans MQL4. Ces fonctions aident les utilisateurs à transférer plus facilement le code des applications de trading vers la plateforme de cinquième génération.

    Auparavant, la plupart des tâches effectuées par ces fonctions pouvaient être implémentées en utilisant les fonctions Copy*. Cependant, les utilisateurs devaient implémenter leurs propres fonctions afin de trouver les valeurs High/Low sur le graphique et de rechercher les barres en fonction de leur temps. Maintenant, ces tâches peuvent être facilement exécutées en utilisant les fonctions iHighest, iLowest et iBarShift.

    iTime
    Renvoie l'heure d'ouverture de la barre (indiquée par le paramètre 'shift') sur le graphique correspondant.
    datetime  iTime(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              shift            // Shift
       );

    iOpen
    Renvoie le prix d'ouverture de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    double  iOpen(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              shift            // Shift
       );

    iHigh
    Renvoie le prix haut de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    double  iHigh(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              shift            // Shift
       );

    iLow
    Renvoie le prix bas de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    double  iLow(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              shift            // Shift
       );

    iClose
    Renvoie le prix de clôture de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    double  iClose(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              shift            // Shift
       );

    iVolume
    Renvoie le volume en tick de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    long  iVolume(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              shift            // Shift
       );

    iBars
    Renvoie le nombre de barres d'un symbole et d'une période correspondants, disponibles dans l'historique.
    int  iBars(
       string           symbol,          // Symbol
       int              timeframe        // Period
       );

    iBarShift
    Recherche de barre par temps. La fonction renvoie l'indice de la barre correspondant à l'heure spécifiée.
    int  iBarShift(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       datetime         time,            // Time
       bool             exact=false      // Mode
       );

    iLowest
    Renvoie l'indice de la plus petite valeur trouvée sur le graphique correspondant (décalage par rapport à la barre courante).
    int  iLowest(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              type,            // Timeseries identifier
       int              count,           // Number of elements
       int              start            // Index
      );

    iHighest
    Renvoie l'indice de la plus grande valeur trouvée sur le graphique correspondant (décalage par rapport à la barre actuelle).
    int  iHighest(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              type,            // Timeseries identifier
       int              count,           // Number of elements
       int              start            // Index
      );

    iRealVolume
    Renvoie le volume réel de la barre (indiquée par le paramètre 'shift') sur le graphique correspondant.
    long  iRealVolume(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              shift            // Shift
       );

    iTickVolume
    Renvoie le volume en tick de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    long  iTickVolume(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              shift            // Shift
       );

    iSpread
    Renvoie la valeur de l'écart de la barre (indiquée par le paramètre 'shift') sur le graphique correspondant.
    long  iSpread(
       string           symbol,          // Symbol
       int              timeframe,       // Period
       int              shift            // Shift
       );

  4. Terminal : Désormais, le volume actuel des ordres en attente est affiché sur le graphique, au lieu du volume initialement demandé.



  5. Terminal : Le terminal mis à jour offre un rendu optimisé et plus rapide de la fonction de profondeur de marché en mode étendu avec l'affichage des écarts activé.
  6. Terminal : Le traitement des résultats d'exécution des demandes de transaction a été optimisé. Cette optimisation conduit à un traitement beaucoup plus rapide dans certains cas.
  7. Terminal : Correction d'une erreur dans l'opération Trailing Stop, qui pouvait occasionnellement entraîner l'envoi de plusieurs demandes de modification de Stop Loss pour la même position.
  8. Terminal : Correction de la définition du volume minimum et maximum, ainsi que de l'étape de volume dans les paramètres de symboles personnalisés.
  9. Terminal : Correction d'une erreur, à cause de laquelle l'option "Fix Scale" pouvait être ignorée, lors de l'application d'un modèle à un graphique de symbole.
  10. Terminal : Correction d'une accumulation occasionnelle incorrecte de l'historique des ticks.
  11. MQL5 : La nouvelle fonction TesterHideIndicators a été ajoutée. La fonction définit le mode d'affichage/masquage des indicateurs utilisés dans les Expert Advisors. La fonction est destinée à gérer la visibilité des indicateurs utilisés uniquement pendant les tests. Mettez true si vous avez besoin de cacher les indicateurs créés. Sinon, utilisez false.
    void  TesterHideIndicators(
       bool      hide     // Flag
       );
  12. MQL5 : Ajout de la génération de l'événement CHARTEVENT_CLICK lors d'un clic sur les niveaux de transaction sur le graphique.
  13. MQL5 : Correction et optimisation du fonctionnement des fonctions CopyTicks.
  14. MQL5 : Correction de la valeur retournée par la fonction SymbolInfoDouble pour la propriété SYMBOL_PROP_LIQUIDITY_RATE.
  15. MQL5 : Correction de la copie des tableaux de chaînes de caractères avec un chevauchement de mémoire.
  16. MQL5 : Correction de l'allocation d'un tableau de chaînes de caractères dans le tableau FileReadArray.
  17. MQL5 : Correction d'erreurs dans la bibliothèque standard de MQL5.
  18. Tester : Le système pour travailler avec le cache d'optimisation a été mis à jour. Le cache stocke des données sur les passes d'optimisation calculées précédemment. Le testeur de stratégie stocke les données pour permettre la reprise de l'optimisation après une pause et pour éviter le recalcul des passes de test déjà calculées.

    Modifications du format de stockage du cache d'optimisation
    Dans les versions précédentes, le cache d'optimisation était stocké sous la forme d'un fichier XML. Tous les passages d'optimisation d'Expert Advisor avec les paramètres de test spécifiés étaient ajoutés à ce fichier. Par conséquent, le même fichier stockait les résultats de l'optimisation avec différents paramètres d'entrée.
    Désormais, le cache d'optimisation est stocké dans des fichiers binaires distincts pour chaque ensemble de paramètres optimisés. Les opérations de Strategy Tester impliquant le cache d'optimisation sont devenues nettement plus rapides grâce au nouveau format et à la taille réduite du fichier. L'accélération peut être particulièrement perceptible lorsque vous reprenez une passe d'optimisation en pause.

    Affichage des résultats des optimisations précédentes
    Désormais, les résultats des optimisations antérieures peuvent être visualisés directement dans le Strategy Tester. Il n'est donc pas nécessaire d'analyser d'énormes fichiers XML à l'aide d'un logiciel tiers. Ouvrez l'onglet "Résultats d'optimisation", sélectionnez un conseiller expert et un fichier avec le cache d'optimisation :



    La liste contient tous les fichiers de cache d'optimisation existant sur le disque pour le conseiller expert sélectionné. La date d'optimisation, les paramètres de test (symbole, période, intervalle) et les paramètres d'entrée sont affichés pour chaque fichier. Vous pouvez également filtrer les résultats d'optimisation par le serveur de négociation sur lequel les résultats ont été obtenus.

    Recalcul du critère d'optimisation à la volée
    Un critère d'optimisation est un certain paramètre variable, dont la valeur détermine la qualité d'un ensemble testé d'entrées. Plus la valeur du critère d'optimisation est élevée, plus le résultat du test avec l'ensemble de paramètres donné est considéré comme bon.

    Auparavant, seul un critère sélectionné avant le début de l'optimisation était calculé pendant l'optimisation. Désormais, vous pouvez modifier le critère d'optimisation à la volée lors de l'affichage des résultats, et le testeur de stratégie recalculera automatiquement toutes les valeurs.



    Utilisation manuelle du cache d'optimisation
    Dans les versions précédentes, le cache d'optimisation était stocké sous forme de fichier XML, qui pouvait être ouvert et analysé à l'aide d'un logiciel tiers. Désormais, il est stocké dans des fichiers binaires fermés. Pour obtenir des données au format XML, exportez-les en utilisant le menu contextuel de l'onglet "Résultats d'optimisation".

  19. Testeur : Ajout de la possibilité de définir manuellement la devise de dépôt et l'effet de levier pour les tests et l'optimisation. Dans les versions précédentes, ces paramètres étaient définis en fonction du compte connecté. Par conséquent, il fallait se connecter à d'autres comptes pour pouvoir modifier ces paramètres.

    Veuillez noter que les taux croisés pour convertir le profit et la marge dans la devise de dépôt spécifiée doivent être disponibles sur le compte, afin d'assurer un test correct.



  20. Testeur : Suppression de l'interdiction d'utiliser OpenCL dans les agents de test. Auparavant, les périphériques OpenCL n'étaient autorisés que lors des tests sur les agents locaux. Désormais, les agents sont autorisés à utiliser tous les périphériques OpenCL disponibles (tels que le processeur, la carte vidéo) lorsqu'ils travaillent sur le réseau local et sur le MQL5 Cloud Network.
  21. MetaEditor : Travail optimisé et accéléré avec le stockage MQL5.
  22. MetaEditor : Correction de la reprise du processus de débogage après une pause dans le fichier MQH.
  23. MetaEditor : Correction de la mise en évidence du code source dans l'éditeur.
  24. MetaEditor : Correction de la navigation dans les résultats de recherche.
  25. MetaEditor : Correction de la fonction de remplacement de texte en masse. Dans certains cas, seule la première occurrence était remplacée au lieu de toutes.
  26. La documentation a été mise à jour.

La mise à jour est disponible via le système LiveUpdate.


 

Forum sur le trading, les systèmes de trading automatisés et le test de stratégies de trading

Nouvelle plateforme MetaTrader 5 build 1860 : Fonctions MQL5 pour les opérations avec les barres et améliorations de Strategy Tester

MetaQuotes Software Corp., 2018.06.14 16:06

Nouvelle plateforme MetaTrader 5 build 1860 : Fonctions MQL5 pour les opérations avec les barres et améliorations du Strategy Tester.

La mise à jour de la plateforme MetaTrader 5 sera publiée le 15 juin 2018.
Cette mise à jour de la plateforme est uniquement disponible pour les terminaux fonctionnant sous Windows 7 et les systèmes d'exploitation ultérieurs. Les versions antérieures de Windows ne sont pas prises en charge.
La mise à jour comporte les changements suivants :


  1. Terminal : Le dialogue d'ouverture de compte a été complètement redessiné. Maintenant, vous pouvez sélectionner un broker dans la liste et ensuite choisir le type de compte désiré. Cette mise à jour a rendu la liste des courtiers plus compacte, puisqu'elle n'affiche désormais que les noms des sociétés au lieu de montrer tous les serveurs disponibles.

    Les logos des sociétés sont également affichés dans la liste afin de rendre la recherche plus facile et plus efficace. Si le courtier souhaité n'apparaît pas dans la liste, tapez le nom de la société ou l'adresse du serveur dans le champ de recherche et cliquez sur "Trouver votre courtier".




    Des descriptions des types de comptes ont été ajoutées à la boîte de dialogue pour aider les débutants à choisir le bon compte. En outre, pour s'aligner sur le règlement général sur la protection des données (RGPD), la boîte de dialogue mise à jour peut contenir des liens vers les accords et les politiques de protection des données des courtiers :




    Les possibilités d'ouverture de comptes réels ont été considérablement élargies. La fonctionnalité de téléchargement de documents d'identité et de confirmation d'adresse, qui était auparavant présentée dans les terminaux mobiles, est désormais disponible dans la version de bureau. Désormais, les courtiers réglementés par la directive MiFID peuvent demander toutes les données d'identification du client requises, y compris des informations sur l'emploi, les revenus, l'expérience de négociation, etc. Cette nouvelle fonctionnalité aidera les traders à ouvrir des comptes réels plus rapidement et plus facilement, sans procédures bureaucratiques inutiles.




  2. MQL5 : La vitesse des applications MQL5 a augmenté grâce à l'optimisation supplémentaire du code source lors de la compilation. Recompilez vos programmes dans la nouvelle version de MetaEditor pour les rendre plus rapides.
    Malheureusement, les nouveaux programmes ne seront pas compatibles avec les versions précédentes du terminal en raison de cette optimisation supplémentaire. Les programmes compilés dans la version 1860 et plus de MetaEditor ne peuvent pas être lancés dans les versions de terminal inférieures à 1860. Les programmes compilés dans les versions antérieures de MetaEditor peuvent fonctionner sur les nouveaux terminaux.

  3. MQL5 : Nouvelles fonctions : iTime, iOpen, iHigh, iLow, iClose, iVolume, iBars, iBarShift, iLowest, iHighest, iRealVolume, iTickVolume, iSpread. Ces fonctions sont similaires à celles utilisées dans MQL4. Elles permettent un transfert plus facile du code des applications de trading vers la plateforme de cinquième génération.

    Auparavant, la plupart des tâches effectuées par ces fonctions pouvaient être implémentées en utilisant les fonctions Copy*. Cependant, les utilisateurs devaient implémenter leurs propres fonctions afin de trouver les valeurs High/Low sur le graphique et de rechercher les barres en fonction de leur temps. Maintenant, ces tâches peuvent être facilement exécutées en utilisant les fonctions iHighest, iLowest et iBarShift.

    iTime
    Renvoie l'heure d'ouverture de la barre (indiquée par le paramètre 'shift') sur le graphique correspondant.
    datetime  iTime(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              shift            // Shift
       );

    iOpen
    Renvoie le prix d'ouverture de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    double  iOpen(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              shift            // Shift
       );

    iHigh
    Renvoie le prix haut de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    double  iHigh(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              shift            // Shift
       );

    iLow
    Renvoie le prix bas de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    double  iLow(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              shift            // Shift
       );

    iClose
    Renvoie le prix de clôture de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    double  iClose(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              shift            // Shift
       );

    iVolume
    Renvoie le volume en tick de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    long  iVolume(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              shift            // Shift
       );

    iBars
    Renvoie le nombre de barres d'un symbole et d'une période correspondants, disponibles dans l'historique.
    int  iBars(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe        // Period
       );

    iBarShift
    Recherche de barre par temps. La fonction renvoie l'indice de la barre correspondant à l'heure spécifiée.
    int  iBarShift(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       datetime         time,            // Time
       bool             exact=false      // Mode
       );

    iLowest
    Renvoie l'indice de la plus petite valeur trouvée sur le graphique correspondant (décalage par rapport à la barre courante).
    int  iLowest(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              type,            // Timeseries identifier
       int              count,           // Number of elements
       int              start            // Index
      );

    iHighest
    Renvoie l'indice de la plus grande valeur trouvée sur le graphique correspondant (décalage par rapport à la barre actuelle).
    int  iHighest(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              type,            // Timeseries identifier
       int              count,           // Number of elements
       int              start            // Index
      );

    iRealVolume
    Renvoie le volume réel de la barre (indiquée par le paramètre 'shift') sur le graphique correspondant.
    long  iRealVolume(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              shift            // Shift
       );

    iTickVolume
    Renvoie le volume en tick de la barre (indiqué par le paramètre 'shift') sur le graphique correspondant.
    long  iTickVolume(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              shift            // Shift
       );

    iSpread
    Renvoie la valeur de l'écart de la barre (indiquée par le paramètre 'shift') sur le graphique correspondant.
    long  iSpread(
       string           symbol,          // Symbol
       ENUM_TIMEFRAMES  timeframe,       // Period
       int              shift            // Shift
       );

  4. Terminal : L'historique des transactions affiche désormais les valeurs de Stop Loss et Take Profit. Les valeurs de Stop Loss et Take Profit pour les opérations d'entrée et de retournement sont fixées en fonction des Stop Loss et Take Profit des ordres qui ont initié ces opérations. Les valeurs de Stop Loss et Take Profit des positions appropriées au moment de la fermeture de la position sont utilisées pour les opérations de sortie. Ce dernier permet de sauvegarder et d'afficher les informations sur les Stop Loss et Take Profit d'une position au moment de sa fermeture. Ces informations n'étaient pas stockées dans les versions antérieures, car les positions disparaissent après leur fermeture, tandis que l'historique des positions dans le terminal est généré sur la base des transactions.




  5. Terminal : L'historique des positions affiche désormais les valeurs de Stop Loss et Take Profit. Les valeurs de Stop Loss et Take profit des transactions, qui ouvrent et ferment les positions appropriées, sont spécifiées pour ces positions.




  6. Terminal : Désormais, le volume actuel des ordres en attente est affiché sur le graphique, au lieu du volume initialement demandé.




  7. Terminal : Le terminal mis à jour présente un rendu optimisé et plus rapide de la fonction de profondeur de marché en mode étendu avec l'affichage des écarts activé.
  8. Terminal : Le traitement des résultats d'exécution des demandes de transaction a été optimisé. Cette optimisation conduit à un traitement beaucoup plus rapide dans certains cas.
  9. Terminal : Correction d'une erreur dans l'opération Trailing Stop, qui pouvait occasionnellement entraîner l'envoi de plusieurs demandes de modification de Stop Loss pour la même position.
  10. Terminal : Correction de la définition du volume minimum et maximum, ainsi que de l'étape de volume dans les paramètres de symboles personnalisés.
  11. Terminal : Correction d'une erreur, à cause de laquelle l'option "Fix Scale" pouvait être ignorée, lors de l'application d'un modèle à un graphique de symbole.
  12. Terminal : Correction de l'accumulation incorrecte occasionnelle de l'historique des ticks.
  13. MQL5 : La nouvelle fonction TesterHideIndicators a été ajoutée. La fonction définit le mode d'affichage/masquage des indicateurs utilisés dans les Expert Advisors. La fonction est destinée à gérer la visibilité des indicateurs utilisés uniquement pendant les tests. Mettez true si vous avez besoin de cacher les indicateurs créés. Sinon, utilisez false.
    void  TesterHideIndicators(
       bool      hide     // Flag
       );
  14. MQL5 : Ajout de la génération de l'événement CHARTEVENT_CLICK lors d'un clic sur les niveaux de transaction sur le graphique.
  15. MQL5 : Correction et optimisation du fonctionnement des fonctions CopyTicks.
  16. MQL5 : Correction de la valeur retournée par la fonction SymbolInfoDouble pour la propriété SYMBOL_PROP_LIQUIDITY_RATE.
  17. MQL5 : Correction de la copie des tableaux de chaînes de caractères avec un chevauchement de mémoire.
  18. MQL5 : Correction de l'allocation d'un tableau de chaînes de caractères dans le tableau FileReadArray.
  19. MQL5 : Correction d'erreurs dans la bibliothèque standard de MQL5.
  20. Tester : Le système pour travailler avec le cache d'optimisation a été mis à jour. Le cache stocke des données sur les passes d'optimisation calculées précédemment. Le testeur de stratégie stocke les données pour permettre la reprise de l'optimisation après une pause et pour éviter le recalcul des passes de test déjà calculées.

    Modifications du format de stockage du cache d'optimisation
    Dans les versions précédentes, le cache d'optimisation était stocké sous la forme d'un fichier XML. Tous les passages d'optimisation d'Expert Advisor avec les paramètres de test spécifiés étaient ajoutés à ce fichier. Par conséquent, le même fichier stockait les résultats des optimisations avec différents paramètres d'entrée.
    Désormais, le cache d'optimisation est stocké dans des fichiers binaires distincts pour chaque ensemble de paramètres optimisés. Les opérations de Strategy Tester impliquant le cache d'optimisation sont devenues nettement plus rapides grâce au nouveau format et à la taille réduite du fichier. L'accélération peut être particulièrement perceptible lorsque vous reprenez une passe d'optimisation en pause.

    Affichage des résultats des optimisations précédentes
    Désormais, les résultats des optimisations antérieures peuvent être visualisés directement dans le Strategy Tester. Il n'est donc pas nécessaire d'analyser d'énormes fichiers XML à l'aide d'un logiciel tiers. Ouvrez l'onglet "Résultats d'optimisation", sélectionnez un conseiller expert et un fichier avec le cache d'optimisation :



    La liste contient tous les fichiers de cache d'optimisation existant sur le disque pour le conseiller expert sélectionné. La date d'optimisation, les paramètres de test (symbole, période, intervalle) et les paramètres d'entrée sont affichés pour chaque fichier. Vous pouvez également filtrer les résultats d'optimisation par le serveur de négociation sur lequel les résultats ont été obtenus.

    Recalcul du critère d'optimisation à la volée
    Un critère d'optimisation est un certain paramètre variable, dont la valeur détermine la qualité d'un ensemble testé d'entrées. Plus la valeur du critère d'optimisation est élevée, plus le résultat du test avec l'ensemble de paramètres donné est considéré comme bon.

    Auparavant, seul un critère sélectionné avant le début de l'optimisation était calculé pendant l'optimisation. Désormais, vous pouvez modifier le critère d'optimisation à la volée lors de l'affichage des résultats, et le testeur de stratégie recalculera automatiquement toutes les valeurs.




    Utilisation manuelle du cache d'optimisation
    Dans les versions précédentes, le cache d'optimisation était stocké sous forme de fichier XML, qui pouvait être ouvert et analysé à l'aide d'un logiciel tiers. Désormais, il est stocké dans des fichiers binaires fermés. Pour obtenir des données au format XML, exportez-les à l'aide du menu contextuel de l'onglet "Résultats d'optimisation".

  21. Testeur : Ajout de la possibilité de définir manuellement la devise de dépôt et l'effet de levier pour le test et l'optimisation. Dans les versions précédentes, la devise était définie en fonction du compte connecté. Par conséquent, il fallait passer à d'autres comptes pour changer la devise. La taille de l'effet de levier ne pouvait être sélectionnée que dans une liste prédéfinie, désormais n'importe quelle valeur peut être spécifiée.

    Veuillez noter que les taux croisés pour convertir le profit et la marge dans la devise de dépôt spécifiée doivent être disponibles sur le compte, afin de garantir un test correct.




  22. Testeur : Suppression de l'interdiction d'utiliser OpenCL dans les agents de test. Auparavant, les périphériques OpenCL n'étaient autorisés que lors de tests sur des agents locaux. Désormais, les agents sont autorisés à utiliser tous les périphériques OpenCL disponibles (tels que le processeur, la carte vidéo) lorsqu'ils travaillent sur le réseau local et sur le MQL5 Cloud Network.
  23. MetaEditor : Travail optimisé et accéléré avec le stockage MQL5.
  24. MetaEditor : Correction de la reprise du processus de débogage après une pause dans le fichier MQH.
  25. MetaEditor : Correction de la mise en évidence du code source dans l'éditeur.
  26. MetaEditor : Correction de la navigation dans les résultats de recherche.
  27. MetaEditor : Correction de la fonction de remplacement de texte en masse. Dans certains cas, seule la première occurrence était remplacée au lieu de toutes.
  28. La documentation a été mise à jour.
La mise à jour sera disponible via le système de mise à jour en direct.

 

Il s'agit du célèbre EA Firebird qui a été converti en MT5.

--------------

Firebird v0.60- expert pour MetaTrader 5


Cet EA utilise l'indicateur iMA (Moving Average, MA). En même temps, il y a un paramètre (défini en pourcentages) Distance entre "MA" et le prix - l'indentation de l'indicateur par rapport au prix. Avant d'envoyer un ordre de transaction, il vérifie combien de temps s'est écoulé depuis l'ouverture de la dernière position : Si moins de deux périodes (timeframes) se sont écoulées, la position ne sera pas ouverte.

--------------

Le fil de discussion original de l'EA avec de nombreuses versions pour MT4 est ici : Firebird EA