Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 612
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
J'ai écrit un code qui, lorsqu'un ordre ferme tous les autres ordres en attente, mais le problème est que j'ai écrit 4 ordres 2, 3, 4, 5. Ainsi, lorsque les prochains ordres en attente 6, 7, 8, etc. sont ouverts, ils ne doivent pas être fermés. Les nombres d'ordres surlignés en rouge doivent être changés en ordres que tous les ordres en attente seront fermés.
void start(){
//----
double Take1 = Ask+20 *Point ;
double Take2 = Ask+0 *Point ;
double Take3 = Ask-20 *Point ;
double Take4 = Ask-40 *Point ;
double Take5 = Ask-60 *Point ;
double Stop = Bid-StopLoss *Point ;
si(OrdersTotal()==0){
OrderSend(Symbol(),0,0.01,Ask,30,Stop,Take1,",0,0,CLR_NONE) ;
OrderSend(Symbol(),2,0.02,Ask-20*Point,30,Stop,Take2,"",0,0,CLR_NONE) ;
OrderSend(Symbol(),2,0.04,Ask-40*Point,30,Stop,Take3,",0,0,CLR_NONE) ;
OrderSend(Symbol(),2,0.08,Ask-60*Point,30,Stop,Take4,",0,0,CLR_NONE) ;
OrderSend(Symbol(),2,0.16,Ask-80*Point,30,Stop,Take5,"",0,0,CLR_NONE) ;
}
si(OrdersTotal()==4)
{
OrdreSuppression(2) ;
}
si(OrdersTotal()==3)
{
OrdreSuppression(3) ;
}
si(OrdersTotal()==2)
{
OrdreSuppression(4) ;
}
si(OrdersTotal()==1)
{
OrdreSuppression(5) ;
retour(0) ;
}
J'ai écrit un code qui, lorsqu'un ordre ferme tous les autres ordres en attente, mais le problème est que j'ai écrit 4 ordres 2, 3, 4, 5. Ainsi, lorsque les prochains ordres en attente 6, 7, 8, etc. sont ouverts, ils ne doivent pas être fermés. Les numéros des ordres marqués en rouge doivent être changés en ordres pour lesquels tous les ordres en attente seront fermés.
Tout d'abord, nous vérifions dans la boucle si la position a été récemment fermée ou non, pour laquelle nous aurons besoin de OrdersHistoryTotal. Où nous vérifions l'heure de fermeture de la position OrderCloseTime, si elle est supérieure à la dernière dans la variable, alors nous bouclons sur tous les OrdersTotal ouverts. Et fermez-les.
P.S. Insérez le code en utilisant Alt+S ou la touche
Par exemple, ceci
Voici la condition if(OrdersTotal()==0). Mais comment écrire la condition s'il y a zéro baie?
Si (OP_BUY==0)
Si (OP_BUY==0)