Erreurs, bugs, questions - page 1790

 
Eh bien, elle a déjà été décrite :


Identifiant

Description

ÉTAT_DE_LA_COMMANDE_DÉMARRÉ

La validité de la commande a été vérifiée, mais le courtier ne l'a pas encore acceptée.

ÉTAT_DE_LA_COMMANDE_PLACÉE

État_de_la_commande_placée


Vous envoyez une demande de transaction (OrderSend) - son exactitude est vérifiée et si elle est correcte, le retour est vrai. C'est-à-dire qu'il s'agit d'une réponse sur l'exactitude de la demande commerciale. Le serveur n'a pas encore reçu cette demande.

Ensuite, lorsque la demande est acceptée par le serveur, la réponse est renvoyée : ORDER_STATE_PLACED - l'ordre est fixé.

Je ne peux pas en être sûr, mais c'est ainsi que cela fonctionne logiquement. Je ne connais pas d'embûches.
 
Artyom Trishkin:
Eh bien, il est déjà décrit :


Identifiant

Description

ÉTAT_DE_LA_COMMANDE_DÉMARRÉ

La validité de la commande a été vérifiée, mais le courtier ne l'a pas encore acceptée.

ÉTAT_DE_LA_COMMANDE_PLACÉE

État_de_la_commande_placée


Envoi de la demande de transaction (OrderSend) - son exactitude est vérifiée et si elle est correcte, elle renvoie true. C'est-à-dire qu'il s'agit d'une réponse indiquant que la demande de transaction est correcte. Le serveur n'a pas encore reçu cette demande.

Ensuite, lorsque la demande est acceptée par le serveur, la réponse est renvoyée : ORDER_STATE_PLACED - l'ordre est fixé.

Je ne peux pas en être sûr, mais c'est ainsi que cela fonctionne logiquement. Je ne sais pas ce qu'il faut éviter.
Vous avez décrit la logique de travail avec OrderSendAsync, pas OrderSend. Après l'envoi de la commande en cours, vous voudrez supprimer la commande, et il est très probable que vous ne pourrez pas le faire, puisque les commandes démarrées ne sont pas supprimées.
 
Artyom Trishkin:
Vous envoyez une demande de transaction (OrderSend) - son exactitude est vérifiée et, si elle est correcte, elle renvoie true. C'est-à-dire qu'il s'agit d'une réponse indiquant que la demande de transaction est correcte. Le serveur n'a pas encore reçu cette demande.
Alors, en quoi OrderSend est-il différent de OrderSendAsync (à part le nom) ?
 
A100:
En quoi OrderSend est-il différent de OrderSendAsync (à part le nom) ?
J'ai écrit ci-dessus - juste mon idée de la logique. Affecte un long travail en 4. Par conséquent, ce n'est pas une réponse à cette question ;)
 
Artyom Trishkin:
J'ai écrit ci-dessus - juste mon idée de la logique. Je travaille dans le 4 depuis longtemps. Par conséquent, il est peu probable que je puisse répondre à cette question ;)

Regardez le paragraphe 7 ici https://www.mql5.com/ru/forum/23/page19#comment_2632240

Список изменений в билдах MetaTrader 5 Client Terminal
Список изменений в билдах MetaTrader 5 Client Terminal
  • www.mql5.com
Автоматическое обновление доступно через систему LiveUpdate:.
 
A100:

Regardez ici https://www.mql5.com/ru/forum/23/page19#comment_2632240

L'explication du cas décrit peut être que le serveur sur l'ancien build

L'ancien modèle n'a rien à voir dans ce cas

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

Changements dans les constructions du terminal client MetaTrader 5

MetaQuotes Software Corp., 2016.07.14 15:30

  1. MQL5 : Modification du comportement de la fonction OrderSend lors de la passation, de la modification et du retrait d'un ordre. Le comportement n'est modifié que lorsque l'on passe des ordres à des systèmes de négociation externes. Auparavant, le contrôle de la fonction OrderSend était renvoyé après le placement (traitement) réussi d'un ordre sur le serveur du courtier. Désormais, la commande n'est renvoyée qu'après que le serveur du courtier a reçu une notification du système de négociation externe indiquant que l'ordre y a été placé avec succès.

    Vous trouverez ci-dessous une représentation schématique du comportement précédent (flèche rouge) et actuel de la fonction :



Puisque même avec Before (dans le schéma), OrderSend n'aurait dû être renvoyé que lorsqu'il était placé. D'autant plus que les cas se produisent sur différents serveurs de démonstration où il n'y a pas de système externe.
 
fxsaber:
L'ancien modèle n'a rien à voir avec cela.
Oui, j'ai supprimé cette phrase.
 
Le forum ne fonctionne pas avec le @calling de l'interlocuteur.
 

Bonjour à tous !

Pour que mon EA fonctionne dans un bloc de récupération de crash, j'ai besoin de savoir combien de commissions, de swaps et de frais ont été effectués au cours de la dernière période. Comment puis-je obtenir cette information de manière programmatique ?

 
Amon1953:

Bonjour à tous !

Pour que mon EA fonctionne dans un bloc de récupération de crash, j'ai besoin de savoir combien de commissions, de swaps et de frais ont été effectués au cours de la dernière période. Comment puis-je obtenir cette information de manière programmatique ?

Qu'est-ce que la "dernière période" ?