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.
Scheinkorrelationen in Python
Scheinkorrelationen treten auf, wenn zwei Zeitreihen rein zufällig ein hohes Maß an Korrelation aufweisen, was zu irreführenden Ergebnissen bei der Regressionsanalyse führt. In solchen Fällen sind die Variablen zwar scheinbar miteinander verbunden, aber die Korrelation ist zufällig und das Modell kann unzuverlässig sein.
Funktionsentwicklung mit Python und MQL5 (Teil I): Vorhersage gleitender Durchschnitte für weitreichende AI-Modelle
Die gleitenden Durchschnitte sind bei weitem die besten Indikatoren für die Vorhersage unserer KI-Modelle. Wir können unsere Genauigkeit jedoch noch weiter verbessern, indem wir unsere Daten sorgfältig transformieren. In diesem Artikel wird gezeigt, wie Sie KI-Modelle erstellen können, die in der Lage sind, weiter in die Zukunft zu prognostizieren, als Sie es derzeit tun, ohne dass Ihre Genauigkeit signifikant sinkt. Es ist wirklich bemerkenswert, wie nützlich die gleitenden Durchschnitte sind.
Deep Learning GRU model with Python to ONNX with EA, and GRU vs LSTM models
We will guide you through the entire process of DL with python to make a GRU ONNX model, culminating in the creation of an Expert Advisor (EA) designed for trading, and subsequently comparing GRU model with LSTN model.
Video: Als Nächstes tragen Sie den Servernamen, Ihre Kontonummer und das Master-Passwort an.
Die Mehrheit der Studenten in meinen Kursen war der Meinung, dass MQL5 wirklich schwer zu verstehen ist. Darüber hinaus suchten sie nach einer einfachen Methode, um einige Prozesse zu automatisieren. Entdecken Sies, wie Sie sofort mit MQL5 arbeiten können, einfach durch das Lesen der in diesem Artikel enthaltenen Informationen. Selbst, wenn Sie noch nie etwas programmiert haben. Und auch für den Fall, dass Sie die vorhergehenden Illustrationen, die Sie beobachtet haben, nicht nachvollziehen können.
Erstellen eines Dashboards in MQL5 für den RSI-Indikator von mehreren Symbolen und Zeitrahmen
In diesem Artikel entwickeln wir ein dynamisches RSI-Indikator-Dashboard in MQL5, das Händlern Echtzeit-RSI-Werte für verschiedene Symbole und Zeitrahmen anzeigt. Das Dashboard bietet interaktive Schaltflächen, Echtzeit-Updates und farbkodierte Indikatoren, die Händlern helfen, fundierte Entscheidungen zu treffen.
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 48): Bill Williams Alligator
Der Alligator-Indikator, der von Bill Williams entwickelt wurde, ist ein vielseitiger Indikator zur Trenderkennung, der klare Signale liefert und häufig mit anderen Indikatoren kombiniert wird. Die MQL5-Assistenten-Klassen und die Assemblierung ermöglichen es uns, eine Vielzahl von Signalen auf der Basis von Mustern zu testen, und so betrachten wir auch diesen Indikator.
DoEasy. Steuerung (Teil 11): WinForms Objekte — Gruppen, das WinForms-Objekt CheckedListBox
Der Artikel behandelt die Gruppierung von WinForms-Objekten und die Erstellung des Listenobjekts CheckBox-Objekte.
DoEasy. Dienstfunktionen (Teil 2): Das Muster der „Inside-Bar“
In diesem Artikel werden wir uns weiter mit den Preismustern in der DoEasy-Bibliothek beschäftigen. Wir werden auch die Klasse für das Muster der „Inside-Bar“ der Price Action Formationen erstellen.
Популяционные алгоритмы оптимизации: Гибридный алгоритм оптимизации бактериального поиска с генетическим алгоритмом (Bacterial Foraging Optimization - Genetic Algorithm, BFO-GA)
В статье представлен новый подход к решению оптимизационных задач, путём объединения идей алгоритмов оптимизации бактериального поиска пищи (BFO) и приёмов, используемых в генетическом алгоритме (GA), в гибридный алгоритм BFO-GA. Он использует роение бактерий для глобального поиска оптимального решения и генетические операторы для уточнения локальных оптимумов. В отличие от оригинального BFO бактерии теперь могут мутировать и наследовать гены.
Algorithmus zur chemischen Reaktionsoptimierung (CRO) (Teil II): Zusammenstellung und Ergebnisse
Im zweiten Teil werden wir die chemischen Operatoren in einem einzigen Algorithmus zusammenfassen und eine detaillierte Analyse seiner Ergebnisse präsentieren. Wir wollen herausfinden, wie die Methode der chemischen Reaktionsoptimierung (CRO) mit der Lösung komplexer Probleme bei Testfunktionen zurechtkommt.
Implementierung des Deus EA: Automatisierter Handel mit RSI und gleitenden Durchschnitten in MQL5
Dieser Artikel beschreibt die Schritte zur Implementierung des Deus EA, der auf den Indikatoren RSI und Gleitender Durchschnitt zur Steuerung des automatisierten Handels basiert.
Klassische Strategien neu interpretieren (Teil 13): Minimale Verzögerung des Kreuzens von gleitenden Durchschnitten
Der gleitende Durchschnitt ist bei den Händlern in unserer Gemeinschaft weithin bekannt, und doch hat sich der Kern der Strategie seit ihrer Einführung nur wenig verändert. In dieser Diskussion werden wir Ihnen eine leichte Anpassung der ursprünglichen Strategie vorstellen, die darauf abzielt, den in der Handelsstrategie vorhandenen Verzögerung zu minimieren. Alle Fans der ursprünglichen Strategie könnten in Erwägung ziehen, die Strategie entsprechend den Erkenntnissen, die wir heute diskutieren werden, zu überarbeiten. Durch die Verwendung von 2 gleitenden Durchschnitten mit der gleichen Periodenlänge wird die Verzögerung in der Handelsstrategie erheblich reduziert, ohne dass die Grundprinzipien der Strategie verletzt werden.
Entwicklung eines Replay Systems (Teil 39): Den Weg ebnen (III)
Bevor wir zur zweiten Stufe der Entwicklung übergehen, müssen wir einige Ideen überarbeiten. Wissen Sie, wie Sie MQL5 dazu bringen können, das zu tun, was Sie brauchen? Haben Sie jemals versucht, über das hinauszugehen, was in der Dokumentation enthalten ist? Wenn nicht, dann machen Sie sich bereit. Denn wir werden etwas tun, was die meisten Menschen normalerweise nicht tun.
Entwicklung eines Wiedergabesystems — Marktsimulation (Teil 21): FOREX (II)
Wir werden weiterhin ein System für die Arbeit auf dem FOREX-Markt aufbauen. Um dieses Problem zu lösen, müssen wir zuerst das Laden der Ticks deklarieren, bevor wir die vorherigen Balken laden. Dies löst zwar das Problem, zwingt den Nutzer aber gleichzeitig dazu, sich an eine bestimmte Struktur in der Konfigurationsdatei zu halten, was ich persönlich nicht sehr sinnvoll finde. Der Grund dafür ist, dass wir durch die Entwicklung eines Programms, das für die Analyse und Ausführung der Konfigurationsdatei verantwortlich ist, dem Nutzer die Möglichkeit geben können, die von ihm benötigten Elemente in beliebiger Reihenfolge zu deklarieren.
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 29): Fortsetzung zu Lernraten mit MLPs
Zum Abschluss unserer Betrachtung der Empfindlichkeit der Lernrate für die Leistung von Expert Advisors untersuchen wir in erster Linie die adaptiven Lernraten. Diese Lernraten sollen für jeden Parameter in einer Schicht während des Trainingsprozesses angepasst werden, und so bewerten wir die potenziellen Vorteile gegenüber der erwarteten Leistungsgebühr.
Kategorientheorie in MQL5 (Teil 21): Natürliche Transformationen mit LDA
In diesem Artikel, dem 21. in unserer Reihe, geht es weiter mit einem Blick auf natürliche Transformationen und wie sie mit Hilfe der linearen Diskriminanzanalyse umgesetzt werden können. Wir stellen diese Anwendungen in einem Signalklassenformat vor, wie im vorherigen Artikel.
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.
Selbstoptimierende Expert Advisor in MQL5 (Teil 4): Dynamische Positionsgrößen
Der erfolgreiche Einsatz des algorithmischen Handels erfordert kontinuierliches, interdisziplinäres Lernen. Die unendlichen Möglichkeiten können jedoch jahrelange Bemühungen verschlingen, ohne greifbare Ergebnisse zu liefern. Um dieses Problem zu lösen, schlagen wir einen Rahmen vor, der die Komplexität schrittweise einführt und es den Händlern ermöglicht, ihre Strategien iterativ zu verfeinern, anstatt sich für unbestimmte Zeit auf ungewisse Ergebnisse festzulegen.
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.
DoEasy. Steuerung (Teil 3): Erstellen gebundener Steuerelemente
In diesem Artikel werde ich untergeordnete Steuerelemente erstellen, die an das Basiselement gebunden sind. Die Entwicklung wird unter Verwendung der Basissteuerungsfunktionalität durchgeführt. Außerdem werde ich ein wenig am Schattenobjekt des grafischen Elements basteln, da es immer noch unter einigen Logikfehlern leidet, wenn es auf eines der Objekte angewendet wird, die einen Schatten haben können.
Kategorientheorie in MQL5 (Teil 11): Graphen
Dieser Artikel ist die Fortsetzung einer Serie, die sich mit der Implementierung der Kategorientheorie in MQL5 beschäftigt. Hier untersuchen wir, wie die Graphentheorie mit Monoiden und anderen Datenstrukturen bei der Entwicklung einer Ausstiegsstrategie für ein Handelssystem integriert werden kann.
Automatisieren von Handelsstrategien in MQL5 (Teil 13): Aufbau eines Kopf-Schulter-Handelsalgorithmus
In diesem Artikel automatisieren wir das Muster aus Kopf und Schultern in MQL5. Wir analysieren seine Architektur, implementieren einen EA, um ihn zu erkennen und zu handeln, und führen einen Backtest der Ergebnisse durch. Der Prozess offenbart einen praktischen Handelsalgorithmus, der noch verfeinert werden kann.
Visualisierung der Handelsgeschäfte auf dem Chart (Teil 2): Grafische Anzeige der Daten
In diesem Artikel werden wir von Grund auf ein Skript zur einfachen Visualisierung von Handelsgeschäften (deals) für die nachträgliche Analyse von Handelsentscheidungen schreiben. Alle notwendigen Informationen über ein einzelnes Handelsgeschäft sollen bequem auf dem Chart angezeigt werden, wobei verschiedene Zeitrahmen gezeichnet werden können.
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.
Entwicklung eines Replay Systems — Marktsimulation (Teil 23): FOREX (IV)
Jetzt erfolgt die Erstellung an der gleichen Stelle, an der wir die Ticks in Balken umgewandelt haben. Wenn also bei der Konvertierung etwas schief geht, werden wir den Fehler sofort bemerken. Dies liegt daran, dass derselbe Code, der die 1-Minuten-Balken während des schnellen Vorlaufs auf dem Chart platziert, auch für das Positionierungssystem verwendet wird, um die Balken während der normalen Performance zu platzieren. Mit anderen Worten: Der Code, der für diese Aufgabe zuständig ist, wird nirgendwo anders dupliziert. Auf diese Weise erhalten wir ein viel besseres System sowohl für die Instandhaltung als auch für die Verbesserung.
Klassische Strategien neu interpretieren: Rohöl
In diesem Artikel greifen wir eine klassische Rohölhandelsstrategie wieder auf, um sie durch den Einsatz von Algorithmen des überwachten maschinellen Lernens zu verbessern. Wir werden ein Modell der kleinsten Quadrate konstruieren, um zukünftige Brent-Rohölpreise auf der Grundlage der Differenz zwischen Brent- und WTI-Rohölpreisen vorherzusagen. Unser Ziel ist es, einen Frühindikator für künftige Veränderungen der Brent-Preise zu ermitteln.
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.
Neuronales Netz in der Praxis: Pseudoinverse (I)
Heute werden wir uns damit beschäftigen, wie man die Berechnung der Pseudoinverse in der reinen MQL5-Sprache implementiert. Der Code, den wir uns ansehen werden, wird für Anfänger viel komplexer sein, als ich erwartet hatte, und ich bin noch dabei herauszufinden, wie ich ihn auf einfache Weise erklären kann. Betrachten Sie dies also als eine Gelegenheit, einen ungewöhnlichen Code zu lernen. Ruhig und aufmerksam. Obwohl es nicht auf eine effiziente oder schnelle Anwendung abzielt, soll es so didaktisch wie möglich sein.
Neuronale Netze leicht gemacht (Teil 68): Offline Preference-guided Policy Optimization
Seit den ersten Artikeln, die sich mit dem Verstärkungslernen befassten, haben wir uns auf die eine oder andere Weise mit zwei Problemen befasst: der Erkundung der Umgebung und der Bestimmung der Belohnungsfunktion. Jüngste Artikel haben sich mit dem Problem der Exploration beim Offline-Lernen befasst. In diesem Artikel möchte ich Ihnen einen Algorithmus vorstellen, bei dem die Autoren die Belohnungsfunktion vollständig eliminiert haben.
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.
Entwicklung eines Replay Systems — Marktsimulation (Teil 22): FOREX (III)
Obwohl dies der dritte Artikel zu diesem Thema ist, muss ich für diejenigen, die den Unterschied zwischen dem Aktienmarkt und dem Devisenmarkt noch nicht verstanden haben, erklären: Der große Unterschied besteht darin, dass es auf dem Devisenmarkt keine Informationen über einige Punkte gibt, die im Laufe des Handels tatsächlich aufgetreten sind.
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 23): CNNs
Convolutional Neural Networks sind ein weiterer Algorithmus des maschinellen Lernens, der sich darauf spezialisiert hat, mehrdimensionale Datensätze in ihre wichtigsten Bestandteile zu zerlegen. Wir sehen uns an, wie dies typischerweise erreicht wird, und untersuchen eine mögliche Anwendung für Händler in einer anderen Signalklasse des MQL5-Assistenten.
Dekonstruktion von Beispielen für Handelsstrategien im Client-Terminal
Der Artikel verwendet Blockdiagramme, um die Logik der auf Kerzen basierenden Trainings-EAs zu untersuchen, die sich im Ordner Experts\Free Robots des Terminals befinden.
DoEasy. Steuerung (Teil 2): Arbeiten an der Klasse CPanel
Im aktuellen Artikel werde ich einige Fehler im Zusammenhang mit der Handhabung von grafischen Elementen beseitigen und die Entwicklung des CPanel-Steuerelements fortsetzen. Insbesondere werde ich die Methoden zur Einstellung der Parameter der Schriftart implementieren, die standardmäßig für alle Textobjekte des Panels verwendet wird.
Neuronales Netz in der Praxis: Geradenfunktion
In diesem Artikel werden wir einen kurzen Blick auf einige Methoden werfen, um eine Funktion zu erhalten, die unsere Daten in der Datenbank darstellen kann. Ich werde nicht im Detail darauf eingehen, wie man Statistiken und Wahrscheinlichkeitsstudien zur Interpretation der Ergebnisse verwendet. Überlassen wir das denjenigen, die sich wirklich mit der mathematischen Seite der Angelegenheit befassen wollen. Die Erforschung dieser Fragen wird entscheidend sein für das Verständnis dessen, was bei der Untersuchung neuronaler Netze eine Rolle spielt. Hier werden wir dieses Thema in aller Ruhe besprechen.
Risikobalance beim gleichzeitigen Handel von mehreren Handelsinstrumenten
Dieser Artikel ermöglicht es Anfängern, ein Skript für den Risikoausgleich beim gleichzeitigen Handel von mehreren Handelsinstrumenten von Grund auf zu schreiben. Darüber hinaus können erfahrene Nutzer neue Ideen für die Umsetzung ihrer Lösungen in Bezug auf die in diesem Artikel vorgeschlagenen Optionen erhalten.
Datenwissenschaft und ML (Teil 22): Nutzung von Autoencodern Neuronaler Netze für intelligentere Trades durch den Übergang vom Rauschen zum Signal
In der schnelllebigen Welt der Finanzmärkte ist es für den erfolgreichen Handel entscheidend, aussagekräftige Signale vom Rauschen zu unterscheiden. Durch den Einsatz hochentwickelter neuronaler Netzwerkarchitekturen sind Autocoder hervorragend in der Lage, verborgene Muster in Marktdaten aufzudecken und verrauschte Daten in verwertbare Erkenntnisse umzuwandeln. In diesem Artikel gehen wir der Frage nach, wie Autoencoders die Handelspraktiken revolutionieren und Händlern ein leistungsfähiges Werkzeug an die Hand geben, um die Entscheidungsfindung zu verbessern und sich auf den dynamischen Märkten von heute einen Wettbewerbsvorteil zu verschaffen.
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.