![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Beschleunigung um das Zehnfache bei massivem parallelem Zugriff.
In anderen Fällen werden nur Prozessor, Speicher und Betriebssystem aufgerüstet.
In PM, vergleichende Protokolle vom selben Rechner.
Dies ist ein einmaliger Aufruf von CopyTicks. Dies geschieht, um einen virtuellen Backtest für diese Ticks in OnInit durchzuführen und ihn dann in Echtzeit fortzusetzen, wobei nur frische Ticks eingespeist werden.
Als Kompromiss schlage ich vor, den Speicher im Terminal unmittelbar nach dem Aufruf von CopyTicks in OnInit freizugeben. Dann müssen wir keine Zwangsabkühlungsfunktion für CopyTicks einführen.
Momentan ist die Sleep-Version der Kühlung sehr hinderlich. Aber ich habe oben gezeigt, wie diese Krücke Speicherplatz spart.
Jetzt stellt sich heraus, dass 20 Expert Advisors auch auf langsamen VPS schnell laufen. Aber sie zu starten ist ein ernsthaftes Problem.
Es ist noch gar nicht so lange her, da haben Sie selbst Stresstests durchgeführt und die sofortige Ausgabe von tiefen Ticks bei jedem Tick gefordert.
Das heißt, sowohl Sie als auch 100 % der anderen Entwickler haben Strategien für anstehende vollständige Cache-Anfragen angewandt und werden dies auch weiterhin tun. Es werden immer mehr und immer kostspieligere und frontalere Gutachten erstellt.
Deshalb werden wir die Caches keineswegs abschaffen, sondern empfehlen, 16-32gb Speicher einzusetzen und Probleme und Verzögerungen zu vergessen.
Verhalten und Wirtschaft auf VPS (halten Sie auf 512 mb-1 gb) wir überhaupt nicht kümmern.
Sie selbst haben vor nicht allzu langer Zeit Stresstests durchgeführt, und Sie verlangten sofortige tiefe Ticks bei jedem Tick.
Das heißt, sowohl Sie als auch 100 % der anderen Entwickler haben Strategien für anstehende vollständige Cache-Anfragen angewandt und werden dies auch weiterhin tun. Es werden immer mehr und immer kostspieligere und frontalere Gutachten erstellt.
Deshalb werden wir die Caches keineswegs abschaffen, sondern empfehlen, 16-32gb Speicher einzusetzen und Probleme und Verzögerungen zu vergessen.
Verhalten und Wirtschaft auf VPS (um in 512 mb-1gb passen) wir überhaupt nicht kümmern.
Oben habe ich meinen Beitrag mit Code ergänzt. Es geht um OnInit, nicht um etwas anderes. Hot CopyTicks wird dringend benötigt, aber nicht in OnInit.
Als Kompromiss schlage ich vor, dass nach dem Aufruf von CopyTicks in OnInit der Speicher sofort im Terminal freigegeben werden sollte.
Auf jeden Fall nicht!
Und was, wenn ich im Gegenteil erhöhen Cache in OnInit, um mit ihm zu arbeiten, ohne Verzögerungen?
Es ist besser, die Funktion zum Entladen des Terminal-Caches einzuführen.
Dies ist nicht nur für Ticks, sondern auch für Zeitreihen und Indikatoren erforderlich (versuchen Sie, einen 5K für 5 Instrumente und 5 TFs zu schreiben).
@Renat?
Niemals!
Was, wenn ich den Cache in OnInit anhebe, so dass ich dann ohne Verzögerung damit arbeiten kann?
Der Zeckenzwischenspeicher hat nur eine Lebensdauer von 10 Sekunden.
Der Tick History Script Screener (die einzige Software, die im Terminal läuft) frisst bis zu 6 GB, wenn man die Notierungen von fünf Monaten nimmt.
Je schneller der Rechner und das Internet sind, desto größer ist die Speicherbelastung. D.h. die internen Zwischenspeicher des Terminals sammeln sich innerhalb von 10 Sekunden auf einige Zeichen an.
Mir fällt kein anderer Weg ein, um zu wissen, dass es einen neuen Tick gibt, während OnTick ausgeführt wird.
Drei Optionen.
Es ist besser, einen neuen Tick nicht durch die Balken zu erkennen.
Ergebnis(inAmount = 15).
Die Desynchronisation kann bis zu einer Minute dauern. Es gibt irgendwo einen Fehler.
Der Grund für das Abbremsen von SymbolInfoTick scheint die Parallelverarbeitung zu sein.
Ergebnis (inAmount = 15).
> 100 ms für die Ausführung von SymbolInfoTick. Es ist klar, dass der Code ein Selbstläufer ist. Aber es zeigt den Grund für die Verlangsamung bei den üblichen EAs.