Vous définissez un ordre en attente, définissez le volume de l'ordre dans la variable m_volume
Lorsque TRADE_TRANSACTION_DEAL_ADD est reçu, comparez le volume de la position avec la variable m_volume et vérifiez si l'ordre initial y est toujours suspendu (peut-être était-ce une exécution partielle et vous avez ajouté le volume manuellement).
Vous définissez un ordre en attente, définissez le volume de l'ordre dans la variable m_volume
Lorsque TRADE_TRANSACTION_DEAL_ADD est reçu, comparez le volume de la position avec la variable m_volume et vérifiez si l'ordre initial y est toujours suspendu (peut-être était-ce une exécution partielle et vous avez ajouté le volume manuellement).
Karputov Vladimir comment danser avec le tambourin Je sais (approximativement)....
Dans ce cas, vous n'avez pas besoin de l'exemple - toutes les étapes de l'exécution d'un ordre commercial y sont clairement décrites. Tu ne l'as même pas regardé :
MqlTradeTransaction: TRADE_TRANSACTION_DEAL_ADD deal #6945344DEAL_TYPE_BUY Si-6.161.00 lot (MOEX deal=185290434)
Vous n'avez donc pas besoin de l'exemple - il décrit clairement toutes les étapes de l'exécution d'un ordre de bourse. Tu ne l'as même pas regardé :
Tu n'as même pas regardé ! !!
MQ Alexander 2016.08.0318:00# EN
Что касается ордеров, позиций и сделок.
Как написано в хелпе - последовательность поступления транзакций не гарантирована - транзакция переноса ордера в историю может быть получена раньше, чем транзакция сделки.
Изменение позиции в терминале происходит строго в результате получения сделочной транзакции, соответственно её получение является гарантией того что позиция поменялась.
Получение транзакции переноса ордера в историю, гарантирует только то, что ордер перестал быть активным (открытым) и был перенесён в историю ордеров.
Кроме того, транзакции могут потеряться при доставке от сервера к терминалу.
Что касается этой фразы.
Судя по всему - она осталась из документации к одной из начальных версий терминала с асинхронной торговли. В ближайшее время уберём. Виновные будут расстреляны.
TRADE_TRANSACTION_DEAL_ADD est à vous. Jusqu'à ce que vous obteniez cet événement - l'information sur la position peut être fausse. Tout le reste n'est que votre idée de comment ça marche. Des envies, en d'autres termes.
Attendez TRADE_TRANSACTION_DEAL_ADD, puis obtenez des informations sur la position. C'est tout.
TRADE_TRANSACTION_DEAL_ADD est votre tout. Jusqu'à ce que vous receviez cet événement - l'information sur la position peut être fausse. Tout le reste n'est que votre idée de comment ça marche. Des envies, en d'autres termes.
Attendez TRADE_TRANSACTION_DEAL_ADD, puis obtenez des informations sur la position. C'est tout.
Je vous l'ai déjà dit :
Je sais (à peu près) comment danser avec le tambourin.
Peu importe l'ordre et le volume.
Le schéma est le suivant :
Salut !
La situation est la suivante MT5, build 1375
Dans son travail, lorsqu'il négocie des contrats à terme, le robot utilise la fonction OrderSendAsync().
Supposons qu'il existe une position ouverte avec un volume de 2 contrats.
Comment dois-je effectuer la journalisation pour informer les développeurs de l'erreur ?
Vous trouverez un exemple d'oscillateur à l'écoute des événements TradeTransaction dans l'article "Par où commencer pour créer un robot de trading pour la bourse de Moscou MOEX ".
Essayez de l'exécuter et de voir les journaux des transactions exécutées. Il ne devrait y avoir aucune question.
Un exemple du fonctionnement de cet "écouteur" :
Vous trouverez un exemple de hibou qui écoute les événements TradeTransaction dans l'article Comment créer un robot de trading pour la bourse de Moscou MOEX.
Essayez de l'exécuter et voyez les journaux des opérations commerciales. Toutes les questions devraient disparaître.
Merci beaucoup.
Je veux juste en connaître l'essentiel :
Allez-vous le réparer ?
Le schéma est le suivant :
prostotrader:
Seulement, j'aimerais une réponse substantielle :
Allez-vous corriger l'erreur ?
Je suis désolé de débarquer à nouveau... mais laissez-moi être clair, quelle est l'erreur ?
Merci beaucoup.
Seulement, j'aimerais une réponse substantielle :
Allez-vous corriger l'erreur ?
Dans ce cas, vous n'avez pas besoin de l'exemple - toutes les étapes de l'exécution d'un ordre commercial y sont clairement décrites. Tu ne l'as même pas regardé :
Vous n'avez donc pas besoin de l'exemple - il décrit clairement toutes les étapes de l'exécution d'un ordre de bourse. Tu ne l'as même pas regardé :
Tu n'as même pas regardé ! !!
Tu ne l'as même pas regardé ! !!
TRADE_TRANSACTION_DEAL_ADD est à vous. Jusqu'à ce que vous obteniez cet événement - l'information sur la position peut être fausse. Tout le reste n'est que votre idée de comment ça marche. Des envies, en d'autres termes.
Attendez TRADE_TRANSACTION_DEAL_ADD, puis obtenez des informations sur la position. C'est tout.
TRADE_TRANSACTION_DEAL_ADD est votre tout. Jusqu'à ce que vous receviez cet événement - l'information sur la position peut être fausse. Tout le reste n'est que votre idée de comment ça marche. Des envies, en d'autres termes.
Attendez TRADE_TRANSACTION_DEAL_ADD, puis obtenez des informations sur la position. C'est tout.
Je vous l'ai déjà dit :
Je sais (à peu près) comment danser avec le tambourin.