MT5 und Geschwindigkeit in Aktion - Seite 92

 
fxsaber:

Überwachen Sie die Diskrepanz zwischen TimeLocal und TimeCurrent.

Und wenn sich TimeLocal() in diesen Situationen verzögert, liegt die Ursache dann im Betriebssystem?
 
Vasiliy Pushkaryov:
Und wenn TimeLocal() in solchen Situationen hinterherhinkt, liegt die Ursache dann im Betriebssystem?

TimeLocal ist nicht weit dahinter. Die Diskrepanz ist ein Makler.

 
Vasiliy Pushkaryov:

Vielleicht hat jemand Erfahrung, was kann der Grund für solche Schluckauf oder Bremsen sein?

Das erste, was mir in den Sinn kommt, ist ein Fehler im Code, der dazu führt, dass die Berechnung sehr lange läuft (z. B. wird bei dem Zyklus von 1 bis 10 wegen des Fehlers der ganze int durchlaufen)

 
fxsaber:

TimeLocal ist nicht weit dahinter. Die Diskrepanz ist ein Makler.

Ich danke Ihnen. Ich werde es ausprobieren.
 
Andrei Trukhanovich:

Das erste, was mir in den Sinn kommt, ist ein Fehler im Code, der eine Berechnung auslöst, die sehr lange dauert (z. B. wird bei dem Zyklus von 1 bis 10 wegen des Fehlers der gesamte int durchlaufen).

In der Hilfe steht geschrieben, dass ein geloopter EA die Arbeit anderer Programme nicht stören kann. Alles friert ein und funktioniert dann wieder.

Ich habe 7 MT4-Terminals und drei MT5-Terminals, die parallel laufen. Vielleicht gibt es nicht genügend Kapazitäten?



 
Vasiliy Pushkaryov:

Es scheint in der Hilfe geschrieben zu sein, dass ein geloopter EA andere Programme nicht stören kann. Und hier friert alles ein, dann funktioniert alles wieder.

Ja, seltsam, ich habe nur die Registerkarte Experten gesehen, die Protokolle habe ich beim ersten Mal nicht gesehen.

Es gibt 7 MT4-Terminals und drei MT5-Terminals, die parallel laufen. Vielleicht ist die Kapazität nicht ausreichend?

Wenn ja, würden wahrscheinlich alle Terminals verlangsamt werden. Außerdem sollte die CPU-Last in diesem Fall einfach auf 100 % skaliert werden.

 

Die Menge TerminalA - Endgeräte, die Ping-Daten(xxx ms) zu Zugangspunkten haben.

Die Menge TerminalB - Terminals, die keine Ping-Daten(n/a) zu Zugangspunkten haben.


Terminals aus beiden Gruppen können mit demselben Access Point verbunden werden und auf dieselbe Weise handeln - OrderSend wird gesendet und Antworten werden empfangen.


TerminalA belastet den Prozessor so wenig wie möglich.


TerminalB:

  • belastet die CPU so stark wie möglich.
  • nach dem Neustart bleibt TerminalB.
  • Nach "Netzwerk neu scannen" (manuell über GUI) ändert sich der Typ in TerminalA. Dementsprechend wird die CPU nicht mehr belastet.


Wenn Sie eine unerklärlich hohe CPU-Belastung feststellen, versuchen Sie, den Scanvorgang zu wiederholen. Dies hat mir geholfen, alle TerminalB in TerminalA zu ändern.

 

Ich weiß nicht warum, aber mein Broker scheint mehr Handelsumsatz, Anzahl der Trades und Anzahl der aktiven Handelskonten auf MT5 zu haben als auf MT4.

Leider gibt es nur aggregierte Informationen nach Plattformen.

Количество закрытых позиций :129 714
Торговый оборот ($) :$ 5 747 296 372
Активных счетов :498

Indizien deuten jedoch darauf hin, dass MT5 dem MT4 voraus ist. Die Gründe für diesen Zustand lassen sich nur erahnen.


