Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 910

 

Olá!

Em meu consultor especializado, o castiçal anterior é verificado e, se as condições permitirem, a posição é aberta, se não, não é aberta. O problema é que a posição é aberta antes que o estado da vela anterior seja verificado. Depois vejo a abertura da posição no tronco e depois vejo que ela não deve ser aberta. Como consertá-lo?

 
evillive:

Faltam os parênteses das figuras.

Obrigado, já está tudo resolvido! O problema era mais profundo, meu equívoco sobre o que seria o resultado desta forma de escrever, em geral as expectativas não correspondiam ao resultado, lixava os balcões - tudo agora funciona como eu pensava que funcionaria.
 

Ajuda , por que a EA não está abrindo pedidos durante os testes? (Não faz nada?!) Por favor, ajudem, por favor!!!

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:

Ajuda , por que a EA não está abrindo pedidos durante os testes? (Não faz nada?!) Por favor, ajudem, por favor!!!


Você não pode criar um posto correto?

Não há chamada de função na função Start() para abrir ordens

 
Vinin:

Você não pode criar um posto correto?

Não há chamadas de função no Start() para abrir pedidos

 
Mano, como você acrescenta isso?
 
Viktorline14:
Irmão, como você acrescenta isso?
Sinto pena de sua mãe e seu pai. Eles não lhe ensinaram como se comunicar.
 

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

Sinto muito, eu realmente preciso de ajuda, pois esta é minha primeira experiência com a redação da EA.

Por favor, ajude, por favor

 

Então, eu descobri, sem erros, mas há avisos.

É provavelmente por isso que o testador está cometendo erros

 
Viktorline14:

Então, eu descobri, sem erros, mas há avisos.

Deve ser por isso que o testador está cometendo erros

Rapazes, ajudem por favor!!!