Erreurs, bugs, questions - page 2077

 
Alexey Kozitsyn:

Vous remplissez les limites d'autres personnes avec votre ordre au marché. Et vous ne remplissez pas nécessairement la limite de la même contrepartie (si votre lot d'ordre > 1).

Comment le découvrir. Dans le conseiller expert qui traite l'historique, demander cet historique même s'il y a une position ouverte. Et vérifiez si l'ordre qui a initié la transaction de la position actuelle a été traité.


Il est clair que je prends les limites, mais le remplissage n'a-t-il pas lieu immédiatement ? Je ne vois pas l'ordre se déclencher à chaque compteur ou niveau de prix, mais à différents endroits.

Que voulez-vous dire, la commande a-t-elle été traitée ou non ? J'ai lancé un ordre au marché et il a le statut intermédiaire "en cours d'exécution" ? Comment l'initialiser ?

 
Aleksey Vyazmikin:

Il est compréhensible que je verse des limites, mais le versement ne se fait-il pas immédiatement ? Ce n'est pas chaque agent de comptoir ou chaque niveau de prix qui se déclenche, mais dans certains cas, je ne vois pas de modèle.

Que voulez-vous dire, la commande a-t-elle été traitée ou non ? J'ai lancé un ordre au marché et il a le statut intermédiaire "en cours d'exécution" ? Comment l'initialiser ?

Votre ordre au marché initie les transactions. Il peut y avoir plus d'une transaction si l'ordre à cours limité le plus proche ne couvre pas le volume total de votre ordre au marché.

Si ce n'est pas clair, lisez l'article sur la tarification des échanges.

Qu'est-ce que tu veux dire ? Vous voulez un deuxième EA pour traiter la commande une fois, n'est-ce pas ? Si c'est le cas, vous devriez probablement vous souvenir du numéro de la dernière commande traitée.

 
Alexey Kozitsyn:

Votre ordre au marché initie les transactions. Il peut y avoir plus d'une transaction dans le cas où l'ordre à cours limité le plus proche ne couvre pas le volume total de votre ordre au marché.

Si ce n'est pas clair, lisez l'article sur la tarification des échanges.


Leprix de la bourse est clair, ce n'est pas la question - il est clair qu'il peut y avoir plusieurs transactions sur un ordre, ce n'est pas clair, l'autre question est de savoir pourquoi l'information sur toutes les transactions n'arrive pas en même temps - parce qu'en fait l'événement se produit en même temps. Ou est-ce que je me trompe et qu'il y a un délai spécial entre chaque opération fournie par la bourse ? Si c'est le cas, veuillez me donner un lien pour le lire.

Alexey Kozitsyn:

Qu'est-ce que tu veux dire ? Vous voulez traiter la commande une fois par le second EA, n'est-ce pas ? Si c'est le cas, vous devez probablement vous souvenir du numéro de la dernière commande traitée.

Je veux vérifier la position pour certains critères - SL/TP et volume. Dans ce cas, une partie de la position peut être formée par un autre ordre. Ok, je me souviens du numéro de commande dans l'historique, que dois-je faire ensuite ?
 
Aleksey Vyazmikin:

Ou est-ce que je me trompe et qu'il y a un délai spécial fourni par la bourse entre chaque transaction ?

Eh bien, vérifiez, qui vous arrête ? Je n'ai pas entendu parler d'un retard particulier.

Je veux vérifier la conformité de la position avec certains critères - SL/TP et volume. En même temps, une partie de la position peut être formée par un autre ordre. Ok, j'ai mémorisé le numéro de l'ordre dans l'historique.

Alors, examinez la position. Vous avez trouvé la position - demandez ses paramètres. Vous pouvez demander des paramètres à chaque tick. Ou après que l'événement OnTrade() se soit produit.

Si vous souhaitez que la position ne soit traitée qu'après l'exécution complète de l'ordre, vous avez peut-être besoin de OnTradeTransaction().

 
Alexey Kozitsyn:

Alors vérifiez, qui vous arrête ? Je n'ai jamais entendu parler de délais spéciaux.


Peut-être que je fais quelque chose de mal, c'est pourquoi le résultat est si... donc s'il y a une réponse exacte, la direction à prendre est claire. Mais, je vais commencer à vérifier, c'est juste que dans les testeurs et autres simulateurs tout fonctionnait bien, et hier dans la vraie vie ça m'a mordu à cause de cette spécialité de bug.

Alexey Kozitsyn:

Considérez donc la position. Trouver une position - demander ses paramètres. Vous pouvez demander des paramètres à chaque tick. Ou après que l'événement OnTrade() se soit produit.

Je le vérifie de cette façon dans OnTrade() - et j'obtiens une situation étrange... Eh bien, je vais écrire les journaux en détail pour comprendre ce qui se passe. Je ne sais pas comment reconnaître que l'ordre au marché est toujours négocié.


AlexeyKozitsyn:

Si vous souhaitez que la position ne soit traitée qu'après l'exécution complète de l'ordre, vous avez peut-être besoin de la fonction OnTradeTransaction().

OnTradeTransaction(), comme je l'ai compris, ne fonctionne que sur le même terminal où la transaction est effectuée, et dans mon cas, il s'agit d'ordinateurs différents.
 
Aleksey Vyazmikin:

Vous ne pouvez pas vérifier toutes les caractéristiques du FORTS real dans le testeur. Verser une commande en fait partie.

 
Alexey Kozitsyn:

Vous ne pouvez pas vérifier toutes les caractéristiques du FORTS real dans le testeur. Verser une commande en fait partie.


Le slippage est sauvage - 10 points chacun - le verre est vide, il semble que les arbitres soient les seuls présents...

 

Ainsi, je regarde la fermeture de 30 lots par SL et je vois queOnTrade() est entré quand il y avait 30, puis 25, 25,25, 16,5,1,0 jusqu'à 39 fois !

Dans le même temps, je vois que la position a été clôturée avec les trades : 5,2,2,1,3,1,4,1,2,1,1,2,3,1,1 - c'est-à-dire 15 fois ! Je demande aux développeurs une clarification sur cette question.

 
Les commentaires non pertinents pour ce sujet ont été déplacés vers "Indicateur par indicateur".
 

Écrit à la SD, quelqu'un a-t-il remarqué cela chez lui ? J'ai directement copié le message

------------------------

Version du terminal et débit binaire

...1653

Description du problème

...Le curseur dans le champ graphique devient parfois du texte au lieu d'un pointeur, c'est-à-dire un bâton vertical, comme dans un éditeur.

Séquence d'actions

...se produit de manière totalement aléatoire. Il est utile de revenir à la barre du graphique commercial standard. Parfois, ce survol devient une flèche plutôt qu'une poignée. Et parfois, il s'agite sur le graphique et revient de lui-même à la normale.

Le résultat est le suivant

...

Résultat attendu

...

Plus d'informations

Windows 10 Pro 1709 19299.64 x64, Observé sur de nombreux terminaux, différents DCs. MT5 ne fonctionne que dans /portable sur tous ces appareils. J'utilise Punto Switcher. Également observé sur des terminaux propres, sans Expert Advisors et indicateurs installés.

Raison: