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
Hallo! :)
Versuchen Sie, Ihre Bibliothek zu verwenden. MT5 Modus Hedge build 1959, Testmodus.
Der Aufruf OrderSelect(... , SELECT_BY_TICKET) gibt für die Order in der Historie false zurück, obwohl die Order in den Protokollen des Testers eindeutig vorhanden ist. Können Sie mir sagen, wie das möglich ist?
Hallo! :)
Versuchen Sie, Ihre Bibliothek zu verwenden. MT5 Modus Hedge build 1959, Testmodus.
Der Aufruf OrderSelect(... , SELECT_BY_TICKET) gibt für die Order in der Historie false zurück, obwohl die Order in den Protokollen des Testers eindeutig vorhanden ist. Können Sie erraten, wie das möglich ist?
Sie sollten diesen Thread lesen, damit ich mich nicht noch einmal wiederhole.
Das Ticket einer geschlossenen MT4-Position ist das gleiche wie das Ticket eines geschlossenen MT5-Geschäfts, um es kurz zu machen. Dafür gibt es eine ganze Reihe von völlig berechtigten Gründen. Lesen Sie insbesondere in der Kopfzeile der Bibliothek darüber. Oder besser noch, lesen Sie natürlich den Thread zu diesem Thema.
Um ein besseres Verständnis zu bekommen, machen Sie alle möglichen komplizierten Trades von Hand im MT5 und führen Sie dann dieses Skript aus
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Bibliotheken: Bericht
fxsaber, 2018.12.11 12:28 pm.
Ich bin die MT5-Berichte über einzelne Durchläufe leid. Wenn man also diese drei Zeilen am Ende eines MT5-Beraters hinzufügtwird ein normaler Hedge-Tester-Bericht am Ende eines einzelnen Durchlaufs geöffnet, der Positionen in normaler Form und sogar Slippages anzeigt.
Versuchen Sie dies zum Beispiel mit Experts\Examples\Moving Average\Moving Average.mq5.
Um sofort zu verstehen, wie der Bericht aussieht, führen Sie einfach dieses Skript in Ihrem Konto aus
Alles ist auch für MT4 relevant.
Sie sollten diesen Thread lesen, damit ich mich nicht noch einmal wiederholen muss.
Das Ticket einer geschlossenen MT4-Position ist das gleiche wie das Ticket eines geschlossenen MT5-Geschäfts, kurz gesagt. Dafür gibt es eine ganze Reihe von triftigen Gründen. Lesen Sie insbesondere in der Kopfzeile der Bibliothek darüber. Oder besser noch, lesen Sie natürlich den Thread zu diesem Thema.
Um ein besseres Verständnis zu bekommen, machen Sie alle möglichen komplizierten Handelsoperationen von Hand in MT5, und führen Sie dann dieses Skript aus
Es stellt sich also heraus, dass es immer noch unmöglich ist, eine vollständige MT4 -> MT5-Kompatibilität zu erreichen? OK, danke für den Hinweis, ich werde mich damit befassen.
Es stellt sich heraus, dass es immer noch unmöglich ist, volle Kompatibilität MT4 -> MT5 zu erreichen? OK, danke für den Hinweis, ich werde es mir ansehen.
Ja, krumme MT4-Code wird nicht immer in MT5 funktionieren.
Ja, ein krummer MT4-Code funktioniert nicht immer im MT5.
Eine Kurve ist eine, die berechnet, dass das OrderSend-Ergebnis einer Pending-Order unter derselben Nummer bleibt, nachdem sie zu einer Market-Order wird, verstehe ich Sie richtig? )
Was ist der einfachste Weg, dieses Problem zu lösen, ohne die Logik des ursprünglichen Codes zu überarbeiten, können Sie mir das sagen? Wenn ich selbst nicht schneller darauf komme )
Generell kann man dieses Verhalten nicht als MT4-Ordersystem bezeichnen. Denn das Speichern von Ordertickets bei der Aktivierung im MT4-System gehört zu dessen Grundlagen
Die Kurve ist diejenige, die berechnet, dass das OrderSend-Ergebnis eines schwebenden Auftrags auf derselben Zahl bleibt, nachdem er marktfähig geworden ist, verstehe ich Sie richtig? )
Wenn die Order ausgeführt wird, bleibt das Positionsticket im MT5 gleich. Bei der Schließung ist dies jedoch nicht der Fall.
Die Kurve ist die Verwendung von SELECT_BY_TICKET. Vor allem, wenn es darum geht, das Ereignis "ob meine Position geschlossen wurde" auf diese Weise zu verfolgen.
Generell kann man dieses Verhalten nicht mehr als MT4-Ordersystem bezeichnen. Denn das Speichern von Ordertickets, wenn sie im MT4-System aktiviert werden, gehört zu dessen Grundlagen
Alles wird gespeichert. Sie müssen es nur ausprobieren.
Wenn ein Auftrag ausgeführt wird, bleibt das Positionsticket in MT5 gleich. Bei der Schließung ist dies jedoch nicht der Fall.
Die Kurve ist die Verwendung von SELECT_BY_TICKET. Insbesondere wenn es darum geht, das Ereignis "ob meine Position geschlossen wurde" auf diese Weise zu verfolgen.
Alles wird gespeichert. Man muss es nur ausprobieren.
Nun, ich habe es ausprobiert. Ich habe natürlich von der Ticketnummer nach dem Schließen gesprochen. Die unterscheiden sich ziemlich stark, das heißt, die ganze Auftragsnummerierung ist fließend. Ich öffne Order Nummer 59(das Ergebnis von OrderSend), aktiviere und schließe sie, dann drucke ich Nummern aus der Historie mit Ihrem OrderPrint und erhalte Nummern in der Historie von 1 bis 13. Das kann man leider nicht MT4-System nennen. In der MT4-Dokumentation stand nichts davon, dass SELECT_BY_TICKET nicht verwendet werden kann, um das Ereignis "ob meine Position geschlossen wurde" zu verfolgen, Sie haben es bereits erfunden. In MT4 war das ganz normal (obwohl ich nicht bestreiten will, dass es nicht der beste Programmierstil ist, aber wir schreiben keine Bibliotheken für eine perfekte Welt, oder was =)).
Außerdem geht es hier nicht um Closure Checking, das wäre leider leicht zu beheben. Es geht um die Tatsache, dass viele Systeme Bestellungen anhand bestimmter Attribute in Gruppen einteilen und dann die Ergebnisse analysieren, um weitere Entscheidungen zu treffen. Und diese ganze Kohorte von Systemen (bei denen das Erinnern von Tickets und deren Analyse in der Historie im Prinzip unmöglich ist) wird mit Ihrer Bibliothek nicht funktionieren, wenn Sie alle anderen Systeme hinzufügen, die einfach nur "das Ereignis überwachen, ob meine Position geschlossen wurde" über SELECT_BY_TICKET, werden Sie eine ganze Reihe von Ausnahmen erhalten.Nun, so habe ich es versucht. Ich habe natürlich von der Ticketnummer nach dem Schließen gesprochen. Die unterscheiden sich ziemlich stark, d.h. die ganze Nummerierung der Aufträge ist fließend. Ich öffne Order Nummer 59 (Ergebnis von OrderSend), aktiviere und schließe sie, dann drucke ich Nummern aus der Historie mit Ihrem OrderPrint und erhalte Nummern in der Historie von 1 bis 13. Das kann man leider nicht MT4-System nennen. In der MT4-Dokumentation stand nichts davon, dass SELECT_BY_TICKET nicht verwendet werden kann, um das Ereignis "ob meine Position geschlossen wurde" zu verfolgen, Sie haben es bereits erfunden. In MT4 war dies ganz normal (obwohl ich nicht bestreiten werde, dass dies nicht der beste Programmierstil ist, aber wir schreiben keine Bibliotheken für eine perfekte Welt, oder was =)).
Die Faulheit, den Thread zu lesen, ist bekannt.
Die Faulheit, das Thema zu lesen, ist bekannt.
Warum den Thread lesen? Ich habe schon alles herausgefunden.
Stellen Sie sich einen EA vor, der mehrere gleichzeitige Auftragsnetze aufbaut, von denen jedes seine eigene Logik hat, die von den Ergebnissen früherer Aufträge in der Reihe abhängt. Wie viel einfacher wäre es für Sie, die Tickets in einem Array zu speichern, als irgendeine andere Logik zu implementieren. Gleichzeitig ist der einzige Fall, in dem diese Logik einem "Kampfeinsatz" nicht standhält, ein momentaner Stromausfall, und zwar genau in dem Moment, in dem der Expert Advisor das Ergebnis der nächsten Handelsoperation in die Datei mit seinen Daten schreiben sollte. Dies ist beim Handel auf einem VPS (oder bei Vorhandensein einer USV) praktisch unmöglich.
Warum sollte ich den Thread lesen, ich habe das alles schon herausgefunden.
Stellen Sie sich einen EA vor, der mehrere gleichzeitige Raster von Aufträgen erstellt, von denen jeder seine eigene Logik hat, die von den Ergebnissen früherer Aufträge in der Serie abhängt. Wie viel einfacher wäre es für Sie, die Tickets in einem Array zu speichern, als irgendeine andere Logik zu implementieren. Gleichzeitig ist der einzige Fall, in dem diese Logik einer "Kampfanwendung" nicht standhalten wird, .....
Es gibt viele Fälle, in denen das nicht der Fall ist. Jeder Rasterauftrag erzeugt Dutzende von Positionen, und jede Position, die durch denselben TP geschlossen wird, erzeugt Dutzende von geschlossenen Positionen.
Die Bibliothek ist für diejenigen, die wissen, wie man Kampf-EAs auf MT4 zu schreiben, nicht Demo-Spielzeuge erstellt. Combat ist die Eingabe von OnTick von Grund auf jedes Mal.
Ich habe keine Argumente für Sie, sie sind alle auf dem Forum. Sie werden mit mir nicht einverstanden sein, absolut. Aber das ist nicht so schlimm wie krumme MT4-Berater.
Vielleicht mischt sich ja jemand in diesen Dialog ein und zeigt mit Links oder Sprachgedanken auf, warum die Welt so real ist.