Fermeture des demi-lots. - page 9

 
DomGilberto:
Oui, je viens littéralement de comprendre cela quand j'ai supprimé la boucle for. Ai-je raison de dire que si je suis le numéro de l'OrderTicket à partir du moment où il est sélectionné pour la première fois, une fois que l'OrderClose a fait son travail et qu'il renvoie vrai, alors je pourrais le vérifier avec le numéro de l'OrderTicket car ils seront différents - ce qui rompt la boucle et attend qu'une autre nouvelle commande arrive ?

Je ne suis pas tout à fait sûr de la façon d'écrire cela, mais est-ce que cela va dans le bon sens ?


Vous n'avez pas besoin de sortir de la boucle... à moins que la partie restante de l'ordre ait un nouveau numéro de ticket ? le savez-vous ?

Le problème de la sauvegarde de ces informations dans une variable ou un tableau est que si l'EA s'arrête par erreur ou si MT4 se plante, vous avez perdu vos informations et vous ne pouvez pas reprendre là où vous vous êtes arrêté. Vous pourriez être en mesure de faire quelque chose avec des nombres magiques . . sinon vous devrez devenir désordonné et commencer à sauvegarder les informations dans des fichiers . . .

 

Hmmm... Ok, je viens d'imprimer les détails de l'ordre après l'OrderClose==true..... Les numéros d'OrderTicket sont identiques, depuis le moment où j'ai effectué la transaction jusqu'à la clôture de la moitié de la transaction... Avez-vous une idée de la raison pour laquelle il ne ferme pas la moitié de la position dès que l'offre est >= au prix de sortie ? Il semble aller assez loin, mais il ne semble la fermer que sur un pull back (je fais rapidement un test sur une configuration connue à plusieurs reprises).

2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1: Half Closed Order Details:- Lots Remaining Open: 0.17 Closing Price was: 1.3557 Magic Number is: 1234 Order Ticket Number: 7
2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1: close #7 buy 0.17 EURUSD at 1.34916 sl: 1.35128 tp: 1.36117 at price 1.35566
2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1: Bid >= FirstTarget_Buy - Current Bid: 1.35566 FirstTarget_Buy: 1.35517
2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1: Current Bid: 1.35566 FirstTarget_Buy: 1.35517
2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1: FirstTarget_Buy: 1.35517
2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1: Order Lots Open = 0.33
2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1: Order Ticker Number = 7
2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1: The Lots to close is: 0.17000
2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1: The Lotstep is: 0.01000
2013.08.02 15:50:27     2013.01.31 07:00  trendfishing_play_ground EURUSD,H1:  Checking Buy Order:- Lots to open: 0.33 Entry Price: 1.3492 Buy Stop Loss: 1.3513 Buy Take Profit: 1.3612 Magic Number is: 1234 Order Ticket Number: 7

Si elles ont toutes le même numéro de ticket, comment puis-je travailler avec cela pour arrêter d'essayer de fermer continuellement les moitiés consécutivement ? Je veux juste que la moitié soit fermée une fois...

 
DomGilberto:

Hmmm... Ok, je viens d'imprimer les détails de l'ordre après l'OrderClose==true..... Les numéros d'OrderTicket sont identiques, depuis le moment où j'ai effectué la transaction jusqu'à la clôture de la moitié de la transaction... Avez-vous une idée de la raison pour laquelle il ne ferme pas la moitié de la position dès que l'offre est >= au prix de sortie ? Il semble aller assez loin, mais il ne semble le fermer que sur un pull back (je fais un test rapide sur une configuration connue et répétée).

Pouvez-vous montrer un peu plus le journal, quelle est l'offre d'achat le tick avant la moitié de l'ordre qui va être fermé ? Tout ce que nous pouvons voir à partir de ce que vous avez imprimé est ce que l'offre était lorsque la moitié de l'ordre était sur le point d'être fermé. Quel mode de test de stratégie utilisez-vous ? chaque tick ou les prix d'ouverture ?

 
DomGilberto:


Si elles ont toutes le même numéro de ticket, comment puis-je m'en servir pour ne plus essayer de fermer les moitiés consécutivement ? Je veux juste qu'il ferme la moitié une fois...

