|
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 |
|
|||
Wie den Preis vor x Sekunden ermitteln?
Servus zusammen,
heute mal wieder ein kniffliges Problem bei dem ich eure Hilfe brauche. Wie kann ich den Preis von vor beispielsweise 10, 20 oder 30 Sekunden ermitteln? Dieser Wert/Buffer sollte im besten Falle laufend aktualisiert werden. Vorab schonmal besten Dank. Grüße Dan |
|
|||
Retrospektive gar nicht, da die kleinste Zeiteinheit 1 Minute ist und immer nur die Peise der vergangenen Kerzen abgefragt werden können.
Das geht also nur indem ein Timer mitläuft, der alle 10, 20 oder 30 Sekunden der Preis in die jeweilige Variable speichert, die dann ggf. Ausgelesen werden kann. traderdoc |
|
|||
Moin Doc,
sowas hab ich mir schon fast gedacht. Der Timer müsste also mit einem "Countdown" auf Basis der CurrentTime arbeiten... Hast du vielleicht ein passendes CodeSnippet für so ein Experiment? Grüße Dan |
|
|||
Habe ich natürlich nicht, aber ich kann ja mal eins aus der Hüfte schießen.
Code:
int timetakt, timenew, timeold, pricetime; double price; . . . . timetakt = 10; //für 10 Sekunden timenew = TimeCurrent(); if (timenew >= timeold + timetakt) { price = Bid; pricetime = timenew; timeold = Timecurrent(); Alert("Bid: ", price, " Uhrzeit :", TimeToStr(pricetime)); } traderdoc |
|
|||
Tausend Dank.
Damit kann ich auf jeden Fall schon mal arbeiten. Dan |
|
|||
Zitat:
dein Code funktioniert absolut einwandfrei und ich konnte damit einen recht nützlichen Indikator zusammenbasteln. Wenn ich diesen Indikator bzw. dessen Buffer mit iCustom auslesen will wird dieser vom EA bei jedem Tick neu initialisiert und der Count beginnt bei 0. Wie lässt sich das verhindern? Wie kann ich den Code direkt in einen EA einfügen der im EachTickMode läuft? Hier hab ich ebenfalls das Problem das er mit jedem Tick bei 0 anfängt. Ich hoffe du kannst mir nochmal weiterhelfen. Besten Dank und Grüße Dan |
|
|||
Na ja, Du mußt natürlich die Deklaration der Variablen in den Teil oberhalb der init()-Funktion legen und nicht!!! in die start()-Funktion.
traderdoc |
|
|||
Danke für deine Hilfe.
Die Deklaration war das eine Problem, der iCustom Aufruf das andere... Zitat:
Buffer1 = iCustom(NULL, 0, "CustomIndi", Para1, Para2, 0, 0); -> funktioniert nicht Die Parameter 1 und 2 waren ganz oben bei den externen Eingaben angesiedelt. Buffer1 = iCustom(NULL, 0, "CustomIndi", 0, 0); -> funktioniert Nun sind die Parameter eben fest im Indikator eingetragen. Sicher nicht die schönste Lösung aber sie tut's erstmal. Grüße Dan |
Lesezeichen |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|