Zitat:
Zitat von traderdoc
Is klar, den kann man auch nicht verstehen, wenn nicht der Rest des Codes geliefert wird.
In welcher Funktion steht
returnBars = (TimeFrame=="returnBars"); if(returnBars) return(0);
calculateValue = (TimeFrame=="calculateValue"); if(calculateValue) return(0);
timeFrame = stringToTimeFrame(TimeFrame);
"returnBars" bzw. "calculateValue" werden sicher nicht der Variablen TimeFrame zugewiesen.
Im Endeffekt soll aus der Funktion stringToTimeFrame() das Ergebnis generiert werden, das größerer oder das aktuelle TimeFrame zurückzugeben.
traderdoc
|
Danke für Deine Antwort, traderdoc.
Ich dachte, das wäre aus der Code-Kopie ersichtlich: das sind die ersten Zeilen in der "int init()" Funktion, mit anderen Worten, so beginnt das, was wir jetzt als Anfang der Funktion "int OnInit()" setzen würden - davor stehen nur interne, globale Variablen. Danach wird im ganzen Code nur noch mit den returnBars, calculateValue und timeFrame rumhantiert, darum will/muß ich verstehen, was diese ersten Zeilen in init() eigentlich sollen
(Daß die stringToTimeFrame Funktion solche Angaben wie "M1" in die dazughörige Minuteneinheit umwandelt, ist mir schon klar.)
Also um mal anzufangen:
returnBars = (TimeFrame=="returnBars"); heißt,
die bool Variable "returnBars" ist true, wenn die (extern string) TimeFrame "returnBars" lautet und false wenn sie anders lautet.
Und wenn sie true ist, dann wird init() als Erfolg beendet ?? (wenn ich mich recht erinnere, hieß return(0), bei init() alles ok).
So jedenfalls meine Lesart - und die daraus resultierenden Probleme.
Ich hoffe, das ist jetzt klarer. AVT