|
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
SetIndexDrawBegin
Ich habe Probleme mit SetIndexDrawBegin bei einem Indikator.
Die Dok sagt: 1. Setzt die Barnummer, wo die Zeichnung des Indikators anfangen soll, und zwar die Barnummer ab Begin der Daten. 2. Wir zeichnen von links nach rechts (Chartanfang bis aktuelle Bar) 3. Normalerweise wird ein Wert von 0 angenommen, das heißt alle Bars werden gezeichnet. Das bedeutet doch, daß die gemalten Bars in NOtimeseries nummeriert werden (also 0=ChartAnfang bis Bars=CurrentBar). Was sind in "from the data beginning" die "data"? Sind das die ausgerechneten und damit zu zeichnenden Werte oder sind das die im Chart verfügbaren Bars? Egal wie ich versuche, den korrekten Wert für DrawBegin auszurechnen, das Ding baut nur Sch... Kann jemand mir bitte dazu mal ne Hilfe geben. AVT |
|
|||
Zitat:
Ich hatte einen MA zum ersten Test verwendet, mit gleichen Ergebnissen. Danach habe ich einen Indikator versucht anzupassen, bei dem der "Vorlauf" (nicht zeichenbaren Müllwerte) eben nicht so einfach ersichtlich ist; gleichzeitig habe ich als Prüfung in der Berechnung nur diejenigen Mal-Buffer mit Werten belegt, die außerhalb des Vorlaufs sind. Die Idee dahinter war, die Berechnung einfach durchlaufen zu lassen und den Vorlauf nur über DrawBegin einzuschränken. In Deinen Beispielzahlen: data=Bars=1014 LookBackBars=500 (davon sind 14 Müll) NeededBars=14 Begin=LookBackBars+NeededBars=500+14=514 Starte also anstatt bei Bar 14 bei Bar 514 (und zeichne weiter bis zur aktuellen Bar=1014). Das Ergebnis war ok, wenn ich den Vorlauf in der Berechnung rausgenommnen habe; wenn ich aber nur den Vorlauf nur mit SetIndexDrawBegin einschränken wollte, wurde trotzedem der Müll gezeichnet - also sobald der Malbuffer einen Wert hatte, wurde der auch gemalt. Im Moment lasse ich die Berechnungsmethode erst mal drin, die funzt. Vielen Dank für Deine Ausführungen. AVT |
Lesezeichen |
|
|