![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
1. Pourquoi ça ? Les symptômes nuisibles doivent être traités, et de manière décisive.
2. Les variables, tableaux et autres choses ne doivent pas être nommés de manière cohérente ou avec des mots-clés du langage (mais le tableau "Symbol" est très frappant, on ne peut pas dire si c'est un tableau ou autre chose dans le code).
1. Tout d'abord, vous devez vraiment établir si la symptomatologie appartient aux manifestations positives ou négatives. Dans mon expérience, j'ai eu des cas où j'ai essayé de changer la valeur d'une variable globale dans une fonction qui n'était pas censée le faire (maudit copier-coller). Il m'a fallu quelques jours pour trouver cette erreur. Depuis lors, j'utilise les variables globales dans les cas où je ne peux en principe pas m'en passer.
2. Je suis d'accord. Mais s'ils sont utilisés dans le cadre d'une fonction, cela ne me dérange pas. Mais les variables globales avec de tels noms sont vraiment une source de confusion future.
Je vais cependant répéter ma question.
Est-il possible de déterminer le déclenchement de OnInit à l'intérieur de OnTick ?
Par exemple, puis-je déclarer une variable statique dans OnTick qui stocke le nombre d'initialisations de l'EA (si cette propriété ou une propriété similaire est présente dans MQL5) ?
Je dois être paranoïaque. Je n'aime pas les variables publiques (globales). Je le considère comme un muveton.
Lesvariables globales sont au moins visibles de loin. Mais cacher des variables cumulatives sérieuses à l'intérieur de fonctions en statique est une façon de se répartir soigneusement un râteau. C'est la première fois que je vois un tableau statique cumulatif caché dans une fonction de cette manière. C'est un râteau ardent.
Utilisez les classes - elles laisseront le niveau global propre, cacheront tous les boyaux et vous débarrasseront des béquilles.
Je vais cependant répéter ma question.
Est-il possible de déterminer le déclenchement de OnInit à l'intérieur de OnTick ?
Par exemple, pouvons-nous déclarer une variable statique à l'intérieur de OnTick qui stocke le numéro d'initialisation de l'Expert Advisor (s'il existe une telle variable ou une variable similaire dans MQL5) ?
Il est possible non seulement de compter le nombre de déclencheurs OnInit, mais aussi de déterminer pourquoi l'initialisation s'est produite (l'implémentation est une autre question).
Connaissez-vous _UninitReason, par exemple ?
J'ai besoin d'écrire un cours sur les symboles de travail.
Méthodes :
chaîne de caractères GetSymbol[] ;
bool UpdateSymbols(inWorkSymbols) ;
bool UpdateSymbolsStatus() ;
int GetSymbolCount() ;
Je m'excuse si la demande est effrontée... J'essaierai de le découvrir moi aussi.
Oui, il semble que ce soit une erreur de combiner le changement de symbole et la condition de délai.
Je suis également favorable à leur séparation en deux conditions. Le ticket a déjà été placé dans le bureau de service.
Je l'ai en quelque sorte cuisiné. Toute critique est la bienvenue.
La seule chose que je n'aime pas ici est le redimensionnement "en direct" du tableau contenant les données de travail.
Question pour les développeurs, est-il garanti que les données utilisateur précédemment saisies dans le tableau dynamique en cours de modification seront préservées dans la condition suivante ?
La seule chose que je n'aime pas ici est le redimensionnement "en direct" du tableau contenant les données de travail.
Une question pour les développeurs, est-il garanti que les données utilisateur précédemment saisies dans le tableau dynamique en cours de modification seront préservées dans la condition suivante ?