Erreurs, bugs, questions - page 1178
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
Comme ça :
Si l'indicateur de visibilité sur H1 est activé, il sera vrai.Ensuite, vous devez lire le drapeau de visibilité et faire un & logique avec la constante.
Si tu veux dire :
Ou
C'est la même chose.Si tu veux dire :
Ou
C'est la même chose.Si tu veux dire :
Ou
C'est la même chose.Votre erreur ici est bool(res), puisque res est toujours plus grand que 1 dans n'importe quel mappage, voir ce qui est retourné dans res, donc bool(res) ne retournera 0 ou false que lorsque res=0.
Vous utilisez la conversion et la comparaison de types de manière inattentive.
OBJ_NO_PERIODS
0
L'objet n'apparaît à aucun moment
OBJ_PERIOD_M1
0x00000001
L'objet est représenté sur des graphiques de 1 minute
OBJ_PERIOD_M2
0x00000002
L'objet est représenté sur des graphiques de 2 minutes
OBJ_PERIOD_M3
0x00000004
L'objet est représenté sur des graphiques de 3 minutes
OBJ_PERIOD_M4
0x00000008
L'objet est représenté sur des graphiques de 4 minutes
OBJ_PERIOD_M5
0x00000010
L'objet est représenté sur des graphiques de 5 minutes
OBJ_PERIOD_M6
0x00000020
L'objet est représenté sur des graphiques de 6 minutes
OBJ_PERIOD_M10
0x00000040
L'objet est représenté sur des graphiques de 10 minutes
OBJ_PERIOD_M12
0x00000080
L'objet est représenté sur des graphiques de 12 minutes
OBJ_PERIOD_M15
0x00000100
L'objet est représenté sur des graphiques de 15 minutes
OBJ_PERIOD_M20
0x00000200
L'objet est représenté sur des graphiques de 20 minutes
OBJ_PERIOD_M30
0x00000400
L'objet est représenté sur des graphiques de 30 minutes
OBJ_PERIOD_H1
0x00000800
L'objet est représenté sur des graphiques de 1 heure
OBJ_PERIOD_H2
0x00001000
L'objet est représenté sur des graphiques de 2 heures
OBJ_PERIOD_H3
0x00002000
L'objet est représenté sur des graphiques de 3 heures.
OBJ_PERIOD_H4
0x00004000
L'objet est représenté sur des graphiques de 4 heures.
OBJ_PERIOD_H6
0x00008000
L'objet est représenté sur des graphiques de 6 heures.
OBJ_PERIOD_H8
0x00010000
L'objet est représenté sur des graphiques de 8 heures
OBJ_PERIOD_H12
0x00020000
L'objet est représenté sur des graphiques de 12 heures
OBJ_PERIOD_D1
0x00040000
L'objet est représenté sur des graphiques quotidiens
OBJ_PERIOD_W1
0x00080000
L'objet est représenté sur des graphiques hebdomadaires
OBJ_PERIOD_MN1
0x00100000
L'objet est tracé sur des graphiques mensuels
OBJ_TOUTES_PÉRIODES
0x001fffff
L'objet est représenté sur tous les horizons temporels
Et voilà :
Si l'indicateur de visibilité sur H1 est activé, il sera vrai.Dans la continuité de mon précédent post, j'ai réussi à trouver la zone problématique menant au bug en utilisant la méthode scientifique.
Nous avons une telle bibliothèque avec la fonction :
Voici le fichier principal :
Le conseiller expert résultant ne fonctionne pas et affiche dans le journal : "EX5 loading failed".
Salut. J'ai verrouillé l'EA dans la fonction OnInit et cela doit être la raison pour laquelle le terminal se bloque lorsque je désactive l'EA et change de timeframe (le timeframe ne change pas après les freins). Ma question est donc la suivante : est-ce dû à des pendaisons ? Si c'est le cas, est-ce que cela se corrige si je déplace l'algorithme vers OnTick ? Si non, qu'est-ce qui pourrait aider ?
PS : La boucle a une fonction Sleep, afin que le terminal ne soit pas surchargé. Les champs de saisie sont lus dans la boucle.
Salut. J'ai verrouillé l'EA dans la fonction OnInit et cela doit être la raison pour laquelle le terminal se bloque lorsque je désactive l'EA et change de timeframe (le timeframe ne change pas après les freins). Ma question est donc la suivante : est-ce dû à des pendaisons ? Si c'est le cas, est-ce que cela se corrige si je déplace l'algorithme vers OnTick ? Si non, qu'est-ce qui pourrait aider ?
PS : La boucle a une fonction Sleep, afin que le terminal ne soit pas surchargé. Les champs de saisie sont lus dans la boucle.
Salut. J'ai verrouillé l'EA dans la fonction OnInit et probablement à cause de cela le terminal se bloque lorsque je désactive l'EA et change de timeframe (le timeframe ne change pas après les freins). Ma question est donc la suivante : est-ce dû à des pendaisons ? Si c'est le cas, est-ce que cela se corrige si je déplace l'algorithme vers OnTick ? Si non, qu'est-ce qui pourrait aider ?
PS : La boucle a une fonction Sleep, afin que le terminal ne soit pas surchargé. Les champs de saisie sont lus dans la boucle.
OnInit - sert uniquement à l'initialisation. Tous les calculs doivent être effectués plus loin - OnTick, OnTimer etc.
Si vous avez besoin de connaître la modification du champ de saisie, il existe une bibliothèque standard pour cela : https://www.mql5.com/ru/docs/standardlibrary/controls/cedit.
Salut. J'ai verrouillé l'EA dans la fonction OnInit et cela doit être la raison pour laquelle le terminal se bloque lorsque je désactive l'EA et change de timeframe (le timeframe ne change pas après les freins). Ma question est donc la suivante : est-ce dû à des pendaisons ? Si c'est le cas, est-ce que cela se corrige si je déplace l'algorithme vers OnTick ? Si non, qu'est-ce qui pourrait aider ?
PS : La boucle a une fonction Sleep, afin que le terminal ne soit pas surchargé. Les champs de saisie sont lus dans la boucle.
La boucle doit se dérouler comme suit : while(true){} ? Oui ?
Cela devrait se passer comme suit : while(!isStopped()) {}. Mais cela causerait un autre problème - il s'arrêterait pour une raison inconnue. Cela devrait être fait dès le début. Si nous devons accélérer le démarrage, nous pouvons appeler startup depuis init.
Il est préférable de ne pas boucler du tout, maintenant qu'il y a un timer, nous devrions utiliser le timer.