Hallo,
irgendwie bekomme ich es nicht hin, dass der ST um z.B. 07:00 Uhr beginnt.
"Überspringen auf..." funktioniert nicht, und in den Einstellungen kann ich nur ein Datum eintragen. Es wird also immer um 00:00 Uhr begonnen.
Kann man das irgendwo einstellen?
Gruß,
Markus
Da hab ich ein Tool programmiert, denn das brauch ich auch.
Habe es auch dokumentiert weil ich es in der Codebase veröffentlichen wollte.
Ist in 2 Varianten programmiert. OOP und konventionell. OOP ist blos ein Beispiel wie man es auch machen kann.
Viel Erfolg damit.
Tester auf "Full Speed" schalten, beim Debugbreak() Geschwindigkeit reduzieren.
//+------------------------------------------------------------------+ //| StopAtDate.mqh | //| Copyright © 2018 Ing. Otto Pauser | //| https://www.mql5.com/de/users/kronenchakra | //+------------------------------------------------------------------+ /* Klasse um den Metatester an einem bestimmten Datum, zu einer bestimmten Uhrzeit im visuellen Mode anzuhalten. Die Funktion hält nur ein einziges mal an! Verwendung OOP Variante: ------------------------ 1.) mqh einbinden #include <Tester\StopAtDate.mqh> 2.)Einsatz in der OnTick() void OnTick() { // Code vorher if(StopAtDate.Check("2018.01.17", "20:19")) // prüfen der Zeit DebugBreak(); // hier hält das Programm an // Code nachher } Verwendung konventionelle Variante: ----------------------------------- 1.) mqh einbinden #include <Tester\StopAtDate.mqh> 2.)Einsatz in der OnTick() void OnTick() { // Code vorher if(WaitAtDate("2018.01.17", "20:19")) // prüfen der Zeit DebugBreak(); // hier hält das Programm an // Code nachher } */ //+------------------------------------------------------------------+ //| Definition | //+------------------------------------------------------------------+ class CStopAtDate { private: bool triggered; // flag triggerTime erreicht datetime triggerTime; // public: CStopAtDate(void); // Konstructor. Initialisierung von Variablen etc. ~CStopAtDate(void) {}; // Destructor. Muss vorhanden sein, falls Konstruktor definiert bool Check(string aDate, string aTime); }; CStopAtDate StopAtDate; // Instanz deklarieren //+------------------------------------------------------------------+ //| Implementation | //+------------------------------------------------------------------+ void CStopAtDate::CStopAtDate(void) { triggered = false; triggerTime = NULL; } bool CStopAtDate::Check(string aDate, string aTime) { if(triggered) // Zeit erreicht ? return(false); // ja, raus hier und nicht mehr anhalten if(triggerTime==NULL) // triggerTime noch nicht berechnet triggerTime = StringToTime(aDate+" "+aTime); triggered=TimeCurrent()>=triggerTime; // Zeit mit Zielzeit vergleichen return(triggered); // false if noch nicht erreicht } //+------------------------------------------------------------------+ //| konventionell programmiert | //+------------------------------------------------------------------+ bool WaitAtDate(string aDate, string aTime) { static bool triggered = false; static datetime triggerTime = NULL; if(triggered) // Zeit erreicht ? return(false); // ja, raus hier und nicht mehr anhalten if(triggerTime==NULL) // triggerTime noch nicht berechnet triggerTime = StringToTime(aDate+" "+aTime); triggered=TimeCurrent()>=triggerTime; // Zeit mit Zielzeit vergleichen return(triggered); // false if noch nicht erreicht }
Wau, danke für den Code!!!
Werde es testen.
Wundert mich, das es nicht in MT5 drin ist...
Hallo,
irgendwie bekomme ich es nicht hin, dass der ST um z.B. 07:00 Uhr beginnt.
"Überspringen auf..." funktioniert nicht, und in den Einstellungen kann ich nur ein Datum eintragen. Es wird also immer um 00:00 Uhr begonnen.
Kann man das irgendwo einstellen?
Gruß,
Markus
Doch das funktioniert ...siehe Bild
In die Uhrzeit klicken bis die blau wird und dann die zahl eingeben.
@Cristian: Also bei mir funktioniert das mit dem Zeit eingeben NICHT.
Der Tester startet immer bei 00:00 und ist auch mit 'Skip To' nicht dazu zu überreden zu einer anderen Uhrzeit zu beginnen.
PS: Ein interessanter Ausbruch im EURUSD ist 2018.01.17 20:10
ja, das stimmt zwar, hat aber bei mir keinen Effekt außer das der ST hängt.
Ich glaub da gibt es Missverständnisse.
@Otto Ja es stimmt ...ein Start um 7 Uhr ist nicht möglich
"Überspringen" bedeutet das er "vorspult" ....aber im Hintergrund trotzdem die Trades ausführt.
@markm Überspringen funktioniert korrekt bedeutet aber nicht das er zu einer bestimmten Uhrzeit startet. Siehe oben
Also bleibt nur das Schibsel von Otto
Ja, blau wird's, ändern kann ich's, aber er springt nicht zur Uhrzeit.
Kann das am Broker liegen? Kann ich mir eigentlich nicht vorstellen.
Ich starte den Tester gerne aus dem Metaeditor mit Ctrl+F5 (blauer button) da kann man mit 'Tools->Options->Tab Debug' den Tester voreinstellen.
Aber egal ob mit Debug- oder Finaler-Version, es geht nicht.
Grüße, Otto
Otto lies noch mal meinen Post oben.
Die Funktion ist falsch übersetzt.
Es muss "vorspulen" heißen.
Starten tut er immer bei 00:00 des eingestellten Tages.
Ok, danke, kenn mich soweit aus, muss also weiterhin mein Schnipsel verwenden, bin aber damit zufrieden.
Ich verwende die englische Version, da mir bei diversen Übersetzungen, die oft unverständlich sind, speziell in der Doku, schlecht wird.
LG, Otto

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Hallo,
irgendwie bekomme ich es nicht hin, dass der ST um z.B. 07:00 Uhr beginnt.
"Überspringen auf..." funktioniert nicht, und in den Einstellungen kann ich nur ein Datum eintragen. Es wird also immer um 00:00 Uhr begonnen.
Kann man das irgendwo einstellen?
Gruß,
Markus