Je ne suis pas sûr, ce n'est pas quelque chose auquel j'ai déjà eu à penser. Peut-être quelque chose avec des numéros magiques, un numéro magique bsse lié à l'EA et ensuite 3 chiffres supplémentaires pour les ordres placés ce jour-là, puis regarder dans l'historique des ordres pour voir s'il y a une transaction fermée avec un MN correspondant, ou peut-être regarder OrderOpenTime() de la transaction fermée et la faire correspondre à une transaction ouverte, auquel cas elle a déjà été partiellement fermée... pas sûr, vous devrez réfléchir et expérimenter... à moins que quelqu'un d'autre ait déjà une méthode éprouvée ?
 

Ok - bien, la seule autre option est de placer deux ordres avec deux prix de sortie différents... le seul problème que j'ai avec cela est le suivant :

"if(OpenOrdersThisPair(Symbol())==0)"

Cela ne me laissera placer qu'un seul ordre à la fois... Si je supprime cela, il y aura un nombre illimité de transactions sur le marché pour chaque configuration... J'espère que vous avez de l'expérience sur la façon dont je peux autoriser 2-3-4 ordres sur n'importe quelle idée de set-up isolé ?

Je peux avoir jusqu'à un maximum de 4 sorties par configuration de transaction.

 
DomGilberto:
Ok - bien, la seule autre option est de mettre deux ordres avec deux prix de sortie différents... le seul problème que j'ai avec cela est le suivant :

"if(OpenOrdersThisPair(Symbol())==0)"

Cela ne me permet de passer qu'un seul ordre à la fois... Si je supprime ce paramètre, il y aura un nombre illimité de transactions sur le marché pour chaque configuration... J'espère que vous avez de l'expérience sur la façon dont je peux autoriser 2-3-4 ordres sur n'importe quelle idée de set-up isolé ?
if(OpenOrdersThisPair(Symbol()) < 2)
J'autoriserais un maximum de 2 ordres...
 
RaptorUK:

Pouvez-vous montrer un peu plus le journal de bord ?

s'il vous plaît...
 
RaptorUK:

Pouvez-vous montrer un peu plus le journal, quelle est l'offre d'achat le tick avant que la moitié de l'ordre soit fermée ? Tout ce que nous pouvons voir à partir de ce que vous avez imprimé, c'est ce que l'offre était lorsque la moitié de l'ordre était sur le point d'être fermé. Quel mode de test de stratégie utilisez-vous ? chaque tick ou les prix d'ouverture ?


J'utilise chaque tick. La partie surlignée ci-dessus, comment puis-je la vérifier ? Je ne comprends pas pourquoi, mais parfois tout ne s'imprime pas - pourtant la fonction orderclose fonctionne, mais pas l'impression... C'est vraiment frustrant, car cela me perturbe. Mais peu importe, l'impression est à peu près tout ce que j'ai collé ci-dessus ?

La seule différence, c'est que j'ai aussi une quantité incessante de "OrderModify error 1" - que je n'ai pas encore compris...
 
DomGilberto:

J'utilise chaque tique. La partie surlignée ci-dessus ; comment puis-je vérifier cela ? Je ne comprends pas pourquoi, mais parfois tout ne s'imprime pas - pourtant la fonction orderclose fonctionne, mais pas l'impression... C'est vraiment frustrant, car cela me perturbe. Mais peu importe, l'impression correspond à peu près à ce que j'ai collé ci-dessus ?

