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
Wie macht man das?
Die Bremsen wurden nur dann reproduziert, wenn 6/8 Agenten im Einsatz waren.
Die Bremsen wurden nur dann reproduziert, wenn 6/8 Agenten im Einsatz waren.
D.h. Problem, wenn die CPU belastet wird.
MQ-Demo, 20 Karten, b2656. Auf dem Rechner läuft nur das Terminal, der Tester ist nicht aktiv.
Die Bremsen wurden nur dann reproduziert, wenn 6/8 Agenten im Einsatz waren.
Das heißt, das Problem tritt auf, wenn die CPU belastet wird.
Ist diese Information für Sie neu?
Ist diese Information für Sie neu?
Ich verstehe nicht ganz, warum es unmöglich ist, diese CPU-Last-Lags zu umgehen. Wahrscheinlich ist er dazu nicht in der Lage.
Im Folgenden finden Sie jedoch einen sauberen Test, der das Problem der Relevanz von Preisdaten im MT5 zeigt. Ich habe den Code mit Kommentaren versehen. Kurz gesagt, die Ticks werden über SymbolInfoTick/stack entnommen und gegeneinander geprüft. Insbesondere, um Lücken und große Verzögerungen zwischen identischen Ticks aus verschiedenen Quellen zu vermeiden.
Ergebnis (nur ein MT5-b2656 läuft auf dem Rechner, CPU-Last um Null, ein Chart, Tester nicht verwendet).
Bitte bestätigen Sie die Wiedergabe.
Zwischensumme für eine schnell entladene Maschine.
Frage an die Entwickler.
Angenommen, SymbolInfoTick wurde 5 ms lang ausgeführt. Entspricht der Tick der aktuellen Zeit oder der 5 ms davor?
Die SymbolInfoTick-Bremsen sind geschlossen. Das Ergebnis ist folgendes.
Wenn die CPU überlastet ist (z.B. Optimize nicht einmal auf allen Kernen), kann SymbolInfoTick bis zu zehn Millisekunden brauchen, um fertig zu werden. Es gibt keine Antwort darauf, warum diese beliebteste Funktion des Terminals nicht regelmäßig einen Snapshot macht. Wenn möglich, machen Sie Schnappschüsse davon. Und vergessen Sie nicht, dass die OnTick-Funktion selbst bei Null-CPU-Last einige Dutzend Millisekunden später arbeiten kann als ein Tick, der am Terminal ankommt.
Alles in allem ziemlich traurig, aber das kann diejenigen nicht beunruhigen, die primitiv handeln.
Die SymbolInfoTick-Bremsen sind geschlossen. Das Ergebnis ist folgendes.
Wenn die CPU überlastet ist (z.B. Optimize nicht einmal auf allen Kernen), kann SymbolInfoTick bis zu zehn Millisekunden brauchen, um fertig zu werden. Es gibt keine Antwort darauf, warum diese beliebteste Funktion des Terminals nicht regelmäßig einen Snapshot macht. Wenn möglich, machen Sie Schnappschüsse davon. Und vergessen Sie nicht, dass die OnTick-Funktion selbst bei Null-CPU-Last einige Dutzend Millisekunden später arbeiten kann als ein Tick, der am Terminal ankommt.
Alles in allem recht bedauerlich, aber das kann diejenigen, die primitiv handeln, nicht stören.
Für diejenigen, die "nicht primitiv" handeln: Die Hardware muss der Aufgabe gewachsen sein.
"nicht einmal auf allen Kernen" - sprechen Sie von "6/8"? d.h. 6 Prozesse, und jeder von ihnen belastet einen CPU-Kern für die Dauer des Tests zu 100%? Und es gibt nur 4 physische Kerne? Und sind Sie wirklich überrascht, dass der Test vor einem solchen Hintergrund "hinkt"?
Wenn dies tatsächlich Ihr Verständnis ist, dann: "Lernen, lernen und nochmals lernen".
Wenn Sie eine CPU mit 16-20 Threads vergewaltigen wollen, sollten Sie eine CPU mit mindestens 20 physischen Kernen kaufen.
Für diejenigen, die "nicht primitiv" handeln: Die Hardware muss der Aufgabe gewachsen sein.
"nicht einmal auf allen Kernen" - sprechen Sie von "6/8"? Ich meine 6 Prozesse, und jeder von ihnen belastet einen CPU-Kern während der gesamten Testzeit zu 100%? Und es gibt nur 4 physische Kerne? Und sind Sie wirklich überrascht, dass der Test auf einem solchen Hintergrund "hinkt"?
Wenn dies tatsächlich Ihr Verständnis ist, dann: "Lernen, lernen und nochmals lernen".
Wenn Sie eine CPU mit 16-20 Threads vergewaltigen wollen, kaufen Sie eine CPU mit mindestens 20 physischen Kernen.
Ich bin sicher, dass ich beweisen kann, dass Ihre aktuellen Preise sehr langsam umgesetzt werden. Die CPU-Belastung verursacht eine solche Trägheit nur wegen der falschen Implementierung der wichtigsten Funktion in MQL5.
Ich bin sicher, dass ich beweisen kann, dass Ihre Umsetzung der aktuellen Preise sehr langsam ist. Die CPU-Belastung erzeugt nur solche Verlangsamungen, die durch die fehlerhafte Implementierung der Hauptfunktion in MQL5 entstehen.
Test-Code:
Beweisen Sie es.