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 !