[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 67

 
//+------------------------------------------------------
   for (i=0; i<OrdersTotal(); i++)
   {
      OrderSelect(i, SELECT_BY_POS );
      if (OrderSymbol() == Symbol())
      if (OrderMagicNumber() == 1000 && OrderType() == OP_BUY  && Bid-OrderOpenPrice() > 30*Point)
            OrderModify(OrderTicket(), OrderOpenPrice(), Bid-15*Point, OrderTakeProfit(), 0);
      if (OrderMagicNumber() == 2000 && OrderType() == OP_SELL && OrderOpenPrice()-Ask > 30*Point)
            OrderModify(OrderTicket(), OrderOpenPrice(), Ask+15*Point, OrderTakeProfit(), 0);
   }

   return(0);
//+------------------------------------------------------
 
MaxZ:
a oublié de vérifier que le SL ne peut être déplacé que d'un seul côté ;)
 
ilunga:
a oublié de vérifier que SL ne peut être déplacé que dans une seule direction ;)

Et que ça bouge vers les deux ! :)))))

Un exemple de la façon dont un code énorme et difficile à lire peut être optimisé en dix lignes...

Bien que :

//+------------------------------------------------------
   for (i=0; i<OrdersTotal(); i++)
   {
      OrderSelect(i, SELECT_BY_POS );
      if (OrderSymbol() == Symbol())
      if (OrderMagicNumber() == 1000 && OrderType() == OP_BUY  && Bid-OrderOpenPrice() > 30*Point && Bid-OrderStopLoss() > 15*Point)
            OrderModify(OrderTicket(), OrderOpenPrice(), Bid-15*Point, OrderTakeProfit(), 0);
      if (OrderMagicNumber() == 2000 && OrderType() == OP_SELL && OrderOpenPrice()-Ask > 30*Point && OrderStopLoss()-Ask > 15*Point)
            OrderModify(OrderTicket(), OrderOpenPrice(), Ask+15*Point, OrderTakeProfit(), 0);
   }

   return(0);
//+------------------------------------------------------

p.s. : Je n'utiliserais jamais un tel Tralling, mais il correspond à la logique de Dimka-novitsek.

 
Dimka-novitsek:
Bonjour ! Je ne comprends pas quelque chose. J'ai décidé d'ajouter un stop suiveur à mon EA, mais il continue à afficher l'erreur 130. Je ne comprends rien, et hier je ne pouvais pas non plus.

Votre EA ouvre-t-il plus d'une position d'achat ou plus d'une position de vente ?
 
Merci !
 
Oui, il y a beaucoup de positions, mais ce sont des ordres en attente, des arrêts d'achat et de vente. Lorsque le prix franchit l'ordre, il est déclenché, puis le prix passe encore 30 pips, alors la condition est déclenchée
f (price-OrderOpenPrice( )>30*Point)
 

Afin d'empêcher le stop de revenir en arrière, j'ai introduit une variable, en la déclarant au-dessus du début JUNpomnim, et la variable JUN est la différence entre le prix et le point d'ouverture de l'ordre.

Je vais regarder le code affiché ici.

Merci !!!!

Le code est cool, je l'aime beaucoup comme exemple. Bien sûr, je l'essaie tout de suite. Mais la modification n'a pas lieu.

 
Maintenant, je vais voir l'erreur d'une manière ou d'une autre.
 
Reporté :
Timoxa75 11.08.2011 13:45

Je m'appelle Igor, je suis nouveau ici et je demande de l'aide.

Je travaille avec l'EA ilan = 1.6 et mis 19 voici la question. j'ai une bonne expérience de travail sur la démo et tout semble parfait, je retourne à la rentabilité, mais je veux le vérifier pour le test mais je ne l'ai pas mis au test ni sur la démo ni sur le site réel. J'ai un gros drawdown et je veux fermer l'ordre mais j'ai reçu un message disant que les transactions sont fermées.

 
Modifie, mais pas chaque ordre fermé sur le profit, mais le septième, le seizième, le dix-neuvième, le vingt-quatrième, le trente-deuxième - quand il veut !!!
Raison: