[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 414

 
OlegArH:

Bon après-midi, les amis !

Je m'amuse avec mon premier robot. Mon idée est d'ouvrir un ordre en attente avec un délai d'expiration défini.

Je n'ai pas assez de connaissances pour le mettre en œuvre.

Si vous le voulez bien, pourriez-vous décrire l'exemple d'EA qui, si je le compile, ne s'ouvre qu'un par un, par exemple BuyStop pour 100 min à 50 points du prix actuel SL=50, TP=100 pour eur/usd à n'importe quel délai.

Merci d'avance !

un autre exemple
Dossiers :
temp_3.mq4  4 kb
 
Il ne fonctionne pas, il est juste suspendu là.
 
emotraid:
Ça ne marche pas, ça reste là.

)

l'optimiser.

;)

 
costy_:

Je pensais que c'était assez clair.


Merci ! [Rires]
 
costy_:
un autre exemple
Merci beaucoup ! !!
 

Veuillez expliquer l'opérateur return(-1) ; appelé dans le corps de la fonction start() - que donne-t-il ?

Est-ce que return(0) ; est la même chose ou pas ? Il semble que le résultat ne soit transmis nulle part.

Pourquoi l'écrivent-ils de cette manière dans ce cas ?

int start()
  {
  if(a == b)return(-1);
  
  return(0);
  }
 
fore-x:

Veuillez expliquer l'opérateur return(-1) ; appelé dans le corps de la fonction start() - que donne-t-il ?

Est-ce que return(0) ; est la même chose ou pas ? Le résultat ne semble être transmis nulle part.

Pourquoi l'écrivent-ils de cette façon ?

Écriture void start()

et le retour est inutile ;)

Je ne sais pas pourquoi !

 
costy_:
J'ai le sentiment que tu ne trouveras pas tout seul.

Comment faire pour que toutes les conditions soient vérifiées dans l'ordre : d'abord la condition_1, puis la condition_2, et seulement ensuite la condition_3, et pas comme ça (quelle condition coïncidait, qui n'était pas remplie dans l'ordre) ? Et lorsque toutes les conditions sont remplies dans l'ordre, alors ouvrez un ordre de marché pour vendre. Est-ce que ce sera correct ?

bool Val_max=true;
bool Cl_dn=true;
bool Val_min=true;
void start()
  {
      if(Val_max==true)
         if(условие_1)
         {
           Alert("Значение инд. >= 1.0000 (исп. 1-е усл.)");
           Val_max=false;                                       //заглушка
         }
      if(Cl_dn==true && Val_max==false)
         if(условие_2)
         {
           Alert("1 бар закрылся падением (исп. 2-е усл.)");
           Cl_dn=false;                                         //заглушка
         }
      if(Val_min==true && Val_max==false && Cl_dn==false)
         if(условие_3)
         {
           Alert("Значение инд. <= 0.9980 (исп. 3-е усл.)");
           Val_min=false;                                       //заглушка
         }
      if(Val_max!=true && Cl_dn!=true && Val_min!=true)
         {
           Val_max=true;
           Cl_dn=true;
           Val_min=true;      
         }   
//----
   return(0);
  }
 
fore-x:

Veuillez expliquer l'opérateur return(-1) ; appelé dans le corps de la fonction start() - que donne-t-il ?

Est-ce que return(0) ; est la même chose ou pas ? Il semble que le résultat ne soit transmis nulle part.

Pourquoi l'écrivent-ils de cette façon ?

Une procédure est une fonction dont la valeur de retour n'est pas utilisée.

return est souvent tapé pour le plaisir et peut être jeté sans risque.

Dans l'exemple ci-dessus, la valeur de retour peut être utilisée : Alert(init()) ;

 
kolyango:

Comment faire pour que toutes les conditions soient vérifiées dans l'ordre : d'abord la condition_1, puis la condition_2, et seulement ensuite la condition_3. Et pas comme ça (quelle condition coïncidait, qui n'était pas remplie dans l'ordre) ? Et lorsque toutes les conditions sont remplies dans l'ordre, alors ouvrez un ordre de marché pour vendre. Est-ce correct ?

Oui.
Raison: