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
Imprimez vos variables avant et dans les instructions if et découvrez pourquoi.
Ok, merci, je vais faire cela et faire des recherches plus approfondies. J'ai également trouvé ce bout de code qui m'intrigue parce que le SL et le TP sont séparés de l'OrderSend. Je vais examiner cela également.
Bonjour à tous
J'ai résolu la plupart de mes problèmes et l'EA fonctionne bien dans le testeur, mais j'ai toujours des problèmes avec OrdersTotal. En mode Démo, il ouvre parfois les deux ordres Stop en attente, mais la plupart du temps seulement l'achat ou la vente. Je veux que les deux ordres en attente s'ouvrent en même temps (en quelques secondes), mais seulement si aucun autre ordre ou ordre en attente n'est ouvert. Je pense que ce qui se passe, c'est que parfois il ouvre les deux ordres en attente avant d'avoir eu la chance de calculer le nombre d'ordres, et d'autres fois il réalise qu'un ordre en attente a été envoyé, et n'ouvre pas l'autre. Je pensais que si je mettais les ordres entre crochets, il les exécuterait tous les deux lorsque la condition if serait remplie... Je sais aussi maintenant qu'il continuera à ouvrir les ordres en attente lorsque je les supprimerai tant que la dernière bougie sera formée, c'est-à-dire tant que la variable Time correspondra à la bougie Time[0], les ticks n'ayant aucune importance.
Voici ce bout de code :
Alors, y a-t-il une meilleure façon ou une façon plus facile pour moi de faire cela ? Merci.
Bonjour à tous
J'ai résolu la plupart de mes problèmes et l'EA fonctionne bien dans le testeur, mais j'ai toujours des problèmes avec OrdersTotal. En mode Démo, il ouvre parfois les deux ordres Stop en attente, mais la plupart du temps seulement l'achat ou la vente. Je veux que les deux ordres en attente s'ouvrent en même temps (en quelques secondes), mais seulement si aucun autre ordre ou ordre en attente n'est ouvert. Je pense que ce qui se passe, c'est que parfois il ouvre les deux ordres en attente avant d'avoir eu la chance de calculer le nombre d'ordres, et d'autres fois il réalise qu'un ordre en attente a été envoyé, et n'ouvre pas l'autre. Je pensais que si je mettais les ordres entre crochets, il les exécuterait tous les deux lorsque la condition if serait remplie... Je sais aussi maintenant qu'il continuera à ouvrir les ordres en attente lorsque je les supprimerai tant que la dernière bougie sera formée, c'est-à-dire tant que la variable Time correspondra à la bougie Time[0], les ticks n'ayant aucune importance.
Voici ce bout de code :
Alors, y a-t-il une meilleure façon ou une façon plus facile pour moi de faire cela ? Merci.
Vérifiez-vous la valeur de buystop_ticket et sellstop_ticket ? S'il n'y a qu'un seul ouvert, le second ne le sera jamais (sauf si vous supprimez le premier manuellement).
Merci pour la réponse. En fait, les ordres d'arrêt d'achat et de vente s'ouvrent environ 50 % du temps. Les autres 50 % du temps, soit l'achat, soit la vente sont envoyés. Mais j'ai découvert quelque chose. J'ai demandé la dernière erreur et dans les cas où les deux sont envoyés, il n'y a pas d'erreur, mais quand un seul s'ouvre, j'obtiens l'erreur 130 sur celui qui ne s'est pas ouvert. Il semble donc que mes arrêts ne soient pas valides, mais je ne sais pas pourquoi. Voici le code pour SL :
J'ai également ajouté la fonction Print. Est-ce que c'est ce que vous vouliez dire par "Vérifiez-vous la valeur de buystop_ticket et sellstop_ticket ?" ? " ? Elle renvoie deux valeurs à savoir :
2016.03.24 17:11:22.532 News_v10 GBPUSD,M1 : Buystop ticket =-1
2016.03.24 17:11:23.227 News_v10 GBPUSD,M1 : Buystop ticket =49644335
Lorsque les courtiers ECN ont commencé, l'envoi d'ordres échouait lorsque le SL/TP était défini. La plupart ont corrigé ce problème depuis la version 600.
Merci pour la réponse. En fait, les ordres d'arrêt d'achat et de vente s'ouvrent environ 50 % du temps. Les autres 50 % du temps, soit l'achat, soit la vente sont envoyés. Mais j'ai découvert quelque chose. J'ai demandé la dernière erreur et dans les cas où les deux sont envoyés, il n'y a pas d'erreur, mais quand un seul s'ouvre, j'obtiens l'erreur 130 sur celui qui ne s'est pas ouvert. Il semble donc que mes arrêts ne soient pas valides, mais je ne sais pas pourquoi. Voici le code pour SL :
J'ai également ajouté la fonction Print. Est-ce que c'est ce que vous vouliez dire par "Vérifiez-vous la valeur de buystop_ticket et sellstop_ticket ?" ? " ? Elle renvoie deux valeurs à savoir :
2016.03.24 17:11:22.532 News_v10 GBPUSD,M1 : Buystop ticket =-1
2016.03.24 17:11:23.227 News_v10 GBPUSD,M1 : Buystop ticket =49644335
Vous devez ajouter RefreshRates() entre vos 2 OrderSend().