|
Startseite | Registrieren | Hilfe | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
Pivot-Linien über 3 Tage hinweg anzeigen
Hi,
ich möchte mir die Pivotlinien über einen Zeitraum der letzten 3 Tage und gleichzeitig von heute anzeigen lassen. Die Pivotlinien sollen natürlich dauerhaft im Chart bleiben bzw. vielleicht (Resourcengründe) nach 10 Tagen gelöscht werden. Nun will ich nur das Prinzip verstehen, und daher konzentriere ich mich nur auf die Tagespivotlinie. Ich habe massive Probleme mit der Definition und Begrenzung der Linien, zb. von vorgestern 00:00 Uhr bis vorgestern 23:00 Uhr, also nur 23 Stunden. Ich habe zum Linienzeichnen mal OBJ-TREND genommen. PHP-Code:
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
|
|||
Hm.... mir fällt gerade auf.... mit "OBJ_TREND" wird es kaum gehen... da geht die Linie auf der einen Seite ins "Unendliche"...
Was könnte man denn noch nehmen?
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
|
|||
OBJ_TREND ist schon völlig korrekt, nur fehlt bei Dir folgende Zeile:
ObjectSet(objectname, OBJPROP_RAY, false); und dann klappt es auch mit der zeitlichen Begrenzung und der Darstellung der Geraden als Strecke. Code:
ObjectCreate(0,"LINIE",OBJ_TREND,0,StringToTime("00:00"),DPP,StringToTime("23:00"),DPP); Wenn nun die Linie zu diesen Zeiten am gestrigen (i = 1) oder vorgestrigen Tag (i = 2) gezeichnet werden soll, dass muss einfach ein Vielfaches der Tagessekunden jeweils abgezogen werden: Code:
int x = 86400; int i; // mit i = 0 ... n ObjectCreate(0,"LINIE",OBJ_TREND,0,StringToTime("00:00")-i*x,DPP,StringToTime("23:00")-i*x,DPP); traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Oh... Traderdoc... weißt Du, wie lange ich nach diesem Prozedere suchte und wie lange ich rumknobeln musste..? Ich freue mich so sehr... Danke sehr !!!
Soblad es fertig ist, stelle ich den Code hier online...! Boa, das bringt mich jetzt sehr viel weiter..!!!
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
|
|||
Na dann, fasse es als mein spezielles Ostergeschenk für Dich auf.
traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
So, ich habe mal etwas programmiert :-)
Es werden die (klassischen) Pivotpunkte auch brav angezeigt... Aber nur von heute - trotz Schleife!!! Da sitzt man vor dem Metaeditor... dreht hier ein bisschen, und da ein bisschen, verändert dies und das.... und es verändert sich nix Es werden wohl die heutigen Werte angezeigt (Habe ich mit einem bewährten Pivot-Template gecheckt, das ich drübergelegt habe), aber es werden keine Linien für die vorigen 2 bzw. 3 Tage angezeigt. Die Linien der vergangenen Tage werden einfach nicht gezeichnet.... Dies auch wieder nur eine vereinfachte Form, denn ich habe vor, diese Tagesschleife später in einer Wochenschleife für die Wochen-Pivots laufen zu lassen. Aber zuerst muss ich wissen, wie ich die Zeitwerte der X-Achse hinbekomme und wie die Linien der vergangenen Tage gezeichnet werden. Die Profis haben es doch sicher auf einen Blick erkannt, was da faul ist ?!?! PHP-Code:
PHP-Code:
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
|
|||
Offensichtlich muss für jeden Tag, an dem eine Linie gezeichnet werden soll, ein neuer Name für die Linie vergeben werden
Das bedeutet, wenn man die Pivots der vergangenen 3 Tage mit einer for-Schleife durchrechnen lassen will, so muss man bei Zeichnen der Pivot-Linien deren unterschiedliche Namensvergabe berücksichtigen, d.h. Pivot1, Pivot2 usw. Was mich wiederum zu dem zweiten Teil der Frage bringt: Wie füge ich denn einem String (der zwingend erforderlichen Bezeichnung einer Pivotlinie) eine Zählvariable hinzu, so dass aus "Pivot" dann "Pivot1" , Pivot2" usw. wird?!
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
|
|||
Zitat:
Code:
string PivotLevelName="Pivot"; for(int i=1; i<=6; i++) // mal angenommen es sind 6 { string Levelname=( PivotLevelName+IntegerToString(i) ); Print("Levelname=",Levelname); } |
|
|||
Super - Einwandfrei!
Ich habe das Prinzip verstanden und es klappt auch. Nun fängt die Schachtelung an. ABER was ich soooooo nicht bedacht habe: An den Sonntagen zwischen 23:00 Uhr und 00:00 Uhr bildet er mir nun Pivotpunkte. Das sowie das Ergebnis ist natürlich der größte Unsinn. Kann man diese Zeit irgendwie herausfiltern? So "Alles was Sonntag ist" oder "alles, was generell zwischen 23:00 Uhr und 00:00 Uhr liegt". Aufgrund der Länge meiner Pivotpunkte, die sich über den gesamten Tag erstreckt, kann ich sagen, dass sie sich wirklich auf den Zeitraum 0000 - 2300 beziehen und nicht umgekehrt auf den Zeitraum 23:00 - 0000.
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
|
|||
So, nun habe ich mal einen Tages-Pivot programmiert, der die Tagespivotpunkte der vergangenen 6 Tage anzeigen soll. Das war gar nicht sooooo einfach
Nun macht er mir bei den letzten beiden Tagespivotpunkten eine Linie über die letzten beiden Tage, was vermutlich wegen der Osterfeiertage / Monatswechsel geschuldet ist - oder findet jemand den Fehler? Die Linie soll natürlich nur über dem jeweiligen Tag liegen. PHP-Code:
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
Lesezeichen |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|