Erreurs, bugs, questions - page 2066
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Si la ressource d'un objet BMP a été supprimée puis recréée, l'objet BMP ne voit plus sa ressource. Il s'agit d'une erreur. Vous devez maintenant supprimer l'objet et le recréer à nouveau.
Si la ressource d'un objet BMP a été supprimée puis recréée, l'objet BMP ne voit plus sa ressource. Il s'agit d'une erreur. Vous devez maintenant supprimer l'objet et le recréer à nouveau.
Situation :
Une position de marché d'un Expert Advisor tiers a été sélectionnée avec succès par OrderSelect(ticketNumber,SELECT_BY_TICKET) et une tentative est faite dans la boucle pour la fermer (la sélection de l'ordre sur le ticket a été faite avant la boucle de tentative de fermeture).
Je reçois une erreur :
Le billet est correct.
Il est naturel que notre EA puisse fermer cet ordre indépendamment, donc
à chaque itération de la boucle, nous vérifions
ce qui ne donne pas le résultat souhaité et le message concernant le mauvais numéro de ticket s'affiche les 30 fois du cycle.
Une mauvaise main ou un bug avec la perte d'un ordre sélectionné ?
Ou le numéro d'erreur ne reflète pas exactement la situation/le problème ?
Mise à jour :
J'ai découvert que la position n'est pas fermée par l'EA natif, mais par celui que nous fermons.
Cependant, avant l'erreur cyclique 4108, nous obtenons une erreur unique 3 (bien qu'avant que l'erreur 3 ne soit enregistrée, l'ordre a été fermé).
Naturellement, l'EA natif pourrait clôturer cet ordre de manière indépendante, donc
A chaque itération de la boucle, la vérification est effectuée.
Nous devons aussi faire un OrderSelect.
Pouvez-vous me montrer le code ? Pourquoi supprimer la ressource, vous pouvez la retélécharger / modifier sans la supprimer.
Rechargé sans suppression sans aucun problème, bien sûr. Après la suppression, des problèmes.
Aucun message de
Messages du système
Aucun message, y compris le message sur le produit, la vente du produit, les remarques du modérateur et le message de validation du produit.
Aucun message de
Messages du système
Aucun, y compris le message sur le produit, la vente du produit, les notes du modérateur et le message de validation du produit.
Bon après-midi.
L'erreur a été corrigée, nous devons attendre la mise à jour du site.
Nous nous excusons pour ce désagrément.
Bon après-midi.
L'erreur a été corrigée, nous devons attendre que le site soit mis à jour.
Désolé pour le dérangement.
Merci. J'ai déjà répondu à la SD. :-) J'attends...
P.S. Ça n'a jamais été aussi calme avant ..... silence direct .........
Vous devez également faire un OrderSelect.
Pouvons-nous avoir des détails sur la raison de cette situation ?
Nous avons sélectionné avec succès une commande sur un ticket.
Nous avons envoyé une commande de fermeture dans l'itération 1.
A cette itération #1, nous avons reçu l'erreur 3 (Paramètres de transaction invalides.) La commande a néanmoins été clôturée. Comment a-t-elle été fermée ?
Ensuite, nous obtenons l'erreur 4108 à l'itération 2. Nous ne pouvons pas le fermer en utilisant OrderCloseTime!=0.
A quel stade, selon la documentation, perd-on le lien avec l'ordre sélectionné par le ticket?
N'est-ce pas un cas où, après avoir envoyé la commande de clôture, l'ordre aurait dû être verrouillé et l'erreur 139 aurait dû être générée au lieu de 4108 ?
Ensuite, nous obtenons l'erreur 4108 à partir de l'itération 2. Et la condition OrderCloseTime!=0 ne parvient pas à sortir.
Par analogie
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
CPositionInfo - l'information est-elle à jour ou au moment de l'entrée dans le cycle ?
fxsaber, 2017.11.06 07:47
PositionGet renvoie toujours des informations au moment du dernier appel à l'une des quatre fonctions suivantesCela signifie que la position peut ne pas avoir existé depuis longtemps et PositionGet conservera les anciennes informations.
Il existe une structure interne de position en lecture seule, dont les champs sont lus par les fonctions PositionGet habituelles. Il serait probablement pratique d'avoir _Position, comme _Symbol, _LastError, etc.