Strategietester: Springen zu bspw. 00:16:40; also zu einer bestimmten Sekunde vorspulen oder wenigstens Minute

 

Hallo super MQL5-Supportteam,

klappt das irgendwo & irgendwie? Ich sehe es zwar dieses "Überspringen auf", aber das tut's nicht in Kombination mit dem STRG-F5 step-by-step debugging;
oder mache ich nur mal wieder etwas falsch? Also ich tippe gerade immer ca. 1000x auf F5 um an die Stelle zu kommen, wo ich hin muss.
Man kann ja als Zeitrahmen des Testers nur Tage angeben, keine Stunden und Minuten.

Vielen Dank & Grüße,
Christian

 

Mach doch einfach

if (TimeCurrent()> D'2020.04.15 12:00') DebugBrteak();
 
Carl Schreiber:

Mach doch einfach

=) danke Dir

 
Carl Schreiber:

Mach doch einfach

Ich stelle mich leider wieder dumm an.. wo platziere ich den DebugBreak, OnTick, OnInit? Klappt beides nicht.. ich müsste wohl hierfür alle anderen DebugBreaks rausnehmen, das

ist ja auch nicht, was ich will..

Ich lese gerade:
   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

   }


.. also in OnTick.. ich teste das gerade..


Ja, das funktioniert nur, wenn ich alle anderen Breaks rausnehme.. das hilft ja nicht, die brauche ich doch zum Debuggen..


Ok, erst dorthin laufen lassen, dann wieder meine anderen Breaks im Metaeditor reinklicken, bisskes doof und man fragt sich, wieso man im ST nicht einfach hinspulen kann.. aber man muss sich halt iwie helfen..

Danke für Deinen Code!

VG

 

Das funktioniert auf jeden Fall.

Auch mit anderen Breakpoints. Egal ob gesetzt oder mit DebugBreak().

Das muss in die OnTick() weil das der Taktgeber des EAs ist.


Wenn er andere BrekPoints anläuft muss du die Bedingung anpassen...logisch oder '?

 
Vielleicht hilft Dir dieser Artikel: https://www.mql5.com/de/articles/654
Zur Fehlerbehebung von MQL5-Programmen (Debugging)
Zur Fehlerbehebung von MQL5-Programmen (Debugging)
  • www.mql5.com
Dieser Artikel richtet sich primär an Programmierer, die die Sprache zwar bereits gelernt haben, die allerdings noch keine Meister ihres Fachs sind. Dabei geht der Artikel auf die wichtigste Elemente ein, mit denen sich Entwickler auseinandersetzen müssen, wenn sie ein Programm debuggen wollen. Was also verstehen wir unter Fehlerbehebung...
 
Christian:

Das funktioniert auf jeden Fall.

Auch mit anderen Breakpoints. Egal ob gesetzt oder mit DebugBreak().

Das muss in die OnTick() weil das der Taktgeber des EAs ist.

Wenn er andere BrekPoints anläuft muss du die Bedingung anpassen...logisch oder '?


Wenn ich Bedingungen bei jedem Tick abfrage, wird dort jeden Tick gehalten, bis ich endlich ein paar Stunden weiter bin. Von daher müssen zunächst alle BreakPoints raus, sonst springt der Tester da nicht hin.

OnTick ist klar, ja, danke.

Meine Bedingungen müssen jeden Tick geprüft werden, also habe ich keine Wahl.

Die Grundlagen für Tests in MetaTrader 5
Die Grundlagen für Tests in MetaTrader 5
  • www.mql5.com
Die Vorstellung des automatischen Handels ist sehr reizvoll, da ein Handels-Roboter ununterbrochen arbeiten kann - 24 Stunden pro Tag und 7 Tage die Woche. Ein Roboter wird niemals müde, unsicher oder verschreckt, da er psychologische Probleme schlicht weg nicht kennt. Ihm genügt es, wenn die Handelsregeln ausreichend formalisiert und in...
 
lindomatic:

Wenn ich Bedingungen bei jedem Tick abfrage, wird dort jeden Tick gehalten, bis ich endlich ein paar Stunden weiter bin. Von daher müssen zunächst alle BreakPoints raus, sonst springt der Tester da nicht hin.

OnTick ist klar, ja, danke.

Meine Bedingungen müssen jeden Tick geprüft werden, also habe ich keine Wahl.

Ja, den Artikel kenne ich.. dazu sagt der aber nichts.

Die Antwortfunktion ist hier ulkig, ich weiß nie, wo das landet..

 
lindomatic:

Ja, den Artikel kenne ich.. dazu sagt der aber nichts.

Die Antwortfunktion ist hier ulkig, ich weiß nie, wo das landet..

Naja, dann verstehe ich jetzt nicht, was Du in welcher Situation mit welchen Mitteln erreichen willst, das aber nicht klappt.

 
lindomatic:

Wenn ich Bedingungen bei jedem Tick abfrage, wird dort jeden Tick gehalten, bis ich endlich ein paar Stunden weiter bin. Von daher müssen zunächst alle BreakPoints raus, sonst springt der Tester da nicht hin.

OnTick ist klar, ja, danke.

Meine Bedingungen müssen jeden Tick geprüft werden, also habe ich keine Wahl.

Wenn du 2 Zeitpunkte vergleichst und der linke höher wird wird er immer höher sein oder ?

Du musst, wenn du den BreakPoint nur EINMAL möchtest eben einen MERKER einbauen.

So das die Bedingung beim 2. Mal nicht mehr wahr ist.

 
Christian:

Wenn du 2 Zeitpunkte vergleichst und der linke höher wird wird er immer höher sein oder ?

Du musst, wenn du den BreakPoint nur EINMAL möchtest eben einen MERKER einbauen.

So das die Bedingung beim 2. Mal nicht mehr wahr ist.

Um meine Bedingungen des Positionshandlings zu überprüfen, müssen meine Haltepunkte zu jedem Tick ziehen.
Sagen wir mal, um 10:00 sehe ich im Log, dass es anfängt krumm zu laufen, da muss ich hin; der ST startet bekannterweise um 0:00.
Die einzige Möglichkeit, die ich gerade sehe ist, alles meine Haltepunkte rausnehmen, Deinen Code nutzen und via StopAtDate den ST nach 10:00 durchlaufen lassen,
und dann meine Haltepunkte wieder reinpacken, das funktioniert. Ist halt doof, dass ich nicht direkt dort starten kann.

@Christian: Ich glaube, wir denken aneinander vorbei? Der Merker kommt hier ja für mich nicht in Betracht, weil ich meine BreakPoints IMMER will.