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
L'avenir... Eh bien, eh bien. "Merci, c'est drôle" (c).
Lors de l'optimisation, j'aimerais voir le résultat de l'exécution sous forme de pourcentage, plutôt que les chiffres affichés dans la colonne "Résultat". Et dans le backtest, ce serait bien si le résultat "Bénéfice net" avait un bénéfice en %.
Insérez votre formule dans le gestionnaire d'événement OnTester() et obtenez le résultat souhaité.
Je suggère de faire en sorte que les variables globales du programme ne croisent pas les variables et paramètres des plugins de MQL4 et MQL5. J'ai déclaré une variable 'point' dans mon conseiller expert et maintenant je reçois beaucoup de messages comme : "La déclaration de 'point' cache la déclaration globale dans le fichier 'expert.mq4' à la ligne 153 ChartObject.mqh 154 39". C'est horrible quand on ne peut pas déclarer une variable dans un module, un programme, qui est dans les paramètres d'un autre module. Pourquoi le module ChartObject.mqh doit-il voir mon Expert Advisor, expert.mq4, si ChartObject.mqh ne le déclare pas explicitement ?
Il est évident que cela vous aidera.
Oui, j'ai cette ligne dans mon Expert Advisor, mais elle n'est pas dans le module ChartObject.mqh. Je ne vais pas réécrire tous les modules standards à cause de ça...
Je l'ai. Dans ce cas, ne créez pas de variables globales. Vous pouvez vous en passer. Sinon, avec n'importe quelle coïncidence, comme un nom très commun :
int i;
Les déclarations globales seront écrasées par les déclarations locales. C'est ce dont on vous avertit.
Et le plugin n'a pas sa propre portée, ce n'est pas un module, c'est juste un morceau de code qui sera inséré là où vous écrivez include.
Je l'ai. Alors ne créez pas de variables globales. Vous pouvez vous en passer.
Que voulez-vous dire, ne pas les créer ? Dans n'importe quel langage de programmation, les variables globales sont utilisées librement et c'est ok, mais le compilateur jure. L'erreur n'est pas cruciale, mais elle est tout de même gênante.
double point = MarketInfo(EA_Symbol(), MODE_POINT);
Le point variable rapporte le prix d'un point et remplace le point standard. La fonction MarketInfo(EA_Symbol(), MODE_POINT) donne le prix de 1 point pour n'importe quel symbole. En outre, le point variable peut être utilisé dans n'importe quelle fonction, dans le corps de l'EA, s'il s'agit d'une variable globale bien sûr. Je suis d'accord pour dire que de tels cas causent assez souvent des inconvénients (si vous avez certainement de l'expérience dans la programmation en MQL). Et bien qu'ils puissent être évités, la question est de savoir pourquoi, si dans d'autres langues modernes ces problèmes n'existent tout simplement pas ?