Fragen von Anfängern MQL4 MT4 MetaTrader 4 - Seite 199
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
F11
Hallo, können Sie einige Ratschläge geben. Ich schreibe meine eigenen EA. ich bin wahrscheinlich tun dies die ganze Zeit, ich bin es zu testen und schauen, was funktioniert und was nicht. das Problem ist dies. ich fertig schreiben den Code, ich getestet, alles funktioniert, wie es sollte, dann einige Zeit später, ich beginnen, es zu testen wieder, es beginnt glitching (keine Position öffnen oder nicht einige Funktionen), warum ist das?
Haben Sie jemals Debugging-Informationen in das Journal ausgegeben? Nein? Das sollten Sie nicht. Sie hätten den Grund dafür bereits erkannt.
Geben Sie irgendwelche Debugging-Informationen in das Protokoll ein? Nein? Das hätten Sie nicht tun sollen. Sie sollten die Ursache inzwischen selbst erkannt haben.
Ich weiß noch nicht, wie ich diese Informationen anzeigen kann. Wo kann ich herausfinden, wie das geht?
Ich weiß noch nicht, wie ich diese Informationen ausdrucken kann. Wo kann ich sehen, wie man das macht?
Drucken()
Drucken()
Ich kenne diese Funktion, was soll ich dort schreiben?)
Ich kenne diese Funktion, was soll ich dort schreiben?)
Das Problem ist, dass ich den Code fertig geschrieben und getestet habe, alles funktioniert und dann fängt es an zu stören (nach einiger Zeit fange ich an, es wieder zu testen und dann schlägt es fehl). Ich habe den Code bereits kopiert, getestet und er funktioniert, wie er sollte. Einige Zeit später beginne ich, ihn erneut zu testen, und er funktioniert nicht mehr richtig (keine Positionseröffnung oder keine Funktionsausführung), woran liegt das?
Um zu verstehen, warum etwas nicht funktioniert, müssen Sie natürlich die Bedingungen für dieses "Etwas" prüfen, bevor Sie es ausführen.
Im Debugger können Sie sich akribisch durch die Codezeilen bewegen und die Werte aller Variablen kontrollieren, in der Hoffnung, dass irgendwann der Grund für die Nichtausführung auftaucht.
Oder Sie können, bevor Sie eine Funktion aufrufen, die Ihrer Meinung nach zu einem unklaren Zeitpunkt nicht ausgeführt wird, die Werte aller Variablen notieren, die den Aufruf der Funktion verursachen. Und warten Sie ruhig darauf, dass diese Einträge im Tagebuch erscheinen. Anhand dieser Datensätze können wir verstehen, warum die Funktion nicht aufgerufen wurde. Dasselbe gilt für das Öffnen von Positionen - stellen Sie zunächst sicher, dass das Terminal dort Fehler schreibt, und wenn es keine Fehler gibt, suchen Sie nach Logikfehlern im Programm. Wie - siehe oben.
Um zu verstehen, warum etwas nicht ausgeführt wird, sollte man natürlich die Bedingungen für die Ausführung dieses "Etwas" prüfen, bevor man dieses "Etwas" ausführt.
Sie können im Debugger akribisch Codezeilen durchgehen und die Werte aller Variablen überprüfen, in der Hoffnung, dass irgendwann ein Grund für die Nichtausführung auftaucht.
Und bevor Sie eine Funktion aufrufen, die Ihrer Meinung nach zu einem unklaren Zeitpunkt nicht ausgeführt wird, können Sie alle Variablen, die zum Aufruf der Funktion führen, ins Protokoll schreiben. Und warten Sie ruhig darauf, dass diese Einträge im Tagebuch erscheinen. Anhand dieser Datensätze können wir verstehen, warum die Funktion nicht aufgerufen wurde. Dasselbe gilt für das Öffnen von Positionen - stellen Sie zunächst sicher, dass das Terminal dort Fehler schreibt, und wenn es keine Fehler gibt, suchen Sie nach Logikfehlern im Programm. Wie - siehe oben.
Danke für die Idee)))