Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 23.03.18
L0rdy L0rdy ist offline
Neues Mitglied
 
Registriert seit: Jan 2018
Beiträge: 14
L0rdy befindet sich auf einem aufstrebenden Ast
Standard if-Abfragen und Co. richig abbrechen

Hallo,
ich berechne mir an zwei Stellen in meinem EA eine Variable "n" aus, die aus Account- und Eingangsparametern bestimmt wird. Bei “n” unter 3 ist es nur eine Frage der Zeit ob der Balance gegen Süden gehen wird. Deswegen für eine Tester-Optimierung bietet es sich ja an bei n<3 abzubrechen um Zeit zu sparen. Nun wie mache ich das ? (in Sachen "return" bin ich nicht so mächtig)

Hier ist die Struktur meines EAs:

PHP-Code:
double n;
void OnInit()
{
    
n=................; // n wird berechnet 1
        
if (n<3)
            {
                
// wenn n unter 3 ist, sollte komplett abgebrochen werden
            
}
}

void OnTick(void)
{
    if(....)
    {
        
// eigentlich ein besserer Platz für "n wird berechnet 2" und if Abfrage    
        
if(...) 
        {
            if(...)
            {
            .....
            }
            else
            {
                
n=................; // n wird berechnet 2
                
if (n<3)
                {
                
// wenn n unter 3 ist, sollte komplett abgebrochen werden d.h. OnTick verlassen
                
}
            }
            ...
            if(...)
            {
            ...
            }
            else
            ...
            return;
        }
    }
    
    for(....)
    {
        
//TrailingStop routine
    
}

für OnInit() gibts ja eine Möglichkeit, die in etwa so aussieht:
PHP-Code:
int OnInit()
{
      
n=................; // n wird berechnet 1
        
if (n<3) {
            return(
INIT_FAILED);
        }

Die Frage ist auch, ob das mit "return(INIT_FAILED);" ein echter Abruch- oder erst eine Fehlerbehandlung ist.



Vielen Dank !