Regardez le fichier journal et non pas l'onglet journal, l'onglet manque souvent des choses quand il y a beaucoup d'impressions mais le fichier journal les capture toutes ... .
 
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: The minimum lots are: 0.01000
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: The Lotstep is: 0.01000
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: The Lots to close is: 0.10000
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: Order Ticker Number = 17
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: Order Lots Open = 0.2
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: FirstTarget_Buy: 1.33594
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: Current Bid: 1.35452 FirstTarget_Buy: 1.33594
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: Stop loss value for the order is 1.3555
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: delete #17 sell stop 0.20 EURUSD at 1.34573 sl: 1.35553 tp: 1.32614 ok
16:50:26 2013.02.05 11:00  trendfishing_play_ground EURUSD,H1: open #18 sell stop 0.20 EURUSD at 1.34573 sl: 1.35549 tp: 1.32620 ok
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1: The minimum lots are: 0.01000
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1: The Lotstep is: 0.01000
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1: The Lots to close is: 0.10000
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1: Order Ticker Number = 18
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1: Order Lots Open = 0.2
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1: FirstTarget_Buy: 1.33597
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1: Current Bid: 1.35544 FirstTarget_Buy: 1.33597
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1:  Stop loss value for the order is 1.3555
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1: delete #18 sell stop 0.20 EURUSD at 1.34573 sl: 1.35549 tp: 1.32620 ok
16:50:26 2013.02.05 12:00  trendfishing_play_ground EURUSD,H1: open #19 sell stop 0.20 EURUSD at 1.34573 sl: 1.35549 tp: 1.32621 ok
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1: The minimum lots are: 0.01000
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1: The Lotstep is: 0.01000
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1: The Lots to close is: 0.10000
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1: Order Ticker Number = 19
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1: Order Lots Open = 0.2
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1: FirstTarget_Buy: 1.33597
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1: Current Bid: 1.35421 FirstTarget_Buy: 1.33597
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1:  Stop loss value for the order is 1.3555
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1: delete #19 sell stop 0.20 EURUSD at 1.34573 sl: 1.35549 tp: 1.32621 ok
16:50:27 2013.02.05 13:00  trendfishing_play_ground EURUSD,H1: open #20 sell stop 0.20 EURUSD at 1.34573 sl: 1.35545 tp: 1.32629 ok
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1: The minimum lots are: 0.01000
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1: The Lotstep is: 0.01000
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1: The Lots to close is: 0.10000
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1: Order Ticker Number = 20
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1: Order Lots Open = 0.2
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1: FirstTarget_Buy: 1.33601
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1: Current Bid: 1.35167 FirstTarget_Buy: 1.33601
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1:  Stop loss value for the order is 1.3555
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1: delete #20 sell stop 0.20 EURUSD at 1.34573 sl: 1.35545 tp: 1.32629 ok
16:50:27 2013.02.05 14:00  trendfishing_play_ground EURUSD,H1: open #21 sell stop 0.21 EURUSD at 1.34573 sl: 1.35533 tp: 1.32654 ok
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1: The minimum lots are: 0.01000
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1: The Lotstep is: 0.01000
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1: The Lots to close is: 0.11000
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1: Order Ticker Number = 21
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1: Order Lots Open = 0.21
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1: FirstTarget_Buy: 1.33614
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1: Current Bid: 1.35297 FirstTarget_Buy: 1.33614
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1:  Stop loss value for the order is 1.3553
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1: delete #21 sell stop 0.21 EURUSD at 1.34573 sl: 1.35533 tp: 1.32654 ok
16:50:27 2013.02.05 15:00  trendfishing_play_ground EURUSD,H1: open #22 sell stop 0.21 EURUSD at 1.34573 sl: 1.35525 tp: 1.32669 ok
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: The minimum lots are: 0.01000
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: The Lotstep is: 0.01000
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: The Lots to close is: 0.11000
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: Order Ticker Number = 22
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: Order Lots Open = 0.21
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: FirstTarget_Buy: 1.33621
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: Current Bid: 1.35273 FirstTarget_Buy: 1.33621
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: Stop loss value for the order is 1.3553
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: delete #22 sell stop 0.21 EURUSD at 1.34573 sl: 1.35525 tp: 1.32669 ok
16:50:27 2013.02.05 16:00  trendfishing_play_ground EURUSD,H1: open #23 sell stop 0.21 EURUSD at 1.34573 sl: 1.35517 tp: 1.32686 ok
16:50:27 2013.02.05 17:00  trendfishing_play_ground EURUSD,H1: delete #23 sell stop 0.21 EURUSD at 1.34573 sl: 1.35517 tp: 1.32686 ok