COMMANDE_POSITION_ID - page 4

 
papaklass:

Les programmeurs ont une règle : discuter du code !

Si vous rencontrez un problème avec votre code, vous DEVEZ poster le code où vous avez rencontré le problème. Dans une telle situation, vous êtes sûr de trouver quelqu'un prêt à vous aider. Mais vous inventez quelque chose de nouveau : vous essayez de discuter d'un problème que vous avez rencontré "sur vos doigts" sans le code.

Je ne serai pas surpris si, dans un avenir proche, vos questions restent sans réponse non seulement dans le Service Desk, mais aussi sur le forum.

Essayez de tirer les bonnes conclusions et ne soyez pas stupide. :)

Je n'ai aucun problème à ce que le code fonctionne!

Je suis à l'origine de Prashivala :

QUI UTILISE LE CODE SUIVANT :

long pos_id = long( OrderGetInteger( ORDER_POSITION_ID ) );

Quand apprendrez-vous à lire la question ?

 
Mikalas:

Je n'ai aucun problème à ce que le code fonctionne!

Je suis à l'origine de Prasheed :

QUI UTILISE LE CODE SUIVANT :

Quand apprendrez-vous à lire la question ?

Vous avez également demandé :

Chez moi, lorsqu'un ordre est partiellement exécuté, pos_id est toujours égal à 0.

Pourquoi ?

 
Contender:

Vous avez également demandé :

Oui, je l'ai fait, donc je ne l'ai pas demandé plus tard à la personne qui utilise ce code.

 
Mikalas:

Chez moi, lorsqu'un ordre est partiellement exécuté, pos_id est toujours égal à 0.

Pourquoi ?

Dans l'aide de MQ :

COMMANDE_POSITION_ID

L'identifiant de la position qui est mis sur l'ordre lorsqu'il est exécuté. Chaque ordre exécuté génère une transaction, qui ouvre une nouvelle position ou modifie une position existante. L'identifiant de cette position est fixé à l'ordre exécuté à ce moment-là.

Cela peut être dû au fait qu'il (l'ordre) n'a pas encore été entièrement exécuté, et il est possible que cet ordre participe à la formation d'une autre position.
 
Yurich:
Peut-être est-ce dû au fait qu'il (l'ordre) n'a pas encore été entièrement exécuté, et qu'il est possible que cet ordre participe à la formation d'une autre position.

C'est un plaisir de vous parler, Yurich, bonne journée !

Mais le truc, c'est quej' ai fait mes expériences avecORDER_POSITION_ID

sur le serveur de démonstration (personne ne m'empêche de tracer le programme).

Et l'appel de fonction

long GetOrderPosId( const ulong ticket )

est appelé dans une situation "satisfaite".

Et je m'en suis inquiété, avec votre conseil, sur la magie, encore une fois, merci beaucoup !

Je comprends les phrases que vous avez soulignées, mais alors pourquoi avez-vous écrit MQ ?

Chaqueordre exécuté génèreune transaction, qui ouvre une nouvelleposition ou modifie une position existante.

C'est ce qui me perturbe.

L'affaire estORDER_POSITION_ID, peut-être que je me trompe, mais il n'y a pas de réponse mz servicedesk.

Si j'annule simplement l'ordre après qu'il a été partiellement exécuté, il n'aura pasORDER_POSITION_ID?

L'identifiant de cette position estfixé à l'ordre exécuté à ce moment-là.

 
Mikalas:

Et l'appel de fonction

se déroule dans une situation "réglée".

Vous demandez l'identifiant de l'ordre passé, pas de l'ordre exécuté. L'ordre exécuté sera dans l'historique.

 
Mikalas:


Si j'annule simplement l'ordre après qu'il a été partiellement exécuté, il n'aura pas d'ORDER_POSITION_ID?

En théorie, l'historique devrait montrer la partie exécutée de l'ordre. Ou bien il n'est pas là ?

Je vous ai posé une question que vous n'avez pas remarquée: https://www.mql5.com/ru/forum/35432/page2#comment_1042916.

 
Yurich:

Vous demandez l'identifiant de l'ordre passé, pas de l'ordre exécuté. L'ordre exécuté sera dans l'historique.

C'est-à-direORDER_POSITION_ID pour les données historiques ?

Mais à l'aide :

Propriétés des ordres

Les ordres d'exécution des opérations commerciales sont traités par des commandes. Chaque commande a de nombreuses propriétés à lire, et les informations les concernant peuvent être obtenues à l'aide des fonctions OrderGet...() et HistoryOrderGet...().

 
Contender:

Vous observez ce mandat partiellement exécuté. Où se trouve-t-elle ? Dans la liste des transactions ou dans celles qui ont été exécutées ?

La commande est active.
 
Mikalas:
Par exemple,ORDER_POSITION_ID pour les données historiques ?
oui
Raison: