Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 844

 
Escapee:

Attendez... Comprendre enfin ce dont j'ai besoin...

Voici l'ordre d'ouverture dont j'avais besoin - OrderSend(Symbol(),OP_SELL,0.1,Bid,3,0,0) ; . Et ce script fonctionne.

Maintenant, j'ai besoin d'une fermeture......

Ce n'est pas un scénario. C'est juste une commande pour ouvrir un ordre. La fonction OrderSend renvoie le ticket de commande si l'ouverture a réussi. Mais avant de fermer, il doit d'abord déterminer le ticket de la commande. Pour le déterminer, nous devons d'abord sélectionner l'ordre dans la liste des ordres par son index. S'il n'y a qu'un seul ordre ouvert, son index dans la liste sera 0. Par conséquent, s'il n'y a qu'un seul ordre ouvert, nous pouvons le faire sans boucler et vérifier la correspondance du symbole et de la magie. Ce n'est pas très intelligent, mais quand même. Exclusivement à titre d'exemple.

if(OrderSelect(0, SELECT_BY_POS))
if(OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), 30, clrNONE))
Print("Ордер закрыт");
Une telle astuce non documentée dans mql4 peut être utilisée pour fermer un ordre OrderClosePrice() au lieu de Ask ou Bid, et dans ce cas, nous n'avons pas à distinguer les types d'ordre. Il se ferme en tout cas.
 
AlexeyVik:

Ce n'est pas un scénario. C'est juste une commande pour ouvrir un ordre. La fonction OrderSend renvoie le ticket de commande si l'ouverture a réussi. Mais avant de fermer, il doit d'abord déterminer le ticket de la commande. Pour le déterminer, nous devons d'abord sélectionner l'ordre dans la liste des ordres par son index. S'il n'y a qu'un seul ordre ouvert, son index dans la liste sera 0. Par conséquent, s'il n'y a qu'un seul ordre ouvert, nous pouvons le faire sans boucler et vérifier la correspondance du symbole et de la magie. Ce n'est pas très intelligent, mais quand même. Exclusivement à titre d'exemple.

Une telle astuce non documentée dans mql4 peut être utilisée pour fermer un ordre OrderClosePrice() au lieu de Ask ou Bid, et dans ce cas, nous n'avons pas à distinguer les types d'ordre. Elle fermera de toute façon.

Regardez ici, vous l'avez écrit, mais qui sera responsable des "fautes" ? :))))

Il ne comprend pas que c'est un code très incorrect pour travailler dans le monde réel. Eh bien... C'est comme s'il descendait une colline assis dans un tonneau en pensant qu'il est dans une voiture.

J'ai essayé de montrer à l'homme comment le faire correctement, pas comment le faire au hasard... Ehhhhh...

 
Escapee:

Attendez... Comprendre enfin ce dont j'ai besoin...

Voici l'ordre d'ouverture dont j'avais besoin - OrderSend(Symbol(),OP_SELL,0.1,Bid,3,0,0) ; . Et ce script fonctionne.

Maintenant je dois fermer......

Je comprends parfaitement ce dont vous avez besoin. Et j'essaie de vous expliquer comment le faire correctement. Mais vous fermez vos oreilles et ne voulez pas écouter. Je suppose que je dois prendre congé.

À titre d'exemple, vous donnez une commande simple pour envoyer une demande de transaction au serveur. Bien sûr, il vous enverra la demande. Mais les données qu'il contient sont-elles correctes ? Et que rapporte le serveur commercial ?

Et oui : ce n'est pas un scénario. Il s'agit d'une commande mql4

 
Bonsoir, y a-t-il une question, est-il nécessaire de mettre un bloc dans l'Expert Advisor pour travailler avec des erreurs ou le terminal lui-même les surmonte (erreurs telles que le serveur ne répond pas, le prix a changé) ?
 
Pokrov:
Bonsoir, y a-t-il une question, l'Expert Advisor doit-il être équipé d'un bloc d'erreurs ou le terminal lui-même les surmonte-t-il (erreurs telles que le serveur ne répond pas, le prix a changé) ?
Bonne question. И ?
 
Pokrov, vous devez mettre en place un traitement des erreurs si vous voulez que l'EA les surmonte.
 
artmedia70:
Bonne question. И ?
C'était donc la question, il y a un point d'interrogation à la fin, est-ce nécessaire ou facultatif ?
 
artmedia70:

Regardez ici, vous l'avez écrit, mais qui sera responsable des "fautes" ? :))))

Il ne comprend pas que c'est un code très incorrect pour travailler dans le monde réel. Eh bien... C'est comme s'il descendait une colline dans un tonneau en pensant qu'il est dans une voiture.

J'essayais d'apprendre à un homme comment bien faire les choses, pas seulement les faire... Ehhh...

Je vais le prendre. Vous devriez boire moins. :) Bien qu'il y ait un avertissement. Pas alphabétisé, mais quand même. Pour vous donner un exemple.
 
Pokrov:
C'était donc la question, il y a un point d'interrogation à la fin, est-ce nécessaire ou facultatif ?
Si vous écrivez un jouet pour testeur, vous n'êtes pas obligé de le faire. Mais c'est mieux pour l'EA qui travaille. Si l'EA continue de marteler le serveur de courtage avec des commandes erronées ou des modifications d'ordres sans changer les paramètres, la société de courtage peut bloquer l'EA et, par conséquent, les ordres fixés par l'EA deviendront "non surveillés".
 
AlexeyVik:
Si vous écrivez un jouet pour testeur, vous n'êtes pas obligé de le faire. Mais c'est souhaitable pour un EA qui travaille. Si votre EA continue de marteler le serveur avec des commandes erronées ou de modifier les ordres sans changer les paramètres, votre société de courtage bloquera votre EA et, par conséquent, les ordres fixés par votre EA deviendront sans surveillance.
Merci !
Raison: