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
Neuer Artikel Entwicklung eines MQTT-Clients für MetaTrader 5: ein TDD-Ansatz - Teil 2 :
Dieser Artikel ist Teil einer Serie, die unsere Entwicklungsschritte für einen nativen MQL5-Client für das MQTT-Protokoll beschreibt. In diesem Teil beschreiben wir unsere Code-Organisation, die ersten Header-Dateien und Klassen, und wie wir unsere Tests schreiben. Dieser Artikel enthält auch kurze Hinweise auf die Praxis der testgetriebenen Entwicklung und wie wir sie in diesem Projekt anwenden.
Die Erstellung konformer MQTT-Pakete ist nur der erste Schritt bei der Entwicklung eines robusten und wartbaren Clients. Der einfachste Teil, wie man so schön sagt. Wenn es um die Spezifikation des Betriebsverhaltens geht, werden alle Komplexitäten des Protokolls deutlich. Diese Komplexität wird uns als Entwickler mehr abverlangen. Neben dem Versenden guter Pakete müssen wir uns mit einer großen Anzahl unterschiedlicher Serverantworten und unterschiedlichen Anwendungszuständen auseinandersetzen. An diesem Punkt reichen hartkodierte Byte-Arrays – oder überhaupt alles Hartkodierte – nicht mehr aus.
Glücklicherweise ist MQL5 eine objektorientierte Programmiersprache und wir arbeiten nicht in der speicher- und rechenintensiven Umgebung, für die MQTT ursprünglich entwickelt wurde. So können wir alle Vorteile des objektorientierten Paradigmas (OOP) nutzen, um zu haben:
Jetzt können wir unseren lokalen Mosquitto-Broker auf der WSL ausführen, um zu prüfen, ob unsere MQTT-Verbindung erfolgreich war.
Wenn Sie die Standardinstallation befolgt haben, sollte Mosquito als Dienst unter Linux laufen. Sie müssen also nur die Ports umleiten (80 → 1883) und den Hostnamen in die zulässigen URLs in Ihren Metatrader 5-Optionen aufnehmen.
Autor: Jocimar Lopes