unausgewogene Paranthesen - Seite 6

 
TarasBY:

Und Sie sollten auch lernen, parallel zu dieser Aufgabe rational zu handeln. Der Code in den beiden genannten Funktionen ist bis auf EINE Zeile identisch - diese Zeile filtert nach Auftragsart. Daher wäre es sinnvoll, die Prüfung mit einer Funktion durchzuführen. Zumindest in diesem Drehbuch.

P.S. Lernen ist schwierig, aber Umlernen ist SEHR WICHTIG... ;)))


Ich stimme zu :))
 

Solange TarasBY es nicht sehen kann - so ist das bei zwei Kim-Funktionen ;))) Aber es geht nur darum zu verstehen, wie man Klammern anordnet. Aber ich werde sicherlich eine von TarasBY verwenden. Herzlichen Dank an ihn!

UFFFFF - Ich kann gehen und etwas polieren. :)

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:

Solange TarasBY es nicht sehen kann - so ist das bei zwei Kim-Funktionen ;))) Aber es geht nur darum zu verstehen, wie man Klammern anordnet. Aber ich werde sicherlich eine von TarasBY verwenden. Herzlichen Dank an ihn!

UFFFFF - Ich kann gehen und etwas polieren. :)

In Ihrer Variante wird der Auftrag nicht geöffnet, solange mindestens ein Auftrag im Terminal vorhanden ist (für jedes Instrument). Ich glaube nicht, dass du das wolltest! :)

Wenn Sie **überhaupt* etwas getan haben... ;)))

 
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);
}

Ja, das habe ich getan.

 

Kann ich in Ihrer Version eine weitere Rückgabe hinzufügen?

Und noch eine Frage: Was bedeutet das Ausrufezeichen am Anfang? (!ExistOrders ()) Denn als ich sie aus Neugierde entfernte, funktionierte sie genau so.

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:


Und noch eine Frage: Was bedeutet das Ausrufezeichen am Anfang? (!ExistOrders ())


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

if(!a) Print("nicht 'a'");

Aber wenn wir es wegnehmen, wird es Print("'a' "); ?

Das heißt, wenn (!ExistOrders(Symbol(), -1, magic)) - der Auftrag existiert nicht,

aber wenn (ExistOrders (Symbol(), -1, magic)) - der Auftrag existiert? Stimmt das?

 

wenn Sie schreiben

bool a = false;

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

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

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

Ja

 

Können Sie das genauer erläutern?

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

Können Sie das genauer erläutern?

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