Questions des débutants MQL5 MT5 MetaTrader 5 - page 1271

 
Alexey Viktorov:

Je ne l'ai jamais utilisé, mais je pense que nous devrions vérifier le type de transaction TRADE_TRANSACTION_ORDER_UPDATE.

C'est évident. Que dois-je vérifier ensuite ?

 
leonerd:

C'est évident. Que dois-je vérifier ensuite ?

dans MqlTradeRequest ?

 
leonerd:

dans MqlTradeRequest ?

non, ce n'est pas le cas

 
trans.order_state==ORDER_STATE_REQUEST_MODIFY
cela ne fonctionne pas non plus
 
leonerd:
Ça ne marche pas non plus.

Mec, bravo et respect à toi ! Tu essaies quelque chose. La plupart des gens demandent et se plaignent ensuite que cela ne leur a pas été expliqué. )))

 
leonerd:

C'est évident. Qu'est-ce qu'il faut vérifier ensuite ?

Évidemment, comparez le prix "hier" et "aujourd'hui". En gros, ce qu'elle était et ce qu'elle est maintenant. Si elle a changé, alors c'est ce qu'elle est.

 
Alexey Viktorov:

Évidemment, comparez le prix "hier" et "aujourd'hui". En gros, ce qu'elle était et ce qu'elle est maintenant. Si ça a changé, alors c'est ce que c'est.

Alors, dois-je stocker le prix d'hier quelque part ? Je ne peux pas l'obtenir dans OnTradeTransaction, n'est-ce pas ?

 
leonerd:

Je dois donc stocker le prix d'hier quelque part ? Je ne peux pas l'obtenir dans OnTradeTransaction, n'est-ce pas ?

Uniquement lors de la passation d'une commande. Type de transaction TRADE_TRANSACTION_ORDER_ADD

Et ensuite, il doit être stocké jusqu'à ce qu'il soit modifié.

 

Vous à

Alexey Viktorov:

Seulement lorsqu'une commande est passée. Type de transaction TRADE_TRANSACTION_ORDER_ADD

Et ensuite, il doit être stocké jusqu'à ce qu'il soit modifié.

Comment pouvez-vous imaginer ça ? Je stocke tous les ordres et leurs prix ouverts dans une sorte de tableau ou de liste. Chaque fois que je mets à jour(TRADE_TRANSACTION_ORDER_UPDATE), je dois parcourir la liste pour trouver l'ordre avec le ticket nécessaire ? N'y a-t-il pas une solution élégante ?

 
leonerd:

Êtes-vous...

Comment pouvez-vous même concevoir ça ? Je stocke tous les ordres et leurs prix ouverts dans un tableau ou une liste. Chaque fois que je le mets à jour(TRADE_TRANSACTION_ORDER_UPDATE), je dois parcourir la liste pour trouver un ordre avec le ticket nécessaire ? N'y a-t-il pas une solution élégante ?

Cela dépend de l'objectif de la mise à jour. Pourquoi ne pas simplement recharger le tableau ?