[ARQUIVO]Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por ela. Não posso ir a lugar nenhum sem você - 5. - página 53

 
sergeev:


sim. chama-se recursividade.






Obrigado feiticeiro, vou experimentar. Ainda não sou um feiticeiro e estou apenas aprendendo.
 
tpg_k156:
Boa tarde. Você sabe se é possível enviar a execução do código da linha 35 para a linha 18 (linhas, por exemplo) com as ferramentas padrão mql4. Uma espécie de pulo no código.

O operador de laço é destinado a "pular para trás".
Uma declaração condicional é projetada para "pular" para frente.
 
Boa tarde, você poderia aconselhar como fazer um cheque para que a EA não possa fazer pedidos todas as sextas-feiras depois das 18 horas?
 
first_may:
Boa tarde, você poderia aconselhar como fazer um cheque para que a EA não possa fazer pedidos todas as sextas-feiras depois das 18 horas?
Você poderia colocar uma construção semelhante no início da função Start.
//---не давать коду советника работать в пятницу с 18-00 по серверному времени 
   if(DayOfWeek()==5 && Hour()>=18 && Minute()>0){
      
      return(0);  
   } 
 
granit77:
Você pode colocar uma construção semelhante no início da função Start.




Obrigado
 
Uma matriz (milhares de elementos) é definida localmente em deinit().
O que acontece quando o MT4 termina - esses dados ficam na memória ou são completamente apagados?
Não estou interessado nos dados em si, mas no consumo de memória.

A eliminação de matrizes definidas globalmente levará à liberação da memória?
(durante as otimizações, por exemplo).

Obrigado!
 
sim
 
Eu escreveriaHora()>=18e jogaria fora as atas ao todo.
 

Em Inite, tenho-o assim:

int signal[4] = {1, 2, 3, 4};

Aqui está a função:

//+-------------------------------------------------------------------------------------+
//| Получение общего сигнала на вход                                                    |
//+-------------------------------------------------------------------------------------+
int GetGeneralSignal()
{
   //int signal[4] = {1, 2, 3, 4};
   
   for(int i=0; i<4; i++)
  {
    if(GetStateMa(signal[i]) == MA_TALKING_LONG && IsRebound() == true)
      return(SIGNAL_BUY);
    
    if(GetStateMa(signal[i]) == MA_TALKING_SHORT && IsRebound() == true)
      return(SIGNAL_SELL);
  }
  
  return(SIGNAL_NO);
}

Surge um erro durante a compilação:

'signal' - incompatible types   E:\Insall'd soft's\Forex\Alpari NZ MT4\experts\Base150.mq4 (146, 19)
'signal' - incompatible types   E:\Insall'd soft's\Forex\Alpari NZ MT4\experts\Base150.mq4 (149, 19)
2 ошибок, 0 предупреждений      

Eu não entendo o que ele não gosta. A matriz no init já está declarada, o tipo de int... Está correto... O que há de errado com isso?

 
hoz:

Em Inite, tenho-o assim:

Aqui está a função:

Surge um erro durante a compilação:

Eu não entendo o que ele não gosta. A matriz no init já está declarada, o tipo de int... Está correto... O que há de errado com isso?


int signal[] = {1, 2, 3, 4};

int init(){

}

Considere a visibilidade de variáveis e matrizes
Razão: