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
...
appelle tout dans des méthodes privées, mais existe-t-il un "esprit Jedi" pour éviter CheckPointer(m_order)==POINTER_INVALID dans le code source ?
...
Il est plus probable qu'il ne s'agisse pas d'une astuce, l'algorithme doit être tel, que cette partie du code n'est pas exécutée s'il n'y a pas d'ordre.
Ou peut-être que c'était prévu comme ça. Mais il est peu probable que s'il y a un pointeur, cela ne signifie pas qu'il y a un ordre, donc nous devons vérifier s'il y a un ordre.
et si ma mémoire est bonne, au début de l'année, il était possible de désactiver NULL dans le journal et d'obtenir 0, maintenant il donne une erreur
Changements
Forum sur le trading, les systèmes de trading automatisés et le testeur de stratégie
Bugs, bugs, questions
Kirill Belousov, 2017.12.14 21:34
L'heure de la retraite
Changements
Oui, en effet, mais je me suis souvenu de la façon dont j'avais l'habitude de le faire dans MT4, c'est ainsi que j'ai déréférencé les pointeurs :
2019.09.17 07:52:40.855 tst (EURUSD,H1) 1 : 0
2019.09.17 07:52:40.856 tst (EURUSD,H1) 2 : 1048576
2019.09.17 07:52:40.856 tst (EURUSD,H1) 3 : 0
2019.09.17 07:52:40.856 tst (EURUSD,H1) 1 objets non supprimés restants
2019.09.17 07:52:40.856 tst (EURUSD,H1) 1 objet de type A gauche
2019.09.17 07:52:40.856 tst (EURUSD,H1) 24 octets de mémoire perdue
Ce n'est probablement pas le cas, l'algorithme devrait être tel que cette partie du code n'est pas exécutée s'il n'y a pas d'ordre.
Ou peut-être que c'est voulu ainsi. Mais c'est peu probable, s'il y a un pointeur, cela ne veut pas dire qu'il y a un ordre, donc nous devons vérifier l'existence d'un ordre.
En fonction du problème, j'ai déjà écrit en code comment créer un "objet ordre" qui regarderait lui-même ce qui se passe sur le marché - rechercher un ordre dans le concepteur en utilisant une magik, s'il est trouvé il le prendra, ouvrira un ordre à un prix, le type d'ordre lui-même compte (marché ou en attente), normalisation du lot, réessayer d'ouvrir un ordre si les requotes étaient sur un tick précédent, après un placement d'ordre réussi sur le tick suivant, placer un sl et ainsi de suite.... tout cela se fait tout seul sans aucune intervention de l'"objet de la commande".
Et si l'ordre a été fermé, il est en quelque sorte toujours là pour la stratégie - en fin de compte, la stratégie s'intéresse au profit de l'ordre (actuel ou déjà fermé - peu importe !) et à l'état de l'ordre lui-même (pas encore placé, actif ou déjà fermé).
tout fonctionne comme prévu, peut-être que tu as raison quelque part, mais pour l'instant le code est encore en test, les pointeurs doivent être vérifiés, plus tard on pourra essayer sans cette vérification... bien que la logique de travail implique les actions suivantes s'il n'y a pas un tel objet.... en principe il ne reste plus grand chose à refaire pour les commandes virtuelles, je dois encore réfléchir ))))
Je voulais écrire ce que j'avais l'habitude d'avoir au lieu de...
c'était comme ça :
mais je me suis souvenu comment vérifier les substitutions de macro dans MQL
2019.09.16 22:57:42.837 tst (EURUSD,H1) a = 1
2019.09.16 22:57:42.837 tst (EURUSD,H1) POINTER_INVALID = 0
2019.09.16 22:57:42.837 tst (EURUSD,H1) NULL = 0
et si ma mémoire est bonne, au début de l'année, il était possible de désimprimer NULL dans le journal et d'obtenir 0, maintenant une erreur est affichée.
C'est-à-dire que le comportement NULL as if ne devrait pas changer dans le futur, mais ce qui est substitué là au lieu de NULL n'est pas clair, probablement si cette situation est vérifiée maintenant, comme écritif(CheckPointer(m_order)==POINTER_INVALID)) )) c'est pour ainsi dire le code correct)))
Et puis il y a ça, pour le sucre :
Le premier test simple montre
que ce n'est pas du sucre, mais un autre... une substance plus liquide
Le premier test simple montre
que ce n'est pas du sucre, mais un autre... une substance plus liquide.
Parce que ce n'est pas là.) NULL n'est ni ici ni là. Vous devez utiliser la fonction CheckPointer(). Le pointeur n'a pas besoin d'être remis à zéro par lui-même - après avoir été supprimé, il devient POINTER_INVALID par lui-même.
Parce que ce n'est pas là que vous êtes)) NULL n'est ni ici ni là. Vous devez utiliser la fonction CheckPointer(). Vous n'avez pas besoin de remettre à zéro le pointeur par vous-même, il devient POINTER_INVALID par lui-même après la suppression.
Je suis tout à fait d'accord. Si vous lisez les admins, cela ressemble généralement à ceci : "Ecrivez vos codes correctement".
Le MQL en général est toujours difficile, nouvelle construction, nouveaux problèmes, vous commencez à découvrir si je l'ai utilisé de manière incorrecte, voilà et signez )))).
Le premier test simple montre
que ce n'est pas du sucre, mais un autre... une substance plus liquide
Cher homme. Où sont les statistiques de vos travaux en freelance, des produits sur le marché, des publications liées à la programmation? Ou bien essayez-vous d'ouvrir les yeux de quelqu'un sur le sujet des pointeurs constants, ou bien d'étaler vos connaissances sur le sujet des types de substances ... ? À l'avenir, veuillez tenir compte du contexte des exemples, plutôt que d'essayer de reproduire une erreur de compilation.
J'ai un contexte simple : si le code (dans ce cas une macro) est écrit avec une erreur, je pense qu'il est possible de la signaler (et de donner un exemple pour le prouver). Et dans ce contexte, je ne vois pas bien ce queles statistiques ont à voir avec cela...
Et dans ce contexte, je ne vois pas très bien ce que les statistiques ont à voir avec cela.
Restez simple et les gens viendront à vous.
;)
SZZY : Vos postes sont presque toujours une bonne idée, mais la présentation du matériel, eh bien, pas tout à fait avec de bonnes intentions, bien sûr votre entreprise, mais imho, veulent aider - aider, veulent être intelligent, eh bien, souvent, il s'avère ainsi.
Tout dépend de vous, mais renforcer votre estime de soi grâce à des ressources en ligne - .... Je suis trop paresseux pour continuer à taper.