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
Vielleicht wirkt sich das bloße Vorhandensein von Sleep (im Vergleich zu seinem Fehlen) im Code irgendwie auf die Gesamtausführungszeit aus, aber die Tatsache, dass Sleep im Tester nicht zählt - das ist sicher.
Der Code legt das Terminal auf:
Was ist der Grund dafür?
Der Code legt das Terminal auf:
Was ist der Grund dafür?
Ist das Terminal nicht auf Unlim eingestellt?
Für den Anfang:
Steht Unlim nicht in den Terminaleinstellungen?
Die maximale Anzahl der Balken beträgt 5000. Kann dieser Wert verringert werden?
Ich glaube nicht, dass Sie weniger tun können (ich bin mir nicht sicher).
Was zeigt Print(count) an?
Ich glaube nicht, dass weniger möglich ist (ich bin mir nicht sicher).
Und was gibt Print(count) zurück?
in Kommentar -1
Ich habe es mit einem anderen Symbol versucht, aber es wurde nicht im Kommentar angezeigt -1
HINWEIS: Nach ein paar Sekunden einfrieren. Ich beginne den Code mit int OnInit()
Ja, und es funktioniert im Testgerät, weil Sleep im Testgerät ignoriert wird.
Der Schlaf wird im Sleep-Tester vollständig und genau emuliert.
In diesem Beispiel kam es aufgrund eines arithmetischen Überlaufs bei der Verarbeitung ganzer Zahlen zu einer Wartezeit von nur 17,5 Tagen. Der Prüfer hat genau so lange gewartet.
Es liegt also kein Fehler im Prüfgerät oder in der MQL5-Ausführungsumgebung vor, sondern ein offensichtlicher Fehler des Programmierers.
Renat:
Das heißt, es liegt kein Fehler des Prüfers oder der MQL5-Ausführungsumgebung vor, sondern ein eindeutiger Fehler des Programmierers.
Das ist ganz klar.
Renat:
Der Schlaf wird im Testgerät vollständig und ziemlich genau emuliert.
Aufgrund des arithmetischen Überlaufs bei der Arbeit mit Ganzzahlwerten beträgt die Wartezeit 17,5 Tage. Genau so lange hat der Prüfer gewartet.
Hmm, da haben Sie es. Und ich dachte fälschlicherweise, dass Sleep einfach ignoriert wurde.
Wenn ich also zum Beispiel im Expert Advisor im Testmodus Sleep (3 Monate) einstelle, würde der Tester einfach die Historie für 3 Monate vorspulen? - Das ist großartig.
Während der Wartezeit setzt das Testgerät die vollständige Emulation der Handelsumgebung fort, einschließlich der Verarbeitung aller zuvor erteilten Aufträge. Der Tester in MT5 ist sehr detailliert.
in Kommentar -1
Ich habe es mit einem anderen Symbol versucht, aber es wurde nicht im Kommentar angezeigt -1
HINWEIS: Nach ein paar Sekunden einfrieren. Ich werde den Code von int OnInit() ausführen
Ja. Wir haben den Elefanten gar nicht bemerkt.
Irgendetwas macht mich an dieser Zeile sehr stutzig:
ArrayMaximum
sucht nach dem maximalen Element in einem eindimensionalen numerischen Array.
intArrayMaximum(
doppeltarray[],// zu durchsuchendes Array
intstart=0//von welchem Index aus wir die Suche starten
intcount=WHOLE_ARRAY,// Anzahl der zu prüfenden Indizes
);
und in unserem Fall:
MqlRates s1[];
Ich denke, der Compiler sollte dies nicht übergehen. Was haben Sie? Nicht einmal eine Warnung? Wenn nicht, stellen Sie eine Anfrage an den Service Desk. Ist das okay?