Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 910

 

Bonjour !

Dans mon Expert Advisor, le chandelier précédent est vérifié et si les conditions le permettent, la position est ouverte, sinon, elle ne l'est pas. Le problème est que la position est ouverte avant que la condition de la bougie précédente ne soit vérifiée. Ensuite, je vois la position s'ouvrir dans le journal, puis je vois qu'elle ne devrait pas être ouverte. Comment le réparer ?

 
evillive:

Les crochets du chiffre sont manquants.

Merci, c'est réglé ! Le problème était plus profond, mon incompréhension de ce que serait le résultat de cette façon d'écrire, en général les attentes ne correspondaient pas au résultat, les compteurs étaient foutus - tout fonctionne comme je le pensais.
 

Aide, pourquoi l'EA n'ouvre-t-il pas d'ordres pendant le test ? (Ne fait rien ?) S'il vous plaît aidez, s'il vous plaît !!!

extern double    OrderValue =  0.01;         
extern int       Up         =  70;
extern int       Dn         =  30;
extern int       rrr        =   5;
extern int       S1_period  =   5;
extern int       S1_slowing =   3;
extern double    TP         =  30;
extern double    SL         =  30;

double    S1a          = 0;
double    S1b          = 0;
      
double MyOrderStateB;
double MyOrderStateS;

int    OpenOrderB      ;   
int    OpenOrderS      ;   

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  
   {
    if (Digits == 3 || Digits == 5)
     {
       TP *=10;
       SL  *=10;
      
     }
  
  
  
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----

   S1a = NormalizeDouble(iStochastic(NULL, 0, S1_period, 3, S1_slowing, MODE_SMA, 1, MODE_MAIN, 1), 0);
   S1b = NormalizeDouble(iStochastic(NULL, 0, S1_period, 3, S1_slowing, MODE_SMA, 1, MODE_SIGNAL, 1), 0);
   
   if(MyOrderStateB == 1)Sleep(3000);
    else MyOrderStateB = 0;
   if(MyOrderStateS == 1)Sleep(3000);
    else MyOrderStateS = 0;
   
//----
   return(0);
  }
//+------------------------------------------------------------------+

void GetBuy(){
     
   if(S1a == S1b && S1a<20.0000 && S1b<20.0000 )
 {OrderSend(Symbol(), OP_BUY, OrderValue, NormalizeDouble(Ask, Digits), 3, SL, TP, NULL, 0, 0,clrBlue);
     MyOrderStateB = 1; }
   else Sleep(2);
}
void GetSell(){
      
   if(S1a == S1b && S1a>80.0000 && S1b>80.0000 )

    {OrderSend(Symbol(), OP_SELL, OrderValue, NormalizeDouble(Bid, Digits), 3, SL, TP, NULL, 0, 0,clrRed);
      MyOrderStateS = 1; }    
       else Sleep(2);
   } 

 
Viktorline14:

Aide, pourquoi l'EA n'ouvre-t-il pas d'ordres pendant le test ? (Ne fait rien ?) S'il vous plaît aidez, s'il vous plaît !!!


Ne pouvez-vous pas créer un poste correct ?

Il n'y a pas d'appel de fonction dans la fonction Start() pour ouvrir les ordres.

 
Vinin:

Ne pouvez-vous pas créer un poste correct ?

Il n'y a pas d'appel de fonction dans Start() pour ouvrir des ordres.

 
Mec, comment tu ajoutes ça ?
 
Viktorline14:
Mon frère, comment ajoutez-vous ceci ?
Je suis désolé pour ton père et ta mère. Ils ne vous ont pas appris à communiquer.
 

Vinin:
Жалко мне твоих папу и маму. Не научили культуре общения

Je suis désolé, j'ai vraiment besoin d'aide car c'est ma première expérience en matière d'écriture d'EE.

Aidez-nous s'il vous plaît

 

J'ai donc trouvé, pas d'erreurs, mais des avertissements.

Cela doit être la raison pour laquelle le testeur émet des erreurs.

 
Viktorline14:

J'ai donc trouvé, pas d'erreur, mais des avertissements.

Cela doit être la raison pour laquelle le testeur émet des erreurs.

Les gars, à l'aide s'il vous plaît !!!