Questions "pour" du conducteur de vélo - page 2

 
WhooDoo22:

Simon,

Je ne vois pas ce que tu vois mais ;) Je vais rapidement inclure la fonction GetLastOrder() pour éclaircir ce problème. Je m'excuse d'avoir posté une question sans avoir d'abord inclus la fonction GetLastOrder() dans le code.

Je vous remercie.

Quel est le numéro de ticket affiché par OrderPrint() ? Quelle est l'erreur affichée ?
 

Simon,


Quelle est l'erreur affichée ?

ticket inconnu 2 pour la fonction OrderClose


Quel est le numéro de ticket affiché par OrderPrint() ?

#20526942 2012.12.24 13:43 acheter 0.01 USDJPY 84.466 0.000 0.000 86.105 0.00 0.00 19.03 0


Merci.

 
Ainsi, votre numéro de ticket USDJPY est 20526942 et vous essayez de fermer le ticket NUMÉRO (et non la position)2? voyez-vous le problème ?
 

Simon,

Le numéro du ticket USDJPY est 20526942.

La fonction OrderClose() tente de fermer le ticket numéro 2.

Le numéro du ticket USDJPY est 20526942 et son numéro de position dans le pool est 2.


Si je comprends bien, la fonction OrderClose() ne peut pas clôturer l'ordre USDJPY parce que le premier paramètre de la fonction OrderClose() utilise le numéro de position 2 au lieu du "numéro unique du ticket de l'ordre" (20526942). Si vous confirmez cette affirmation, alors il me semble que je dois trouver un moyen d'isoler le numéro de ticket 20526942 de l'ordre USDJPY, puis de placer ce numéro dans le premier paramètre de la fonction OrderClose().

Qu'en dites-vous ? ;)

Merci.

 
WhooDoo22:


Si je comprends bien, la fonction OrderClose() ne peut pas fermer l'ordre USDJPY parce que le premier paramètre de la fonction OrderClose() utilise le numéro de position 2 au lieu du "numéro unique du ticket de l'ordre" (20526942). Si vous confirmez cette affirmation, alors il me semble que je dois trouver un moyen d'isoler le numéro de ticket 20526942 de l'ordre USDJPY, puis de placer ce numéro dans le premier paramètre de la fonction OrderClose().

Qu'en dites-vous ? ;)

Oui, et il y a une fonction pour faire cela....
 

Simon,

Vous ne dites rien ? ;)

Cela ne peut pas être la fonction discrète OrderTicket(), n'est-ce pas ? Hahaha.

Merci.
 
WhooDoo22:

Simon,

Vous ne dites rien ? ;)

Ça ne peut pas être la fonction discrète OrderTicket(), n'est-ce pas ? Hahaha.

Je vous remercie.
LOL :-) votre code devrait fonctionner maintenant... ... voyez ensuite si vous pouvez le modifier pour gérer plusieurs ordres USDJPY... ;-)
 

Simon,

Une fois de plus, je suis si, si abondamment béni de recevoir une autre contribution plus que généreuse de l'onglet "Experts" dans mon MetaTrader que j'accueille à bras ouverts et avec une manifestation extrêmement joyeuse. ;)


Description de l'erreur :

Erreur de prix USDJPY (fonction OrderClose())


Merci.

Dossiers :
 
WhooDoo22:

Simon,

Une fois de plus, j'ai la chance de recevoir une nouvelle contribution généreuse de l'onglet "Experts" de mon MetaTrader, que j'accueille à bras ouverts et avec une manifestation de joie extrême ;).

Maintenant vous avez besoin d'un rapport d'erreur pour savoir exactement quelle erreur a été générée... c'est probablement que le prix est trop proche du SL ou du TP pour fermer l'ordre. Quel est votre FreezeLevel ?
 

Simon,

MODE_FREEZELEVEL33Niveau de gel de l'ordre en points. Si le prix d'exécution se situe dans la fourchette définie par le niveau de gel, l'ordre ne peut pas être modifié, annulé ou fermé.


Je ne sais pas quel est le niveau de gel pour le courtier MetaTrader que j'utilise pour effectuer des tests. Je suppose que le niveau de gel varie selon le courtier.

Connaissez-vous un moyen que je puisse utiliser pour découvrir le niveau de gel de MetaEditor en utilisant la fonction MarketInfo() ?

J'ai déjà incorporé la fonction GetLastError(), sans succès. J'essaie de la placer au bon endroit pour le moment.

De plus, le prix actuel de l'ordre devrait largement dépasser le niveau de gel.

Voici un instantané montrant son état :

Statut de l'ordre USDJPY


Merci.