[ARCHIVE]Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 5. - page 361

 

Que signifie "optimiser" ? Avec le robot dans le testeur, optimisez.

Pouvez-vous me dire ce que "(" - types incompatibles C:\Documents and Settings\User\My Documents\FxClub\TeleTRADE\experts\Constructor.mq4 (68, 39)
relative return(errorcomment); ?

 
lottamer:
comment optimiser un paramètre s'il se trouve dans une fonction utilisateur ?

Mettez-le en externe
 

J'essaie de compiler le code, qui a été gentiment suggéré par FAQ.

Mais le compilateur résiste et demande un point-virgule après l'opérateur d'affectation (surligné en jaune).

'bool' - point-virgule attendu C:\Program Files\Alpari NZ MT4\experts\GRAAL-1.mq4 (5, 3)

Mais je les ai placés sur .... et il demande toujours, demande, demande...... et demande.....

Dites-moi ce qu'il veut dire ?

MERCI.

  int start()
  
  bool have = true ;
        
  for(int i=0;i<10;i++)
  {

   if(Low[i]<=Low[i+1])
   {have=false; 
   break;} 

} 

if(have == true )
{

OrderSend(Symbol(),OP_SELL,0.1,Bid,1,Ask+1500*Point,Ask-1510*Point,"jfh",123 );// действия если условие соблюдено 

}
else
{

 return(0);
}
 

Je suis tombé sur ceci dans l'un des codes :

if (StringSubstr(AccountCurrency(), 0, 3) == "JPY") 
    {
      ld_24 = MarketInfo("USDJPY" + StringSubstr(Symb, 6), MODE_BID);
      if (ld_24 > 0.1) ld_16 = ld_24;
      else ld_16 = 82;
    }

Pouvez-vous me dire à quoi cela sert ? - Je suppose que, puisque la devise du compte est mentionnée, il devrait y avoir un facteur de conversion dans l'autre devise. Mais... pourquoi est-il fixé ? - De quoi ce coefficient dépend-il ? - Dans ce cas, le nombre est 82.

Et cette ligne semble intéressante - sa signification, je ne la comprends pas du tout :

MarketInfo("USDJPY" + StringSubstr(Symb, 6), MODE_BID)

parce que si vous ajoutez "EURUSD" à "USDJPY", par exemple, mais pour la 6ème lettre, vous obtenez zéro - alors pourquoi l'ajouter tout court ? Hmmm...

C'est du charabia pour moi, mais pour l'expérience, j'aimerais comprendre le principe de la conversion d'une monnaie à une autre. Et je pense que si les gens l'utilisent (dans ma pratique, je n'ai pas de comptes non-dollars), ce n'est pas par stupidité. Cela signifie que cela a du sens.

Merci pour cette précision ! Je pense que ce sera intéressant, pas seulement pour moi. : ))

 

Bonjour. J'ai écrit un EA simple (j'essaie de l'apprendre moi-même). Le robot n'ouvre des transactions que pour vendre, mais ne veut pas acheter. Je comprends que je n'ai pas épelé correctement les conditions d'achat ou que je ne les ai pas divisées correctement. Je demande de l'aide. C'est ici :

extern int tp=100 ;

extern int sl=100 ;

extern int H=14 ;

extern int M=00 ;

double ma1, ma2 ;

int start()

{

ma1=iMA (NULL,0,18,0,MODE_SMA,PRICE_CLOSE,0) ;

ma2=iMA (NULL,0,36,0,MODE_SMA,PRICE_CLOSE,0) ;

si (OrdersTotal ()==0 && iStochastic (NULL,0,50,30,3,0,1,MODE_MAIN,4)<iStochastic (NULL,0,50,30,3,0,1,MODE_SIGNAL,4) && ma1<ma2)

OrderSend ("EURUSD", OP_SELL,0.1,Bid,0,Ask+sl*Point,Ask-tp*Point,",123,Red) ;

si (OrdersTotal ()==0 && iStochastic (NULL,0,50,30,3,0,1,MODE_MAIN,4)>iStochastic (NULL,0,50,30,3,0,1,MODE_SIGNAL,4) && ma1>ma2)

OrderSend ("EURUSD", OP_BUY,0.1,Ask,0,Bid+sl*Point,Bid-tp*Point,",123,Red) ;

}

retour (0) ;

 
r772ra:

Mettez-le en externe


Comment faire ?

La fonction modifie l'ordre en fixant des stops et des takei. Il s'agit ici de les optimiser.

 
solnce600:

J'essaie de compiler le code, qui a été gentiment suggéré par FAQ.

Mais le compilateur résiste et demande un point-virgule après l'opérateur d'affectation (surligné en jaune).

'bool' - point-virgule attendu C:\Program Files\Alpari NZ MT4\experts\GRAAL-1.mq4 (5, 3)

Mais je les ai placés sur .... et il demande toujours, demande, demande...... et demande.....

Dites-moi ce qu'il veut dire ?

MERCI.

Ou bien, le point-virgule juste au-dessus du code n'a pas été mis ailleurs. Le compilateur dit juste qu'il manque quelque chose jusqu'à ce point.

Et ce code semble avoir toute la ponctuation correcte.

 
Chiripaha:

Ou bien, il manque un point-virgule quelque part dans le code. Le compilateur dit simplement qu'il manque un point-virgule quelque part jusqu'à ce point.

Mais ce code semble avoir toute la ponctuation correcte.


Et au-dessus, il n'y a que le START et rien d'autre.
  int start()
  
  bool have = true;
  {
  for(int i=0;i<10;i++)
  {

   if(Low[i]<=Low[i+1])
   {
   have=false; 
   break;
   } 

} 

if(have )
{

OrderSend(Symbol(),OP_SELL,0.1,Bid,1,Ask+1500*Point,Ask-1510*Point,"jfh",123 );// действия если условие соблюдено 

}
else
{

 return(0);
}
 
lottamer:


Comment cela peut-il être fait ?

la fonction modifie l'ordre en fixant des stops et des reprises. il faut donc les optimiser.


Eh bien, exactement dans le code de Pr0t0tip (enfin, et le surnom - je suis fatigué de le retaper : )) ) Ces variables extern int sl=100 ; (etc.) sont mappées. Il faut donc déclarer une variable, puis elle apparaîtra dans les paramètres du hibou, puis sa valeur pourra être modifiée et optimisée.
 
Hm, quelqu'un peut m'aider ?
Raison: