Der große und schreckliche MT4 für immer (oder wie man einen Übergang strategisch plant) - Seite 25
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
in der PM hat den Server verlassen
Dieser Server (oder vielmehr die Software des Brokers) verfügt über einen Spamschutz. Die Aktualisierung ist für nächste Woche geplant, und dann wird die Verlangsamung behoben sein.
Ich werde mir diesen Server ansehen müssen. Es wäre gut, die hier vorgeschlagene Krücke zu prüfen, für wen sie wichtig zu sein scheint.
Ich würde es hassen, nach einer Weile wieder auf dieses Thema zurückzukommen. Es wäre besser, auf Fehler hinzuweisen, falls es welche gibt.
Es gibt noch keine Option im MT4-Stil?
Einfach das Skript ausführen und 100 Positionen auf verschiedenen Servern öffnen?
Noch keine Option im MT4-Stil?
Es hat noch nicht begonnen. Höchstwahrscheinlich wird der Benutzer nichts am Code ändern. Die zusätzlichen Funktionen werden durch ein Makro aktiviert.
Einfach das Skript ausführen und 100 Positionen auf verschiedenen Servern öffnen?
Ja, auf verschiedenen Servern, aber nur ein anderes Skript. Tritt während der einminütigen Laufzeit keine Verdoppelung auf, so hat er die Prüfung erfolgreich bestanden. Andernfalls - Fehlschlag.
Es hat noch nicht begonnen. Höchstwahrscheinlich wird der Benutzer nichts am Code ändern. Die zusätzlichen Funktionen werden über ein Makro aktiviert.
Ich hab's.
Das war es.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Der große und der schreckliche MT4 für immer (oder wie man eine intelligente Migrationsstrategie entwickelt)
fxsaber, 2021.05.11 09:05
Ohne auf eine Position zu warten - Ergebnisse sofort.
Das stimmt.
Jetzt nicht anders als die MT4-Variante, einschließlich der Zuverlässigkeit.
Alle Beispiele, die in MT5 so schwer zu schreiben sind, sind nun leicht zu implementieren, so wie sie sein sollten.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Der große und der schreckliche MT4 für immer (oder wie Sie Ihre Migrationsstrategie aufbauen)
Igor Makanu, 2021.05.10 10:28
es scheint zu funktionieren:
aber sehr langsam, und die Lösung ist mäßig.
Was passiert, wenn nach dem Auftrag zur Eröffnung der 10. Position bei der nächsten Iteration der
PositionTotal hatte noch keine Zeit, sich zu aktualisieren (=9), und der Auftrag hat es bereits geschafft, in die Historie einzugehen, und OrdersTotal()==0.
Wird es in diesem Fall ein weiteres Trade.Buy() geben?
Theoretisch kann das mehrmals hintereinander passieren?
Oder habe ich etwas übersehen?
Was passiert, wenn nach dem Auftrag zur Eröffnung der 10. Position bei der nächsten Iteration der
PositionTotal hatte noch keine Zeit, sich zu aktualisieren (=9), und der Auftrag hat es bereits geschafft, in die Historie zu gelangen, und OrdersTotal()==0.
Wird es in diesem Fall ein weiteres Trade.Buy() geben?
Theoretisch kann das mehrmals hintereinander passieren?
Oder übersehe ich etwas?
es ist sein hochfrequentes Interesse, der Rest hat genug Auszeiten und kein Problem mit einem zweiten Anlauf
Ich bin sicher, dass es so in MT4 eingebaut ist, abwarten und sehenWas passiert, wenn nach dem Auftrag zur Eröffnung der 10. Position bei der nächsten Iteration der
PositionTotal hatte noch keine Zeit, sich zu aktualisieren (=9), und der Auftrag hat es bereits geschafft, in die Historie zu gelangen, und OrdersTotal()==0.
Wird es in diesem Fall ein weiteres Trade.Buy() geben?
Natürlich wird es das. Die Argumentation im Code ist genau dieselbe.
Theoretisch kann es mehrere aufeinanderfolgende Iterationen geben?
Wenn Kaufen wahr ist, ist die Wahrscheinlichkeit, dass bei der nächsten Iteration OrdersTotal() == 0 ist, nahezu null. D.h. die Eröffnung von 12 Stellen ist in der Praxis unmöglich.
Dies ist ein sehr primitiver Fall. Eine doppelte Iteration sieht oft wie folgt aus:
Im zweiten Schritt sieht der Expert Advisor, dass es nichts gibt und setzt ein Limit. Infolgedessen haben wir zwei offene Stellen.
Der zweite Punkt ist das Überschwingen des MT5. Und jetzt umgeht die Krücke sie.
Ich danke Ihnen.
Das ist es:
fxsaber:
Die Verdoppelung ist keine Schwierigkeit des MT5, sondern ein Architekturfehler, wenn die Total()-Funktionen falsch positive Ergebnisse anzeigen.Sie können sagen, dass es ein Fehler ist, oder Sie können es anders darstellen :-)
PositionsTotal() ist nicht die Anzahl der offenen Positionen, sondern die Größe der Tabelle der offenen Positionen. Die Tabelle der Positionen - ist in der Tat ein Cache, wie der Cache der Geschichte der Geschäfte, nur ist es nicht auf Anfrage aktualisiert, sondern automatisch, aber nicht sofort, und mit einer leichten Verzögerung. Aus diesem Grund darf sie keine bereits geöffneten oder geschlossenen Positionen enthalten.
Dasselbe gilt für OrdersTotal().
Wenn wir die Hilfe auf diese Weise erklären, wird es weniger Fragen, Beschwerden und Missverständnisse geben.
Und im Artikel "Orders, Positions and Trades in MetaTrader 5" können Sie darauf achten (jetzt ist es zweideutig - "Das Ergebnis der Funktion PositionsTotal() hängt nicht davon ab, ob der Positions-Cache voll ist - sie gibt immer die tatsächliche Anzahl der offenen Positionen im Basisterminal für alle Symbole zurück").
P.S. Aber dann stellt sich eine berechtigte Frage: Warum nicht eine Systemfunktion/ein Flag zur Bestimmung des Synchronisationsstatus der Tabellen mit Live-Aufträgen, Positionen, Geschäften und ausgeführten Aufträgen einrichten, um keine Krücken zu schaffen?P.S. Aber dann stellt sich die berechtigte Frage, warum nicht ein System fi/flag zur Bestimmung des Synchronisationsstatus der Tabellen mit Live-Aufträgen, Positionen, Geschäften und ausgeführten Aufträgen erstellt wird, um keine Krücken zu schaffen.
Höchstwahrscheinlich gibt es im Inneren keine solche Flagge.