paranteses desequilibrados - página 6

 
TarasBY:

E você também deve aprender a agir racionalmente em paralelo com esta tarefa. O código em ambas as funções mencionadas é idêntico, exceto para uma linha - esta linha filtra por tipo de pedido. Portanto, seria razoável fazer a verificação por uma função. Pelo menos, neste roteiro.

P.S. O aprendizado é difícil, mas a reciclagem é MUITO IMPORTANTE... ;)))


Eu concordo :))
 

Enquanto TarasBY não puder vê-lo - é assim que é para duas funções Kim ;)))) Mas é apenas para entender como organizar parênteses. Mas certamente usarei um da TarasBY. Muito obrigado a ele!

UFFFFF - Eu posso ir e polir alguma coisa. :)

int start()
 { 
//----
     if(!ExistPositions()){

             if(!ExistOrders()){

                  ticket=OrderSend(Symbol(),OP_SELL,0.1,Bid,3,Bid+40*Point,Bid-40*Point,"",magic,0,Red);  
                              }
     
                           }
//----
   return(0);
}
 
liana:

Enquanto TarasBY não puder vê-lo - é assim que é para duas funções Kim ;)))) Mas é apenas para entender como organizar parênteses. Mas certamente usarei um da TarasBY. Muito obrigado a ele!

UFFFFF - Eu posso ir e polir alguma coisa. :)

Em sua variante, o pedido não será aberto enquanto houver pelo menos um pedido no terminal (para qualquer instrumento). Eu não acho que era isso que você queria! :)

Se você ** tem feito alguma coisa*... ;)))

 
int start()
 { 
//----
     if(!ExistPositions(Symbol(), -1, magic)){

             if(!ExistOrders(Symbol(), -1, magic)){

                  ticket=OrderSend(Symbol(),OP_SELL,0.1,Bid,3,Bid+40*Point,Bid-40*Point,"",magic,0,Red);  
                              }
     
                           }
//----
   return(0);
}

Eu fiz, eu fiz.

 

Posso adicionar outro retorno em sua versão?

E outra pergunta - o que significa o ponto de exclamação no início? (!ExistOrders ())) Porque quando o removi por curiosidade - funciona exatamente da mesma forma.

int start()
{ 
//----
    if (!ExistOrders (Symbol(), -1, magic))
    {ticket=OrderSend(Symbol(),OP_SELL,0.1,Bid,3,Bid+20*Point,Bid-40*Point,"",magic,0,Red);}
    else 
    {return(0);}
    
//----
   return(0);
}	
 
liana:


E outra pergunta - o que significa o ponto de exclamação no início? (!ExistOrders ()))


https://docs.mql4.com/ru/basis/operations/bool
 

se(!a) Imprimir("não 'a'");

Mas se o tirarmos, ele imprimirá("'a' "); ?

Isto é, se (!ExistOrders(Símbolo(), -1, magia)) - a ordem não existe,

e se (ExistOrders (Symbol(), -1, magic)) - a ordem existe? É verdade?

 

se você escrever

bool a = false;

if(!a){
   Print("НЕ а");
}else{
   Print("Таки да - а");
}

То есть такая запись равноценна

if(a==false){}
или
if(a!=true){}

Sim

 

Você pode ser mais específico?

if(a){
   Print("а");
if (ExistOrders (Symbol(), -1, magic))
 
liana:

Você pode ser mais específico?

if(true) Alert("истина");
if(!true)Alert("ложь");