MetaTrader 4 Build 529 beta publié avec un nouveau compilateur - page 18
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Le manuel du MQL4 (qui se trouve dans l'éditeur) a-t-il également été mis à jour en conséquence ?
oui avec une demande de mise à jour. Le manuel de MQL4 est presque basé sur 5 et ne correspond pas aux réalités du compilateur pour le moment.
Corrigez-moi si je me trompe.
J'utilise une fonction de bibliothèque dans un indicateur, cette fonction déclare quelques variables statiques qui participent au calcul du tableau de l'indicateur.
Si je veux modifier les paramètres de l'indicateur afin de corriger le calcul de l'indicateur (en fonction des variables statiques),
passer le drapeau à la fonction de la bibliothèque qui est responsable de la réinitialisation (vous devez développer les paramètres d'entrée de chaque fonction qui a des variables statiques).
effectuer la mise à zéro des variables statiques dans le corps, et ne pas oublier d'enlever le drapeau avant de terminer le calcul.
Ce serait beaucoup plus facile si les variables statiques avaient un paramètre, défini lors de leur déclaration, responsable de la remise à zéro de ces variables lors de la réinitialisation.
Il serait beaucoup plus simple si les variables statiques avaient un paramètre à définir lors de leur déclaration, responsable de la réinitialisation ou non de la valeur de ces variables lors de leur réinitialisation.
Ce serait encore plus facile si les développeurs créaient une fonction spéciale comme ResetStaticVars().
// D'ailleurs, ce n'est pas si facile à faire. Je ne le ferais pas. C'est une chose de simplement remettre à zéro l'ensemble du segment de données, et c'en est une autre d'attribuer correctement toutes les valeurs initiales des utilisateurs. Une douleur dans le cou, cependant.
En fait (en tant que paradigme), la sauvegarde des valeurs pendant la durée de vie du programme est plutôt pratique. Il y a juste une question de rétrocompatibilité ici, donc...
Je sais qu'il s'agit d'une partie russophone du forum, mais comme je ne sais pas parler russe (même si je sais le lire), j'espère que cela ne dérangera personne de poster ceci ici (puisque la partie anglaise semble complètement inactive en ce qui concerne ces questions et que je n'ai pas vu que quelqu'un a posté sur ce sujet).
Il y a un problème sérieux avec le nouveau metatrader qui concerne les paramètres de chaînes externes. Initialement, ils ont une valeur correcte, mais dès que le cadre temporel ou le symbole est modifié, le contenu d'un paramètre de chaîne est perdu. Voici un exemple simple qui montre exactement ce qui se passe. Ce problème se produit également lorsque de tels indicateurs sont utilisés par le biais de l'appel iCustom() et cela rend ces indicateurs inutilisables à partir de n'importe quel EA ou autre code.
Oui avec la demande de mise à jour. Le manuel pour MQL4 est presque basé sur 5 et ne correspond pas aux réalités du compilateur pour le moment.
peut-être qu'ils ont laissé quelque chose là qui est dans un futur proche ? je compte dessus.
Le manuel du MQL4 (qui se trouve dans l'éditeur) a-t-il également été mis à jour en conséquence ?
Je n'arrive pas à comprendre pourquoi nous avons besoin d'un tel design.
#property icon "\\Files\\button.ico"
Je n'arrive pas à comprendre pourquoi on a besoin d'un tel design.
Je sais qu'il s'agit d'une partie russophone du forum, mais comme je ne sais pas parler russe (même si je peux le lire), j'espère que cela ne dérangera personne de poster ceci ici (puisque la partie anglaise semble complètement inactive en ce qui concerne ces questions et que je n'ai pas vu que quelqu'un a posté sur ce sujet).
Il y a un problème sérieux avec le nouveau metatrader qui concerne les paramètres de chaînes externes. Initialement, ils ont une valeur correcte, mais dès que le cadre temporel ou le symbole est modifié, le contenu d'un paramètre de chaîne est perdu. Voici un exemple simple qui montre exactement ce qui se passe. Ce problème se produit également lorsque de tels indicateurs sont utilisés par le biais de l'appel iCustom() et cela rend ces indicateurs inutilisables à partir de n'importe quel EA ou autre code.
Mladen, il est plus facile pour moi de vous répondre en russe, puisque vous savez lire couramment.
Voici ma solution à ce problème. Dans mon code init(), j'inclus la fonction ReInit() qui réinitialise ces variables globales, dont les valeurs doivent être restaurées lorsque l'horizon temporel ou le symbole change :