Danke für die Informationen... wie können Steckdosen helfen, zwei MT5-Terminals von verschiedenen Brokern zu verbinden? auf einem Forex auf dem anderen Moex - Paired Trading von zwei Terminals kann durch Steckdosen realisiert werden?
Ich grabe mich gerade in dieses Thema ein... entschuldigen Sie bitte im Voraus, wenn meine Frage ein wenig vom Thema abweicht.... Ich lese immer noch Artikel und suche nach Lösungen für zwei MT5, die zusammen handeln und Kurse von Symbolen von verschiedenen Börsen im Wesentlichen erhalten und zusammen handeln, nachdem sie Daten über Kurse von 2-3-4-5 Symbolen analysiert haben.....
Ich werde sockeln:
-
Inter-Terminal-Austausch: Daten gehen direkt zwischen MT5 A und MT5 B.
-
Ereignisse: OnSocketEvent() wird sofort ausgelöst , wenn Daten empfangen werden.
-
Datenflexibilität: JSON, binäre Strukturen, Arrays können übertragen werden.
-
Geschwindigkeit: Die Latenzzeit ist um eine Größenordnung geringer als beim variablen Polling.
-
Zuverlässigkeit: Es gibt Mechanismen zum erneuten Senden und zur Bestätigung.
In diesem Zusammenhang plane ich einen fortgeschrittenen Python-Server mit Spread-Berechnung, ACK/NACK, Speicherung von Positionszuständen und Web-Interface zur Überwachung;
// Terminal A string msg = "{\"cmd\":\"OPEN\", \"symbol\":\"USDRUBF\", \"volume\":1.0}"; SocketSend(socket, msg); // Terminal B string cmd; SocketReceive(socket, cmd); // Ich habe die vollständige Struktur des Signals
- 2025.10.29
- www.mql5.com
Ich grabe mich gerade in dieses Thema ein... entschuldige im Voraus, wenn meine Frage ein wenig vom Thema abweicht.... Ich lese immer noch Artikel und suche nach Lösungen für den Handel mit zwei MT5-Terminals in einem Socket und das Erhalten von Kursen von Symbolen von verschiedenen Börsen im Wesentlichen und den Handel in einem Socket nach der Analyse von Daten zu Kursen von 2-3-4-5 Symbolen....
hier werde ich Steckdosen zu spinnen:
-
Inter-Terminal-Austausch : Daten gehen direkt zwischen MT5 A und MT5 B.
-
Ereignisse : OnSocketEvent() wird sofort ausgelöst , wenn Daten empfangen werden.
-
Datenflexibilität : JSON, binäre Strukturen, Arrays können übertragen werden.
-
Geschwindigkeit : Die Latenzzeit ist um eine Größenordnung geringer als beim variablen Polling.
-
Zuverlässigkeit : Es gibt Mechanismen zum erneuten Senden und zur Quittierung.
In diesem Zusammenhang plane ich: einen fortgeschrittenen Python-Server mit Spread-Berechnung, ACK/NACK, Speicherung von Positionszuständen und Web-Interface zur Überwachung;
Ihre Frage ist relevant und interessant. Aber ich denke, Sie ziehen voreilige Schlüsse. Lassen Sie mich klarstellen: Obwohl MQL5 Sockets implementiert, wie ich in meinen Artikeln erkläre, erlaubt es Ihnen nicht, einen Server zu erstellen. Nur einen Client. Daher ist vieles von dem, was Sie vorhaben, unmöglich. ES IST UNMÖGLICH in MQL5 implementiert zu werden. Sie werden externen Code benötigen. In Ihrem Fall erwähnen Sie die Verwendung von Python, was an sich schon eine Lösung ist.
Tatsächlich kann vieles von dem, was Sie brauchen, in Python implementiert werden. Allerdings gibt es ein kleines Problem bei dem, was Sie versuchen: die direkte Interaktion mit dem Broker. Warum sage ich das? Aus Sicherheitsgründen akzeptieren Broker im Allgemeinen keinen Zugriff über Sockets. Es gibt ein spezielles Protokoll für eine solche Interaktion, das speziell dafür entwickelt wurde, Unterbrechungen in den internen Mechanismen des Brokers zu verhindern. Aber es ist nicht unmöglich, es zu versuchen. Sie können Ihnen das Kommunikationsprotokoll mitteilen, damit Sie darauf zugreifen können, wenn es Ihnen passt. Aber glauben Sie nicht, dass dies einfach sein wird, es sei denn, Sie haben einen SEHR engen Freund bei der Maklerfirma, der Ihnen die benötigten Informationen geben kann.
Ein weiterer Punkt, der mir aufgefallen ist, ist die Interaktion und der Informationsaustausch zwischen zwei verschiedenen Instanzen von MetaTrader 5. Meiner bescheidenen Meinung nach ist das, was Sie zu tun versuchen, keine gute Idee. Sie verstehen einige Konzepte der parallelen Programmierung und die damit verbundenen Probleme nicht. Wenn es Ihnen nichts ausmacht, versuchen Sie, die "Producer-Consumer"-Aufgabe zu studieren. Es wird Ihnen helfen, die Komplexität und die Fallstricke zu verstehen, die bei der Übertragung von Informationen zwischen verschiedenen MetaTrader 5-Instanzen zu Handelszwecken auftreten können.
Wie auch immer, viel Glück mit Ihrem Projekt 🙂👍
Ihre Frage ist relevant und interessant. Aber ich denke, Sie ziehen voreilige Schlüsse. Lassen Sie mich klarstellen: Obwohl MQL5 Sockets implementiert, wie ich in meinen Artikeln erkläre, erlaubt es Ihnen nicht, einen Server zu erstellen. Nur einen Client. Daher ist vieles von dem, was Sie vorhaben, unmöglich. ES IST UNMÖGLICH in MQL5 implementiert werden. Sie werden externen Code benötigen. In Ihrem Fall erwähnen Sie die Verwendung von Python, was an sich schon eine Lösung ist.
Tatsächlich kann vieles von dem, was Sie brauchen, in Python implementiert werden. Allerdings gibt es ein kleines Problem bei dem, was Sie versuchen: die direkte Interaktion mit dem Broker. Warum sage ich das? Aus Sicherheitsgründen akzeptieren Broker im Allgemeinen keinen Zugriff über Sockets. Es gibt ein spezielles Protokoll für eine solche Interaktion, das speziell dafür entwickelt wurde, Unterbrechungen in den internen Mechanismen des Brokers zu verhindern. Aber es ist nicht unmöglich, es zu versuchen. Sie können Ihnen das Kommunikationsprotokoll mitteilen, damit Sie darauf zugreifen können, wenn es Ihnen passt. Aber glauben Sie nicht, dass dies einfach sein wird, es sei denn, Sie haben einen SEHR engen Freund bei der Maklerfirma, der Ihnen die benötigten Informationen geben kann.
Eine weitere Sache, die mir aufgefallen ist, ist die Interaktion und der Informationsaustausch zwischen zwei verschiedenen Instanzen von MetaTrader 5. Meiner bescheidenen Meinung nach ist das, was Sie hier versuchen, keine gute Idee. Sie verstehen einige Konzepte der parallelen Programmierung und die damit verbundenen Probleme nicht. Wenn es Ihnen nichts ausmacht, versuchen Sie, die "Producer-Consumer"-Aufgabe zu studieren. Dies wird Ihnen helfen, den Grad der Komplexität und die Fallstricke zu verstehen, auf die Sie stoßen können, wenn Sie Informationen zwischen verschiedenen MetaTrader 5-Instanzen zu Handelszwecken übertragen.
Wie auch immer, viel Glück mit Ihrem Projekt 🙂👍
DANKE für Ihr Feedback..... keine freunde in brokerages!!! ) habe MT5 terminals in zwei verschiedenen brokerages! muss sie zu freunden machen..... ) das ist ein Projekt für nächstes Jahr!!!
Hier - ein Versuch... danke für die Artikel - ich lese sie und studiere den Inhalt!!! wenn die Geschwindigkeit es zulässt - kann ich es direkt über die Dateien machen.... Zugang - wie bei früheren Festplatten, die im Bios in zwei Teilen angeschlossen waren: ein Master und ein Slave... )
also hier... auf einem leistungsfähigen Computer zwei MT5 Terminals ein Master (der Haupt) - der andere Slave (der zweite), auf dem einen die Börse - auf dem anderen MT5 Forex! vielleicht Realisierung über Dateien ) Lesen - Schreiben wird reichen ... aber ich würde gerne eine schnellere einfach in Bezug auf Lesen - Empfangen von Daten Variante.... nach Art der globalen Variablen des Client-Terminals (ich benutze keine Dateien - lange Zeit), aber globale Variablen des Client-Terminals sind nur in diesem Terminal sichtbar..... Sie müssen externe Prozesse verbinden... vielleicht Tabellen im Speicher erstellen... wie dll Bibliotheken der Verbindung werde ich realisieren!!!
Einen schönen Tag noch!
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Neuer Artikel Marktsimulation (Teil 12): Sockets (VI) :
Im vorangegangenen Artikel „Marktmodellierung (Teil 11): Sockets (V)“ haben wir erklärt, wie man eine Python-Anwendung zur Verwendung in Excel erstellt. Der Zweck dieser Anwendung war es, zu demonstrieren, wie man einen Echo-Server in Python erstellt. Es zeichnete sich dadurch aus, dass die Daten zu den Verbindungs- und Trennungsereignissen direkt in Excel angezeigt wurden.
In Wahrheit ist dieser Server für uns nicht besonders nützlich, vor allem, weil er nur eine einzige Verbindung zulässt – und Server, die nur für eine einzige Verbindung ausgelegt sind, sind von begrenztem praktischen Wert. Ich möchte jedoch nicht, dass Sie sich zu sehr mit diesem Detail aufhalten. Ziel war es zu zeigen, wie ein in Python geschriebenes Skript transparent in Excel arbeiten kann. Aber für unsere tatsächlichen Bedürfnisse muss der Server etwas fortschrittlicher sein. Um dies zu erreichen, müssen wir mehrere zusätzliche Funktionen implementieren.
Das Ziel ist hier nicht, eine produktionsreife Anwendung zu erstellen. Wie bereits erwähnt, sind Sockets ein sehr komplexes Thema, für dessen Erforschung man viel Zeit aufwenden muss. Erwarten Sie nicht, dass Sie an nur einem Tag etwas wirklich Robustes und Ausgefeiltes entwickeln können. Wenn man sich mit Sockets beschäftigt, muss man sich mit vielen Details befassen – manche sind einfacher, andere sind wesentlich komplizierter.
In diesem Artikel werden wir nicht direkt mit Excel oder MQL5 arbeiten. Im Falle von MQL5 werden wir es jedoch verwenden können. Genauer gesagt, werden wir uns auf das stützen, was in dieser Reihe bereits entwickelt wurde. Für ein vollständiges Verständnis der Materie ist es auch hilfreich, sich anzusehen, was bereits in MQL5 implementiert wurde.
Autor: Daniel Jose