Was ich über Kunden weiß:

  • >95% der Geschäfte (~99% des Umsatzes) werden automatisch getätigt.
  • Bei einigen Kunden verbraucht das MT5-Terminal mehr als 10 Gigabyte Speicher (historische Caches), das MT4-Terminal bei gleichem Volumen weniger als 1 Gigabyte. Trotzdem sind sie bereit, für einen leistungsfähigeren VPS zu viel zu bezahlen, handeln aber genau auf MT5 und nicht auf 4.
  • Fast alle von ihnen sind Schwarzhändler. Die Hauptgewinne entfallen auf den nächtlichen und abendlichen Flachhandel.
  • Die hohe Aktivität (auf der Plusseite im Vergleich zu anderen Brokern) während der Rollover-Periode - riesige Spreads.
 
fxsaber TimeCurrent.

Danke für den Hinweis. Diese Situation ist aufgetreten. In OnTimer() wird die Diskrepanz zwischen TimeLocal() und TimeCurrent() überwacht


Seit gestern Abend um 21:58 Uhr gibt TimeCurrent() immer dieselbe Zeit zurück. Freigegeben heute um 00:08. D.h. etwas mehr als zwei Stunden hatte diese Situation von allen Charakteren.

 

Nicht eine Remote-Maschine (nicht VPS) mit guten Spezifikationen und einem Ping zum Handelsserver <4ms sah viele Fälle von regelmäßigen Lags beim Anzeigen von Terminal-Logs (b2958).


Ich habe den ersten, den ich hier gesehen habe, zur Demonstration genommen.

2022.01.18 23:00:09.375  Trades  '': modify order #7133346 sell limit 0.23 USDCHF at 0.91744 sl: 0.00000 tp: 0.91709 -> 0.91741, sl: 0.00000 tp: 0.91709
2022.01.18 23:00:17.752  Trades  '': accepted modify order #7133346 sell limit 0.23 USDCHF at 0.91741 sl: 0.00000 tp: 0.91709 -> 0.91741, sl: 0.00000 tp: 0.91709
2022.01.18 23:00:17.769  Trades  '': modify #7133346 sell limit 0.23 USDCHF -> price: 0.91741, sl: 0.00000, tp: 0.91709) done in 8393.712 ms


Die Änderung des Begrenzers dauerte acht Sekunden. Die meisten Änderungen dauern ungefähr so lange.

2022.01.18 23:11:00.751 Trades  '': modify #7133346 sell 0.23 USDCHF sl: 0.00000, tp: 0.91711 -> sl: 0.00000, tp: 0.91712
2022.01.18 23:11:00.761 Trades  '': accepted modify #7133346 sell 0.23 USDCHF sl: 0.00000, tp: 0.91711 -> sl: 0.00000, tp: 0.91712
2022.01.18 23:11:00.763 Trades  '': modify #7133346 sell 0.23 USDCHF -> sl: 0.00000, tp: 0.91712 done in 12.422 ms


Selbst für einen Ping von 4 ms ist das eine Menge, aber immer noch nichts im Vergleich zu acht Sekunden.


Auf diesem Rechner laufen nur MT5-Terminals und die durchschnittliche CPU-Last beträgt ~1%. Die Analyse hat gezeigt, dass die Last während des Bremsvorgangs auf bis zu 100 % ansteigt, wenn die Markt- und Handelsaufträge sehr aktiv sind. Infolgedessen dauert es SEHR lange, bis eine Antwort vom Handelsserver an das Terminal gesendet wird. Im Falle von Langsamkeit habe ich den Makler um Informationen gebeten. Auf der Seite des Handelsservers geschieht alles sofort, und der Auftrag erreicht den Server vom Terminal aus in der ersten Zeile. D.h. das Senden von Aufträgen verlangsamt sich nicht, Verzögerungen treten beim Empfang der Antwort an das Terminal auf.


Ich bezweifle, dass die Entwickler hier noch etwas verbessern können. Wer SEHR aktiv ist im Handel, bitte teilen Sie Ihre Beobachtungen zu diesem Thema mit Ihren Protokollen.

Grund der Beschwerde: