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.
Entwicklung eines MQTT-Clients für Metatrader 5: ein TDD-Ansatz — Teil 4
Dieser Artikel ist der vierte Teil einer Serie, die unsere Entwicklungsschritte für einen nativen MQL5-Client für das MQTT-Protokoll beschreibt. In diesem Teil beschreiben wir, was MQTT v5.0 Properties sind, ihre Semantik, wie wir einige von ihnen lesen, und geben ein kurzes Beispiel, wie die Eigenschaften (Properties) zur Erweiterung des Protokolls verwendet werden können.
Aufbau des Kerzenmodells Trend Constraint (Teil 9): Expert Advisor für mehrere Strategien (II)
Die Zahl der Strategien, die in einen Expert Advisor integriert werden können, ist praktisch unbegrenzt. Jede zusätzliche Strategie erhöht jedoch die Komplexität des Algorithmus. Durch die Einbeziehung mehrerer Strategien kann sich ein Expert Advisor besser an unterschiedliche Marktbedingungen anpassen, was seine Rentabilität erhöhen kann. Heute werden wir uns mit der Implementierung von MQL5 für eine der bekannten, von Richard Donchian entwickelten Strategien befassen, da wir die Funktionalität unseres Trend Constraint Expert weiter verbessern wollen.
Erstellen eines Keltner-Kanal-Indikators mit nutzerdefinierten Canvas-Grafiken in MQL5
In diesem Artikel bauen wir einen Keltner-Kanal-Indikator mit nutzerdefinierten Canvas-Grafiken in MQL5. Wir erläutern die Integration von gleitenden Durchschnitten, ATR-Berechnungen und verbesserter Chartvisualisierung. Wir behandeln auch die Backtests, um die Leistung des Indikators für praktische Handelseinblicke zu bewerten.
Der Body im Connexus (Teil 4): Hinzufügen des HTTP-Hauptteils
In diesem Artikel werden wir das Konzept des Body in HTTP-Anfragen untersuchen, das für das Senden von Daten wie JSON und Klartext unerlässlich ist. Wir besprechen und erklären, wie man es richtig mit den entsprechenden Kopfzeilen verwendet. Wir haben auch die Klasse ChttpBody eingeführt, die Teil der Connexus-Bibliothek ist und die Arbeit mit dem Body von Anfragen vereinfacht.
Kategorientheorie in MQL5 (Teil 10): Monoide Gruppen
Dieser Artikel setzt die Serie über die Implementierung der Kategorientheorie in MQL5 fort. Hier betrachten wir Monoidgruppen als Mittel zur Normalisierung von Monoidmengen, um sie über eine größere Bandbreite von Monoidmengen und Datentypen hinweg vergleichbar zu machen.
Entwicklung eines MQTT-Clients für Metatrader 5: ein TDD-Ansatz - Teil 5
Dieser Artikel ist der fünfte Teil einer Serie, die unsere Entwicklungsschritte für einen nativen MQL5-Client für das MQTT 5.0-Protokoll beschreibt. In diesem Teil beschreiben wir die Struktur von PUBLISH-Paketen, wie wir ihre Publish Flags setzen, Topic Name(s) Strings kodieren und Packet Identifier(s) setzen, falls erforderlich.
Integration von MQL5 in Datenverarbeitungspakete (Teil 1): Fortgeschrittene Datenanalyse und statistische Verarbeitung
Die Integration ermöglicht einen nahtlosen Arbeitsablauf, bei dem Finanzrohdaten aus MQL5 in Datenverarbeitungspakete wie Jupyter Lab für erweiterte Analysen einschließlich statistischer Tests importiert werden können.
Aufbau des Kerzenmodells Trend-Constraint (Teil 7): Verfeinerung unseres Modells für die EA-Entwicklung
In diesem Artikel werden wir uns mit der detaillierten Vorbereitung unseres Indikators für die Entwicklung von Expert Advisor (EA) befassen. Unsere Diskussion wird weitere Verfeinerungen der aktuellen Version des Indikators umfassen, um seine Genauigkeit und Funktionsweise zu verbessern. Außerdem werden wir neue Funktionen einführen, die Ausstiegspunkte markieren und damit eine Einschränkung der Vorgängerversion beheben, die nur Einstiegspunkte kennzeichnete.
Entwicklung eines MQTT-Clients für MetaTrader 5: ein TDD-Ansatz — Finale
Dieser Artikel ist der letzte Teil einer Serie, die unsere Entwicklungsschritte für einen nativen MQL5-Client für das MQTT 5.0-Protokoll beschreibt. Obwohl die Bibliothek noch nicht produktionsreif ist, werden wir in diesem Teil unseren Client verwenden, um ein nutzerdefiniertes Symbol mit Ticks (oder Kursen) zu aktualisieren, die von einem anderen Broker stammen. Am Ende dieses Artikels finden Sie weitere Informationen über den aktuellen Status der Bibliothek, was ihr noch fehlt, um vollständig mit dem MQTT 5.0-Protokoll kompatibel zu sein, eine mögliche Roadmap und wie Sie die Entwicklung verfolgen und zu ihr beitragen können.
Aufbau des Kerzenmodells Trend-Constraint (Teil 5): Nachrichtensystem (Teil I)
Wir werden den Hauptcode von MQL5 in bestimmte Codeschnipsel aufteilen, um die Integration von Telegram und WhatsApp für den Empfang von Signalnachrichten von dem Trend Constraint-Indikator zu veranschaulichen, den wir in dieser Artikelserie erstellen. Dies wird sowohl Anfängern als auch erfahrenen Entwicklern helfen, das Konzept leicht zu verstehen. Zunächst werden wir die Einrichtung von MetaTrader 5 für Nachrichten und deren Bedeutung für den Nutzer behandeln. Dies wird den Entwicklern helfen, im Voraus Notizen zu machen, die sie dann in ihren Systemen anwenden können.
Stimmungsanalyse auf Twitter mit Sockets
Dieser innovative Trading-Bot integriert MetaTrader 5 mit Python, um die Stimmungsanalyse sozialer Medien in Echtzeit für automatisierte Handelsentscheidungen zu nutzen. Durch die Analyse der Twitter-Stimmung in Bezug auf bestimmte Finanzinstrumente übersetzt der Bot Trends in den sozialen Medien in umsetzbare Handelssignale. Es nutzt eine Client-Server-Architektur mit Socket-Kommunikation, die eine nahtlose Interaktion zwischen den Handelsfunktionen von MT5 und der Datenverarbeitungsleistung von Python ermöglicht.
Kategorientheorie in MQL5 (Teil 2)
Die Kategorientheorie ist ein vielfältiger und expandierender Zweig der Mathematik, der in der MQL-Gemeinschaft noch relativ unentdeckt ist. In dieser Artikelserie sollen einige der Konzepte vorgestellt und untersucht werden, mit dem übergeordneten Ziel, eine offene Bibliothek einzurichten, die zu Kommentaren und Diskussionen anregt und hoffentlich die Nutzung dieses bemerkenswerten Bereichs für die Strategieentwicklung der Händler fördert.
Algorithmen zur Optimierung mit Populationen: Evolution sozialer Gruppen (ESG)
Wir werden das Prinzip des Aufbaus von Algorithmen mit mehreren Populationen besprechen. Als Beispiel für diese Art von Algorithmus werden wir uns den neuen nutzerdefinierten Algorithmus - Evolution of Social Groups (ESG) - ansehen. Wir werden die grundlegenden Konzepte, die Mechanismen der Populationsinteraktion und die Vorteile dieses Algorithmus analysieren und seine Leistung bei Optimierungsproblemen untersuchen.
Wirtschaftsprognosen: Erkunden des Potenzials von Python
Wie kann man die Wirtschaftsdaten der Weltbank für Prognosen nutzen? Was passiert, wenn man KI-Modelle und Wirtschaft kombiniert?
Kategorientheorie in MQL5 (Teil 3)
Die Kategorientheorie ist ein vielfältiger und expandierender Zweig der Mathematik, der in der MQL-Gemeinschaft noch relativ unentdeckt ist. In dieser Artikelserie sollen einige der Konzepte vorgestellt und untersucht werden, mit dem übergeordneten Ziel, eine offene Bibliothek einzurichten, die Einblicke gewährt und hoffentlich die Nutzung dieses bemerkenswerten Bereichs für die Strategieentwicklung von Händlern fördert.
Erstellen eines Handelsadministrator-Panels in MQL5 (Teil I): Aufbau einer Nachrichtenschnittstelle
Dieser Artikel beschreibt die Erstellung einer Nachrichtenschnittstelle (Messaging Interface) für MetaTrader 5, die sich an Systemadministratoren richtet, um die Kommunikation mit anderen Händlern direkt auf der Plattform zu erleichtern. Jüngste Integrationen von sozialen Plattformen mit MQL5 ermöglichen eine schnelle Signalübertragung über verschiedene Kanäle. Stellen Sie sich vor, Sie könnten gesendete Signale mit nur einem Klick validieren - entweder „JA“ oder „NEIN“ bzw. „YES“ or „NO“. Lesen Sie weiter, um mehr zu erfahren.
Entwicklung eines Expertenberaters für mehrere Währungen (Teil 10): Erstellen von Objekten aus einer Zeichenkette
Der EA-Entwicklungsplan umfasst mehrere Stufen, wobei die Zwischenergebnisse in der Datenbank gespeichert werden. Sie können von dort nur als Zeichenketten oder Zahlen wieder abgerufen werden, nicht als Objekte. Wir brauchen also eine Möglichkeit, die gewünschten Objekte im EA anhand der aus der Datenbank gelesenen Strings neu zu erstellen.
Entwicklung eines MQL5 RL-Agenten mit Integration von RestAPI (Teil 4): Organisieren von Funktionen in Klassen in MQL5
In diesem Artikel wird der Übergang von der prozeduralen Codierung zur objektorientierten Programmierung (OOP) in MQL5 mit Schwerpunkt auf der Integration mit der REST-API erörtert. Heute werden wir besprechen, wie HTTP-Anfragefunktionen (GET und POST) in Klassen organisiert werden können. Wir werden einen genaueren Blick auf das Refactoring von Code werfen und zeigen, wie isolierte Funktionen durch Klassenmethoden ersetzt werden können. Der Artikel enthält praktische Beispiele und Tests.
Erstellen eines Administrator-Panels für den Handel in MQL5 (Teil III): Verbesserung der grafischen Nutzeroberfläche mit visuellem Styling (I)
In diesem Artikel werden wir uns auf die visuelle Gestaltung der grafischen Nutzeroberfläche (GUI) unseres Trading Administrator Panels mit MQL5 konzentrieren. Wir werden verschiedene in MQL5 verfügbare Techniken und Funktionen erkunden, die eine Anpassung und Optimierung der Schnittstelle ermöglichen, um sicherzustellen, dass sie den Bedürfnissen der Händler entspricht und gleichzeitig eine attraktive Ästhetik beibehält.
Entwicklung eines Toolkit zur Analyse von Preisaktionen (Teil 7): Der EA Signal Pulse
Nutzen Sie das Potenzial der Multi-Timeframe-Analyse mit „Signal Pulse“, einem MQL5 Expert Advisor, der Bollinger Bänder und den Stochastik Oszillator integriert, um präzise, hochwahrscheinliche Handelssignale zu liefern. Erfahren Sie, wie Sie diese Strategie umsetzen und Kauf- und Verkaufschancen mithilfe von nutzerdefinierten Pfeilen effektiv visualisieren können. Ideal für Händler, die ihr Urteilsvermögen durch automatisierte Analysen über mehrere Zeitrahmen hinweg verbessern möchten.
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 17): Handel mit mehreren Währungen
Der Handel mit mehreren Währungen ist nicht standardmäßig verfügbar, wenn ein Expertenberater über den Assistenten zusammengestellt wird. Wir untersuchen 2 mögliche Hacks, die Händler machen können, wenn sie ihre Ideen mit mehr als einem Symbol gleichzeitig testen wollen.
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 21): Testen mit Wirtschaftskalenderdaten
Die Daten des Wirtschaftskalenders sind standardmäßig nicht für das Testen mit Expert Advisors im Strategy Tester verfügbar. Wir sehen uns an, wie Datenbanken helfen können, diese Einschränkung zu umgehen. In diesem Artikel untersuchen wir, wie SQLite-Datenbanken verwendet werden können, um Wirtschaftskalender-Nachrichten zu archivieren, sodass assistentengestützte Expert Advisors diese nutzen können, um Handelssignale zu generieren.
Aufbau eines nutzerdefinierten Systems zur Erkennung von Marktregimen in MQL5 (Teil 1): Der Indikator
Dieser Artikel beschreibt die Erstellung eines MQL5-Systems zur Erkennung von Marktregimen unter Verwendung statistischer Methoden wie Autokorrelation und Volatilität. Es enthält Code für Klassen zur Klassifizierung von Trend-, Spannen- und Volatilitätsbedingungen sowie einen nutzerdefinierten Indikator.
Algorithmen zur Optimierung mit Populationen: Widerstand gegen das Steckenbleiben in lokalen Extremen (Teil I)
In diesem Artikel wird ein einzigartiges Experiment vorgestellt, das darauf abzielt, das Verhalten von Populationsoptimierungsalgorithmen im Zusammenhang mit ihrer Fähigkeit zu untersuchen, lokale Minima bei geringer Populationsvielfalt effizient zu umgehen und globale Maxima zu erreichen. Die Arbeit in dieser Richtung wird weitere Erkenntnisse darüber liefern, welche spezifischen Algorithmen ihre Suche mit den vom Nutzer festgelegten Koordinaten als Ausgangspunkt erfolgreich fortsetzen können und welche Faktoren ihren Erfolg beeinflussen.
MQL5-Assistent-Techniken, die Sie kennen sollten (Teil 22): Conditional GANs
Generative Adversarial Networks (GAN) sind eine Kombination von neuronalen Netzen, die sich gegenseitig trainieren, um genauere Ergebnisse zu erzielen. Wir nehmen den bedingten Typ dieser Netze an, da wir eine mögliche Anwendung bei der Vorhersage von Finanzzeitreihen innerhalb einer Klasse von Expertensignalen anstreben.
Entwicklung eines Expert Advisors für mehrere Währungen (Teil 20): Ordnung in den Ablauf der automatischen Projektoptimierungsphasen bringen (I)
Wir haben bereits eine ganze Reihe von Komponenten entwickelt, die bei der automatischen Optimierung helfen. Bei der Erstellung folgten wir der traditionellen zyklischen Struktur: von der Erstellung eines minimalen funktionierenden Codes bis hin zum Refactoring und dem Erhalt eines verbesserten Codes. Es ist an der Zeit, mit dem Aufräumen unserer Datenbank zu beginnen, die auch eine Schlüsselkomponente in dem von uns geschaffenen System ist.
Propensity Score in der Kausalinferenz
Der Artikel befasst sich mit dem Thema Abgleich von Kausalschlüssen. Der Abgleich wird für den Vergleich sich ähnlichen Beobachtungen in einem Datensatz. Dies ist notwendig, um kausale Wirkungen korrekt zu bestimmen und Verzerrungen zu beseitigen. Der Autor erklärt, wie dies beim Aufbau von Handelssystemen auf der Grundlage des maschinellen Lernens hilft, die bei neuen Daten, auf denen sie nicht trainiert wurden, stabiler werden. Der Propensity Score (Tendenzbewertung) spielt eine zentrale Rolle und wird häufig bei Kausalschlüssen verwendet.
Finden von nutzerdefinierten Währungspaar-Mustern in Python mit MetaTrader 5
Gibt es auf dem Devisenmarkt wiederkehrende Muster und Regelmäßigkeiten? Ich beschloss, mein eigenes System zur Musteranalyse mit Python und MetaTrader 5 zu entwickeln. Eine Art Symbiose aus Mathematik und Programmierung zur Eroberung des Forex.
Entwicklung eines Toolkit zur Analyse von Preisaktionen (Teil 12): External Flow (III) TrendMap
Das Marktgeschehen wird von den Kräften zwischen Bullen und Bären bestimmt. Es gibt bestimmte Niveaus, die der Markt aufgrund der auf ihn wirkenden Kräfte einhält. Fibonacci- und VWAP-Levels sind besonders wirkungsvoll, um das Marktverhalten zu beeinflussen. Begleiten Sie mich in diesem Artikel bei der Erforschung einer Strategie, die auf VWAP und Fibonacci-Levels zur Signalgenerierung basiert.
Erste Schritte mit MQL5 Algo Forge
Wir stellen die MQL5 Algo Forge vor – ein spezielles Portal für Entwickler des algorithmischem Handels. Es kombiniert die Leistungsfähigkeit von Git mit einer intuitiven Oberfläche für die Verwaltung und Organisation von Projekten innerhalb des MQL5-Ökosystems. Hier können Sie interessanten Autoren folgen, Teams bilden und an algorithmischen Handelsprojekten mitarbeiten.
Erstellen eines integrierten MQL5-Telegram Expert Advisors (Teil 2): Senden von Signalen von MQL5 an Telegram
In diesem Artikel erstellen wir einen in MQL5-Telegram integrierten Expert Advisor, der Moving Average Crossover Signale an Telegram sendet. Wir erläutern den Prozess der Erzeugung von Handelssignalen aus gleitenden Durchschnittsübergängen, die Implementierung des erforderlichen Codes in MQL5 und die Sicherstellung der nahtlosen Integration. Das Ergebnis ist ein System, das Handelswarnungen in Echtzeit direkt an Ihren Telegram-Gruppenchat sendet.
Integration von Broker-APIs mit Expert Advisors unter Verwendung von MQL5 und Python
In diesem Artikel besprechen wir die Implementierung von MQL5 in Verbindung mit Python, um brokerbezogene Operationen durchzuführen. Stellen Sie sich vor, dass ein kontinuierlich laufender Expert Advisor (EA) auf einem VPS gehostet wird, der in Ihrem Namen handelt. An einem bestimmten Punkt wird die Fähigkeit des EA, Mittel zu verwalten, von entscheidender Bedeutung. Dazu gehören Vorgänge wie die Aufladung Ihres Handelskontos und die Einleitung von Abhebungen. In dieser Diskussion werden wir die Vorteile und die praktische Umsetzung dieser Funktionen beleuchten, um eine nahtlose Integration des Fondsmanagements in Ihre Handelsstrategie zu gewährleisten. Bleiben Sie dran!
Von Python zu MQL5: Eine Reise in quanteninspirierte Handelssysteme
Der Artikel befasst sich mit der Entwicklung eines quanteninspirierten Handelssystems, das von einem Python-Prototyp zu einer MQL5-Implementierung für den realen Handel übergeht. Das System nutzt die Prinzipien der Quanteninformatik wie Überlagerung und Verschränkung, um Marktzustände zu analysieren, obwohl es auf klassischen Computern mit Quantensimulatoren läuft. Zu den wichtigsten Merkmalen gehören ein Drei-Qubit-System zur gleichzeitigen Analyse von acht Marktzuständen, 24-Stunden-Rückblicke und sieben technische Indikatoren für die Marktanalyse. Auch wenn die Genauigkeitsraten bescheiden erscheinen mögen, bieten sie in Verbindung mit geeigneten Risikomanagementstrategien einen erheblichen Vorteil.
Entwicklung eines Expertenberaters für mehrere Währungen (Teil 8): Belastungstest und Handhabung eines neuen Balkens
Im weiteren Verlauf haben wir immer mehr gleichzeitig laufende Instanzen von Handelsstrategien in einem EA verwendet. Versuchen wir herauszufinden, wie viele Instanzen wir erreichen können, bevor wir an Ressourcengrenzen stoßen.
Künstlicher Algenalgorithmus (AAA)
Der Artikel befasst sich mit dem Künstlichen Algenalgorithmus (AAA), der auf den für Mikroalgen charakteristischen biologischen Prozessen beruht. Der Algorithmus umfasst eine Spiralbewegung, einen evolutionären Prozess und eine Anpassung, die es ihm ermöglicht, Optimierungsprobleme zu lösen. Der Artikel bietet eine eingehende Analyse der Funktionsprinzipien der AAA und ihres Potenzials für die mathematische Modellierung, wobei die Verbindung zwischen Natur und algorithmischen Lösungen hervorgehoben wird.
Erstellen eines integrierten MQL5-Telegram Expert Advisors (Teil 4): Modularisierung von Codefunktionen für bessere Wiederverwendbarkeit
In diesem Artikel wird der bestehende Code für das Senden von Nachrichten und Screenshots (screenshot des Terminals) von MQL5 zu Telegram refaktorisiert, indem er in wiederverwendbare, modulare Funktionen aufgeteilt wird. Dadurch wird der Prozess rationalisiert, was eine effizientere Ausführung und eine einfachere Codeverwaltung über mehrere Instanzen hinweg ermöglicht.
Implementierung von praktischen Modulen aus anderen Sprachen in MQL5 (Teil 02): Aufbau der REQUESTS-Bibliothek, inspiriert von Python
In diesem Artikel implementieren wir ein Modul, das den in Python angebotenen Anfragen ähnelt, um das Senden und Empfangen von Web-Anfragen in MetaTrader 5 mit MQL5 zu erleichtern.
Entwicklung eines Toolkit zur Analyse von Preisaktionen (Teil 9): External Flow
In diesem Artikel wird eine neue Dimension der Analyse unter Verwendung externer Bibliotheken untersucht, die speziell für fortgeschrittene Analysen entwickelt wurden. Diese Bibliotheken, wie z. B. Pandas, bieten leistungsstarke Werkzeuge für die Verarbeitung und Interpretation komplexer Daten, die es Händlern ermöglichen, tiefere Einblicke in die Marktdynamik zu gewinnen. Durch die Integration solcher Technologien können wir die Lücke zwischen Rohdaten und umsetzbaren Strategien schließen. Begleiten Sie uns, wenn wir den Grundstein für diesen innovativen Ansatz legen und das Potenzial der Kombination von Technologie und Handelskompetenz erschließen.
Erstellen von MQL5-ähnlichen Handelsklassen in Python für MetaTrader 5
Das MetaTrader 5 Python-Paket bietet eine einfache Möglichkeit, Handelsanwendungen für die MetaTrader 5-Plattform in der Sprache Python zu erstellen. Obwohl dieses Modul ein leistungsstarkes und nützliches Werkzeug ist, ist es nicht so einfach wie die MQL5-Programmiersprache, wenn es darum geht, eine algorithmische Handelslösung zu erstellen. In diesem Artikel werden wir Handelsklassen erstellen, die den in MQL5 angebotenen ähnlich sind, um eine ähnliche Syntax zu schaffen und es einfacher zu machen, Handelsroboter in Python wie in MQL5 zu erstellen.