Ermittlung fairer Wechselkurse anhand von KKP- und IWF-Daten
Entwicklung eines Python-Systems zur Wechselkursanalyse auf Basis der Kaufkraftparität (KKP). Der Autor entwickelte einen Algorithmus mit fünf Methoden zur Berechnung fairer Wechselkurse auf Basis von IWF-Daten. Ein praktischer Leitfaden zur fundamentalen Währungsanalyse, zur Auswertung wirtschaftlicher Daten und zur Integration in Handelssysteme. Der vollständige Code ist als Open Source verfügbar.
Algorithmus der Delfin-Echoortung (DEA)
In diesem Artikel befassen wir uns näher mit dem DEA-Algorithmus, einem metaheuristischen Optimierungsverfahren, das von der einzigartigen Fähigkeit der Delfine inspiriert ist, Beute mithilfe der Echoortung aufzuspüren. Von den mathematischen Grundlagen bis zur praktischen Umsetzung in MQL5, von der Analyse bis zum Vergleich mit klassischen Algorithmen werden wir eingehend untersuchen, warum diese relativ neue Methode einen Platz im Werkzeugkasten von Forschern verdient, die sich mit Optimierungsproblemen befassen.
IWF-Daten mit Python herunterladen
Die Daten des Internationalen Währungsfonds in Python abrufen: Auswertung von IWF-Daten zur Verwendung in makroökonomischen Währungsstrategien. Inwiefern kann die Makroökonomie einem normalen wie auch einem algorithmischen Trader helfen?
Eagle-Strategie (ES)
Eagle Strategy ist ein Algorithmus, der die zweistufige Jagdstrategie des Adlers nachahmt: eine globale Suche mittels Levy-Flügen unter Verwendung der Mantegna-Methode, abwechselnd mit intensiver lokaler Ausnutzung unter Verwendung des Firefly-Algorithmus – ein mathematisch fundierter Ansatz zum Ausgleich von Erkundung und Ausnutzung sowie ein bioinspiriertes Konzept, das zwei Naturphänomene in einem einzigen Algorithmus vereint.
Marktsimulation (Teil 24): Erste Schritte mit SQL (VII)
Im vorherigen Artikel haben wir die notwendige Einführung in SQL abgeschlossen. Und meiner Meinung nach haben wir klar dargelegt, was wir über SQL zeigen und erklären wollten. Dies geschah, damit sich jeder, der sich das derzeit im Aufbau befindliche Markt-Replay-/Simulationssystem ansieht, zumindest ein Bild davon machen kann, was dort vor sich geht. Der Punkt ist, dass es keinen Sinn ergibt, Funktionen selbst zu programmieren, die SQL bereits perfekt übernimmt.
Biogeografisch basierte Optimierung (BBO)
Die biogeografische Optimierung (BBO) ist ein elegantes Verfahren zur globalen Optimierung, das von den natürlichen Prozessen der Artenmigration zwischen Inseln eines Archipels inspiriert ist. Der Algorithmus basiert auf einer einfachen, aber wirkungsvollen Idee: Hochwertige Lösungen geben ihre Eigenschaften aktiv weiter, während minderwertige Lösungen aktiv neue Merkmale übernehmen, wodurch ein natürlicher Informationsfluss von den besten zu den schlechtesten Lösungen entsteht. Ein einzigartiger adaptiver Mutationsoperator sorgt für ein hervorragendes Gleichgewicht zwischen Exploration und Exploitation. BBO zeigt bei einer Vielzahl von Aufgaben eine hohe Effizienz.
CFTC-Datenanalyse in Python und Erstellung eines KI-Modells
Versuchen wir doch einmal, CFTC-Daten auszuwerten, COT- und TFF-Berichte über Python herunterzuladen, all dies mit den Kursdaten von MetaTrader 5 und einem KI-Modell zu verknüpfen und Prognosen zu erstellen. Was sind COT-Berichte auf dem Devisenmarkt? Wie nutzt man COT- und TFF-Berichte für Prognosen?
Marktsimulation (Teil 23): Erste Schritte mit SQL (VI)
In diesem Artikel werden wir sehen, wie man eine Datenbank visualisiert und daraus ihre Struktur versteht. Dies geschieht durch die Analyse ihrer internen Struktur. Auch wenn dies auf den ersten Blick unnötig erscheinen mag, ist es durchaus gerechtfertigt, wenn wir wirklich Datenbankadministratoren werden wollen. Schließlich verdienen manche Menschen ihren Lebensunterhalt damit, Datenbanken zu pflegen und zu entwerfen.
Evolutionäre Strategie zur Anpassung der Kovarianzmatrix (CMA-ES)
Der Artikel befasst sich mit einem der interessantesten gradientenfreien Optimierungsalgorithmen, der lernt, die Geometrie der Zielfunktion zu verstehen. Wir werden uns auf die klassische Implementierung von CMA-ES konzentrieren, mit einer kleinen Änderung: Die Normalverteilung wird durch die Potenzgesetzverteilung ersetzt. Wir werden sowohl die mathematischen Grundlagen des Algorithmus als auch dessen praktische Umsetzung eingehend untersuchen und prüfen, in welchen Fällen CMA-ES unübertroffen ist und in welchen Fällen es vermieden werden sollte.
Entwicklung eines Expert Advisors für mehrere Währungen (Teil 27): Komponente zur Anzeige von mehrzeiligem Text
Wenn Text in einem Chart angezeigt werden soll, können wir die Funktion „Comment()“ verwenden. Aber ihre Möglichkeiten sind recht begrenzt. Daher werden wir in diesem Artikel eine eigene Komponente erstellen – ein Dialogfenster über die gesamte Chartfläche, das mehrzeiligen Text mit flexiblen Schriftarteneinstellungen und Scroll-Unterstützung anzeigen kann.
Python-MetaTrader 5 Strategie-Tester (Teil 01): Handelssimulator
Das MetaTrader-5-Modul für Python ermöglicht es, Trades bequem über Python in der MetaTrader-5-Anwendung zu eröffnen. Es hat jedoch einen großen Nachteil: Die im MetaTrader-5-Terminal verfügbare Funktion des Strategietesters fehlt. In dieser Artikelserie werden wir ein Framework für das Backtesting Ihrer Handelsstrategien in Python-Umgebungen aufbauen.
Einführung in MQL5 (Teil 38): Beherrschung von API und WebRequest in MQL5 (XII)
Wir erstellen eine praktische Brücke zwischen MetaTrader 5 und Binance: Wir holen 30-Minuten-Klines mit WebRequest, extrahieren OHLC/Zeitwerte aus JSON und bestätigen ein bullisches Engulfing-Muster, indem wir nur geschlossene Kerzen verwenden. Dann setzen wir die Zeichenkette für die Abfrage zusammen, berechnen die HMAC-SHA256-Signatur, fügen X-MBX-APIKEY hinzu und übermitteln authentifizierte Orders. Sie erhalten einen klaren, durchgängigen EA-Workflow von der Datenerfassung bis zur Orderausführung.
Einführung in MQL5 (Teil 37): Beherrschung von API und WebRequest in MQL5 (XI)
In diesem Artikel zeigen wir Ihnen, wie Sie mit MQL5 authentifizierte Anfragen an die Binance-API senden, um Ihren Kontostand für alle Assets abzurufen. Erfahren Sie, wie Sie Ihren API-Schlüssel, die Serverzeit und die Signatur verwenden, um sicher auf Kontodaten zuzugreifen, und wie Sie die Antwort zur späteren Verwendung in einer Datei speichern können.
Graphentheorie: Einsatz von Breadth-First Search (BFS) im Trading
Breadth First Search (BFS) verwendet Level-Order-Traversierung, um die Marktstruktur als einen gerichteten Graphen von Swings zu modellieren, der sich im Zeitverlauf entwickelt. Durch die schichtweise Analyse historischer Bars oder Sitzungen priorisiert BFS das jüngste Kursverhalten und berücksichtigt gleichzeitig die historische Marktprägung.
Vom Einsteiger zum Experten: Statistische Validierung von Angebots- und Nachfragezonen
Heute decken wir die oft übersehene statistische Grundlage hinter den Handelsstrategien für Angebot und Nachfrage auf. Durch die Kombination von MQL5 mit Python über einen Jupyter-Notebook-Workflow führen wir eine strukturierte, datengesteuerte Untersuchung durch, die darauf abzielt, visuelle Marktannahmen in messbare Erkenntnisse zu verwandeln. Dieser Artikel behandelt den gesamten Forschungsprozess, einschließlich der Datenerfassung, der Python-basierten statistischen Analyse, des Algorithmusentwurfs, der Tests und der endgültigen Schlussfolgerungen. Um die Methodik und die Ergebnisse im Detail nachzuvollziehen, lesen Sie den vollständigen Artikel.
Integration externer Anwendungen mit MQL5 Community OAuth
Erfahren Sie, wie Sie Ihrer Android-App mit dem OAuth-2.0-Autorisierungscodefluss die Funktion „Sign in with MQL5“ hinzufügen. Die Anleitung behandelt die App-Registrierung, Endpunkte, Redirect URI, Custom Tabs, Deep-Link-Handling und ein PHP-Backend, das den Code für ein Access-Token über HTTPS austauscht. Sie werden echte MQL5-Nutzer authentifizieren und auf Profildaten wie Rang und Ruf zugreifen.
Marktsimulation (Teil 20): Erste Schritte mit SQL (III)
Obwohl wir Operationen mit einer Datenbank mit etwa 10 Datensätzen durchführen können, lässt sich das Thema deutlich besser verstehen, wenn wir mit einer Datei arbeiten, die mehr als 15 Tausend Datensätze enthält. Das heißt, wenn wir versuchen würden, eine solche Datenbank manuell zu erstellen, wäre dies ein enormer Aufwand. Es ist jedoch selbst zu Lernzwecken schwierig, eine solche Datenbank zum Download zu finden. Aber in Wirklichkeit müssen wir nicht darauf zurückgreifen – wir können MetaTrader 5 verwenden, um eine Datenbank für uns zu erstellen. Im heutigen Artikel werden wir uns ansehen, wie man das macht.
Implementierung eines Break-Even-Mechanismus in MQL5 (Teil 1): Basisklasse und Break-Even-Modus auf Basis fester Punkte
Dieser Artikel befasst sich mit der Anwendung eines Break-Even-Mechanismus in automatisierten Strategien, die die Sprache MQL5 verwenden. Wir beginnen mit einer einfachen Erklärung, was der Break-Even-Modus ist, wie er umgesetzt wird und welche Varianten möglich sind. Als Nächstes wird diese Funktionalität in den Expert Advisor Order Blocks integriert, den wir in unserem letzten Artikel über Risikomanagement erstellt haben. Um seine Wirksamkeit zu bewerten, werden wir zwei Backtests unter bestimmten Bedingungen durchführen: einen mit und einen ohne Break-Even-Mechanismus.
Marktsimulation (Teil 19): Erste Schritte mit SQL (II)
Wie wir im ersten Artikel über SQL erklärt haben, ist es sinnlos, Zeit in die Programmierung von Prozeduren zu investieren, um das zu tun, was bereits in SQL integriert ist. Ohne die Grundlagen zu kennen, werden Sie jedoch nicht in der Lage sein, irgendetwas mit SQL zu tun oder die Vorteile dieses Tools voll auszuschöpfen. In diesem Artikel werden wir uns daher ansehen, wie man grundlegende Aufgaben in Datenbanken durchführt.
Marktsimulation (Teil 18): Erste Schritte mit SQL (I)
Es spielt keine Rolle, welches SQL-Programm wir verwenden: MySQL, SQL Server, SQLite, OpenSQL oder andere. Allen gemeinsam ist die Sprache SQL. Auch wenn wir nicht vorhaben, Workbench zu verwenden, können wir die Datenbank direkt in MetaEditor oder über MQL5 manipulieren oder mit ihr arbeiten, um Aktionen in MetaTrader 5 auszuführen, aber dazu benötigen Sie SQL-Kenntnisse. Hier werden wir also zumindest die Grundlagen lernen.
Von der CPU zur GPU in MQL5: Ein praktisches OpenCL-Framework zur Beschleunigung von Analysen, Optimierungen und Mustererkennung
Erfahren Sie, wie sich in MQL5 mit OpenCL ein praxisnaher Migrationspfad von der CPU zur GPU aufbauen lässt. Wir werden uns auf die Kontextinitialisierung, die Pufferorganisation, große Datenbatches, den Start des Kernels und die Minimierung des Datenaustauschs konzentrieren. Typische Fehler und Möglichkeiten zu ihrer Behebung werden ebenfalls behandelt. Ein Beispiel mit Kerzenmustern verdeutlicht den praktischen Nutzen des Ansatzes.
Deterministische oszillatorische Suchmethode (DOS)
Der Algorithmus der deterministischen oszillatorischen Suche (DOS) ist ein innovatives globales Optimierungsverfahren, das die Vorteile von Gradienten- und Schwarmalgorithmen ohne die Verwendung von Zufallszahlen kombiniert. Der Mechanismus der Fitness-Oszillation und der Steigung ermöglicht es DOS, komplexe Suchräume auf deterministische Weise zu erkunden.
Python + MetaTrader 5: Schnelles Forschungs-Framework für Daten, Merkmale und Prototypen
Der Artikel zeigt, wie die Integration von Python und MetaTrader 5 die Flexibilität der Forschung und die Handelsoperationen in einem einzigen Arbeitsablauf vereint. Python wird für die Datenanalyse, die Merkmalsauswahl und das Modelltraining verwendet, während MetaTrader 5 für Tests und die Handelsautomatisierung eingesetzt wird. Dieser Ansatz vereinfacht die Übertragung von Lösungen in die Praxis, erhöht die Reproduzierbarkeit und macht die Entwicklung von Handelssystemen schneller und strukturierter.
Algorithmischer Handel ohne Routine: Schnelle Handelsanalyse im MetaTrader 5 mit SQLite
Der Artikel stellt eine minimale arbeitsfähige Grundausstattung für die Führung eines Handelsjournals in MQL5 unter Verwendung von SQLite vor: eine Tabellenstruktur für Trades, Signale und Ereignisse, Indizes, vorbereitete Anweisungen und Trades sowie analytische Standard-SQL-Abfragen. Die Integration mit dem Statistik-Dashboard in MetaTrader 5 und das Arbeiten mit der Datenbank über MetaEditor werden demonstriert. Dieser Ansatz ermöglicht es, das Journal zu automatisieren, Berechnungen zu beschleunigen und Analysen durchzuführen, ohne den EA-Code zu verkomplizieren.
Winkelanalyse von Preisbewegungen: Ein hybrides Modell zur Prognose von Finanzmärkten
Was ist die Winkelanalyse der Finanzmärkte? Wie kann man mithilfe der Winkel von Preisbewegung und maschinellem Lernen genaue Prognosen mit einer Genauigkeit von 67 % erstellen? Wie kann man ein Regressions- und Klassifikationsmodell mit Winkelmerkmalen kombinieren und einen funktionierenden Algorithmus erhalten? Was hat Gann damit zu tun? Warum sind Winkel der Preisbewegung ein guter Indikator für maschinelles Lernen?
Entwicklung eines Multi-Currency Expert Advisors (Teil 26): Informer für Handelsinstrumente
Bevor wir mit der Entwicklung von Mehrwährungs-EAs fortfahren, wollen wir versuchen, ein neues Projekt mit der entwickelten Bibliothek zu erstellen. In diesem Beispiel wird gezeigt, wie man die Speicherung von Quellcode am besten organisiert und wie das neue Code-Repository von MetaQuotes uns dabei helfen kann.
Korallenriff-Optimierung (CRO)
Der Artikel stellt eine umfassende Analyse des Korallenriff-Optimierungsalgorithmus (CRO) vor, einer metaheuristischen Methode, die von den biologischen Prozessen der Entstehung und Entwicklung von Korallenriffen inspiriert ist. Der Algorithmus modelliert Schlüsselaspekte der Korallenevolution: Broadcast Spawning (Massenlaichen), Brooding (interne Larvenentwicklung), Larvenansiedlung, ungeschlechtliche Fortpflanzung und Wettbewerb um den begrenzten Platz im Riff. Besondere Aufmerksamkeit gilt der verbesserten Version des Algorithmus.
Marktsimulation (Teil 17): Sockets (XI)
Die Implementierung des Teils des Codes, der in MetaTrader 5 ausgeführt werden soll, ist unproblematisch. Es gibt jedoch einige Punkte, die berücksichtigt werden müssen. Das ist notwendig, damit das System korrekt funktioniert. Denken Sie an einen wichtigen Punkt: Es läuft nicht nur ein einziges Programm. Tatsächlich müssen drei Programme gleichzeitig ausgeführt werden. In Wirklichkeit müssen drei Programme gleichzeitig laufen. Es ist wichtig, sie so zu implementieren und zu strukturieren, dass sie miteinander interagieren und kommunizieren können und dass jedes von ihnen versteht, was die anderen tun oder beabsichtigen.
Marktsimulation (Teil 16): Sockets (X)
Wir sind kurz davor, diese Herausforderung abzuschließen. Bevor wir jedoch beginnen, möchte ich, dass Sie versuchen, diese beiden Artikel zu verstehen – diesen und den vorherigen. Auf diese Weise werden Sie den nächsten Artikel wirklich verstehen, in dem ich ausschließlich den Teil behandeln werde, der mit der MQL5-Programmierung zusammenhängt. Aber ich werde auch versuchen, es verständlich zu machen. Wenn Sie diese beiden letzten Artikel nicht verstehen, wird es Ihnen schwer fallen, den nächsten zu verstehen, denn der Stoff häuft sich. Je mehr Dinge es zu tun gibt, desto mehr muss man schaffen und verstehen, um das Ziel zu erreichen.
Marktsimulation (Teil 15): Sockets (IX)
In diesem Artikel besprechen wir eine der möglichen Lösungen für das, was wir versucht haben zu demonstrieren, nämlich wie man es einem Excel-Nutzer ermöglicht, eine Aktion in MetaTrader 5 auszuführen, ohne Aufträge zu senden oder Positionen zu öffnen oder zu schließen. Die Idee ist, dass der Nutzer Excel verwendet, um eine fundamentale Analyse eines bestimmten Symbols durchzuführen. Und allein mit Excel lässt sich ein in MetaTrader 5 laufender Expert Advisor anweisen, eine bestimmte Position zu eröffnen oder zu schließen.
Marktsimulation (Teil 13): Sockets (VII)
Wenn wir etwas in xlwings oder einem anderen Paket entwickeln, das das Lesen und Schreiben direkt in Excel ermöglicht, müssen wir beachten, dass alle Programme, Funktionen oder Prozeduren ausgeführt werden und dann ihre Aufgabe beenden. Sie bleiben nicht in einer Schleife, egal wie sehr wir uns bemühen, die Dinge anders zu machen.
Marktsimulation (Teil 12): Sockets (VI)
In diesem Artikel werden wir uns ansehen, wie man bestimmte Probleme und Fragen lösen kann, die bei der Verwendung von Python-Code in anderen Programmen auftreten. Insbesondere werden wir ein häufiges Problem demonstrieren, das bei der Verwendung von Excel in Verbindung mit MetaTrader 5 auftritt, obwohl wir Python verwenden werden, um diese Interaktion zu erleichtern. Diese Umsetzung hat jedoch einen kleinen Nachteil. Dies trifft nicht in allen Fällen zu, sondern nur in bestimmten Situationen. Wenn es dazu kommt, muss man die Ursache verstehen. Im heutigen Artikel werden wir zunächst erklären, wie dieses Problem gelöst werden kann.
Einführung in MQL5 (Teil 36): Beherrschen der API und der Funktion WebRequest in MQL5 (X)
Dieser Artikel stellt die grundlegenden Konzepte hinter HMAC-SHA256 und API-Signaturen in MQL5 vor und erklärt, wie Nachrichten und geheime Schlüssel kombiniert werden, um Anfragen sicher zu authentifizieren. Sie bildet die Grundlage für das Signieren von API-Aufrufen, ohne sensible Daten preiszugeben.
Einführung in MQL5 (Teil 35): Beherrschen der API- und WebRequest-Funktion in MQL5 (IX)
Erfahren Sie, wie Sie Nutzeraktionen in MetaTrader 5 erkennen, Anfragen an eine KI-API senden, Antworten extrahieren und als Lauftext in Ihrem Panel implementieren.
Optimieren der Trendstärke: Handel in Richtung von Trend und Stärke
Dies ist ein spezieller Trendfolge-EA, der sowohl kurz- als auch langfristige Analysen, Handelsentscheidungen und Ausführungen auf der Grundlage des Gesamttrends und seiner Stärke vornimmt. In diesem Artikel wird ein EA ausführlich vorgestellt, der speziell für Trader entwickelt wurde, die geduldig, diszipliniert und zielstrebig genug sind, um Trades nur dann auszuführen und ihre Positionen nur dann zu halten, wenn sie mit starker Marktdynamik und in Trendrichtung handeln, ohne ihre Ausrichtung häufig zu ändern – insbesondere nicht gegen den Trend –, bis die Gewinnziele erreicht sind.
Python-MetaTrader 5 Strategietester (Teil 04): Tester 101
In diesem faszinierenden Artikel bauen wir unseren allerersten Handelsroboter im Simulator auf und führen eine Strategietest-Aktion durch, die der Funktionsweise des MetaTrader 5-Strategietesters ähnelt. Anschließend vergleichen wir die Ergebnisse einer nutzerdefinierten Simulation mit unserem bevorzugten Terminal.
Einführung in MQL5 (Teil 34): Beherrschung der API- und WebRequest-Funktion in MQL5 (VIII)
In diesem Artikel erfahren Sie, wie Sie ein interaktives Kontrollpanel in MetaTrader 5 erstellen können. Wir behandeln die Grundlagen des Hinzufügens von Eingabefeldern, Aktionsschaltflächen und Beschriftungen zur Anzeige von Text. Anhand eines projektbasierten Ansatzes werden Sie sehen, wie Sie ein Panel einrichten, in das Nutzer Nachrichten eingeben und schließlich Serverantworten von einer API anzeigen können.
Python-MetaTrader 5 Strategietester (Teil 03): MetaTrader 5-ähnliche Handelsoperationen – Handhabung und Verwaltung
In diesem Artikel stellen wir Python-MetaTrader 5-ähnliche Wege vor, um Handelsoperationen wie das Öffnen, Schließen und Ändern von Aufträgen im Simulator zu handhaben. Um sicherzustellen, dass sich die Simulation wie MetaTrader 5 verhält, ist eine strenge Validierungsschicht für Handelsanfragen implementiert, die die Parameter des Symbolhandels und die typischen Brokerage-Einschränkungen berücksichtigt.
Einführung in MQL5 (Teil 33): Beherrschen der API- und WebRequest-Funktion in MQL5 (VII)
Dieser Artikel zeigt, wie man die Google Generative AI API mit MetaTrader 5 unter Verwendung von MQL5 integriert. Sie lernen, wie Sie API-Anfragen strukturieren, Serverantworten verarbeiten, KI-generierte Inhalte extrahieren, Ratenlimits verwalten und die Ergebnisse in einer Textdatei speichern, um einen einfachen Zugriff zu ermöglichen.
Python-MetaTrader 5 Strategie-Tester (Teil 02): Umgang mit Balken, Ticks und Überladung eingebauter Funktionen in einem Simulator
In diesem Artikel stellen wir Funktionen vor, die denen des Moduls Python-MetaTrader 5 ähneln und einen Simulator mit einer vertrauten Schnittstelle und einer eigenen Art der internen Handhabung von Balken und Ticks bieten.