
Strukturen in MQL5 und Methoden zum Drucken deren Daten
In diesem Artikel werden wir uns die Strukturen von MqlDateTime, MqlTick, MqlRates und MqlBookInfo ansehen sowie die Methoden zum Drucken von deren Daten. Um alle Felder einer Struktur auszudrucken, gibt es die Standardfunktion ArrayPrint(), die die im Array enthaltenen Daten mit dem Typ der behandelten Struktur in einem praktischen Tabellenformat anzeigt.

Die visuelle Programmiersprache DRAKON - Kommunikationswerkzeug für MQL-Entwickler und Kunden
DRAKON ist eine visuelle Programmiersprache, die entwickelt wurde, um die Interaktion zwischen Fachleuten aus verschiedenen Bereichen (Biologen, Physiker, Ingenieure...) und Programmierern in russischen Raumfahrtprojekten (z.B. im Projekt für das wiederverwendbare Raumschiff Buran) zu vereinfachen. In diesem Artikel werde ich darüber sprechen, wie DRAKON die Erstellung von Algorithmen zugänglich und intuitiv macht, selbst wenn Sie noch nie mit Code in Berührung gekommen sind, und wie es für Kunden einfacher ist, ihre Gedanken zu erklären, wenn sie Handelsroboter bestellen, und für Programmierer, weniger Fehler bei komplexen Funktionen zu machen.

Algorithmen zur Optimierung mit Populationen Fledermaus-Algorithmus (BA)
In diesem Artikel werde ich den Fledermaus-Algorithmus (Bat-Algorithmus, BA) betrachten, der gute Konvergenz bei glatten Funktionen zeigt.

DoEasy. Steuerung (Teil 22): SplitContainer. Ändern der Eigenschaften des erstellten Objekts
In diesem Artikel werde ich die Möglichkeit implementieren, die Eigenschaften und das Aussehen des neu erstellten SplitContainer-Steuerelements zu ändern.

DoEasy. Steuerung (Teil 24): Das WinForms-Hilfsobjekt für Hinweise
In diesem Artikel werde ich die Logik der Angabe der Basis- und Hauptobjekte für alle WinForms-Bibliotheksobjekte überarbeiten, ein neues Basisobjekt Hint für Hinweise und mehrere seiner abgeleiteten Klassen entwickeln, um die mögliche Richtung der Bewegung des Trennzeichens anzugeben.


Grafiken in der Bibliothek DoEasy (Teil 89): Programmieren von grafischen Standardobjekten, grundlegende Funktionsweise
Derzeit ist die Bibliothek in der Lage, Standard-Grafikobjekte auf dem Client-Terminal-Chart zu kontrollieren, einschließlich ihrer Entfernung und Änderung einiger ihrer Parameter. Derzeit fehlt die Möglichkeit, grafische Standardobjekte aus nutzerdefinierten Programmen zu erstellen.

Analyse mehrerer Symbole mit Python und MQL5 (Teil II): Hauptkomponentenanalyse zur Portfolio-Optimierung
Das Management des Risikos eines Handelskontos ist für alle Händler eine Herausforderung. Wie können wir Handelsanwendungen entwickeln, die dynamisch hohe, mittlere und niedrige Risikomodi für verschiedene Symbole in MetaTrader 5 erlernen? Durch den Einsatz der PCA erhalten wir eine bessere Kontrolle über die Portfoliovarianz. Ich werde zeigen, wie man Anwendungen erstellt, die diese drei Risikomodi aus den Marktdaten des MetaTrader 5 lernen.

Die Handelsstrategie Inverse Fair Value Gap
Eine Inverse Fair Value Gap (IFVG) liegt vor, wenn der Kurs in eine zuvor ermittelte „Fair Value Gap“ abprallt und statt der erwarteten unterstützenden oder Widerstandsreaktion diese nicht einhält. Dieses Scheitern kann eine potenzielle Veränderung der Marktrichtung signalisieren und einen konträren Handelsvorteil bieten. In diesem Artikel werde ich meinen selbst entwickelten Ansatz zur Quantifizierung und Nutzung der inversen Fair Value Gap als Strategie für MetaTrader 5 Expert Advisors vorstellen.

Eigenvektoren und Eigenwerte: Explorative Datenanalyse in MetaTrader 5
In diesem Artikel werden verschiedene Möglichkeiten untersucht, wie Eigenvektoren und Eigenwerte in der explorativen Datenanalyse eingesetzt werden können, um einzigartige Beziehungen in den Daten aufzudecken.

Algorithmen zur Optimierung mit Populationen Fish School Search (FSS)
Fish School Search (FSS, Suche mittels Fischschulen) ist ein neuer Optimierungsalgorithmus, der durch das Verhalten von Fischen in einem Schwarm inspiriert wurde, von denen die meisten (bis zu 80 %) in einer organisierten Gemeinschaft von Verwandten schwimmen. Es ist erwiesen, dass Fischansammlungen eine wichtige Rolle für die Effizienz der Nahrungssuche und den Schutz vor Räubern spielen.

MQL5 Handels-Toolkit (Teil 1): Entwicklung einer EX5-Bibliothek zur Positionsverwaltung
Lernen Sie, wie Sie ein Entwickler-Toolkit für die Verwaltung verschiedener Positionsoperationen mit MQL5 erstellen können. In diesem Artikel zeige ich Ihnen, wie Sie eine Funktionsbibliothek (ex5) erstellen können, die einfache bis fortgeschrittene Positionsverwaltungsoperationen durchführt, einschließlich der automatischen Behandlung und Meldung der verschiedenen Fehler, die bei der Bearbeitung von Positionsverwaltungsaufgaben mit MQL5 auftreten.

Algorithmen zur Optimierung mit Populationen: Der Boids-Algorithmus
Der Artikel befasst sich mit dem Boids Algorithmus, der auf einzigartigen Beispielen für das Verhalten von Tierschwärmen basiert. Der Boids-Algorithmus wiederum dient als Grundlage für die Schaffung einer ganzen Klasse von Algorithmen, die unter dem Namen „Schwarmintelligenz“ zusammengefasst werden.

Erstellung von Zeitreihenvorhersagen mit neuronalen LSTM-Netzen: Normalisierung des Preises und Tokenisierung der Zeit
In diesem Artikel wird eine einfache Strategie zur Normalisierung der Marktdaten anhand der täglichen Spanne und zum Training eines neuronalen Netzes zur Verbesserung der Marktprognosen beschrieben. Die entwickelten Modelle können in Verbindung mit einem bestehenden technischen Analysesystem oder auf eigenständiger Basis verwendet werden, um die allgemeine Marktrichtung vorherzusagen. Der in diesem Artikel skizzierte Rahmen kann von jedem technischen Analysten weiter verfeinert werden, um Modelle zu entwickeln, die sowohl für manuelle als auch für automatisierte Handelsstrategien geeignet sind.

Algorithmen zur Optimierung mit Populationen: Vogelschwarm-Algorithmus (BSA)
Der Artikel befasst sich mit dem vogelschwarmbasierten Algorithmus (BSA), der von den kollektiven Schwarminteraktionen der Vögel in der Natur inspiriert ist. Die unterschiedlichen Suchstrategien der BSA-Individuen, einschließlich des Wechsels zwischen Flucht-, Wachsamkeits- und Futtersuchverhalten, machen diesen Algorithmus vielschichtig. Es nutzt die Prinzipien der Vogelschwärme, der Kommunikation, der Anpassungsfähigkeit, des Führens und Folgens, um effizient optimale Lösungen zu finden.

Bill Williams Strategie mit und ohne andere Indikatoren und Vorhersagen
In diesem Artikel werden wir einen Blick auf eine der berühmten Strategien von Bill Williams werfen, sie diskutieren und versuchen, die Strategie mit anderen Indikatoren und mit Vorhersagen zu verbessern.

Frequenzbereichsdarstellungen von Zeitreihen: Das Leistungsspektrum
In diesem Artikel erörtern wir Methoden zur Analyse von Zeitreihen im Frequenzbereich. Hervorhebung des Nutzens der Untersuchung der Leistungsspektren von Zeitreihen bei der Erstellung von Vorhersagemodellen. In diesem Artikel werden wir einige der nützlichen Perspektiven erörtern, die sich aus der Analyse von Zeitreihen im Frequenzbereich unter Verwendung der diskreten Fourier-Transformation (dft) ergeben.

GUI: Tipps und Tricks zur Erstellung Ihrer eigenen Grafikbibliothek in MQL
Wir gehen die Grundlagen von GUI-Bibliotheken durch, damit Sie verstehen, wie sie funktionieren, oder sogar anfangen können, Ihre eigenen zu erstellen.

Entwicklung eines Replay-Systems — Marktsimulation (Teil 08): Sperren des Indikators
In diesem Artikel werden wir uns ansehen, wie man den Indikator sperren kann, indem man einfach die Sprache MQL5 verwendet, und zwar auf eine sehr interessante und erstaunliche Weise.

Algorithmen zur Optimierung mit Populationen Firefly-Algorithmus (FA)
In diesem Artikel werde ich die Optimierungsmethode des Firefly-Algorithmus (FA) betrachten. Dank der Änderung hat sich der Algorithmus von einem Außenseiter zu einem echten Tabellenführer entwickelt.

Vom Neuling zum Experten: Umfassende Fehlersuche in MQL5
Die Problemlösung kann eine prägnante Routine für die Beherrschung komplexer Fertigkeiten, wie die Programmierung in MQL5, schaffen. Dieser Ansatz ermöglicht es Ihnen, sich auf die Lösung von Problemen zu konzentrieren und gleichzeitig Ihre Fähigkeiten zu entwickeln. Je mehr Probleme Sie lösen, desto mehr fortgeschrittenes Fachwissen erwerben Sie. Ich persönlich glaube, dass die Fehlersuche der effektivste Weg ist, das Programmieren zu beherrschen. Heute werden wir den Prozess der Codebereinigung durchgehen und die besten Techniken besprechen, um ein unordentliches Programm in ein sauberes, funktionales Programm zu verwandeln. Lesen Sie diesen Artikel und gewinnen Sie wertvolle Erkenntnisse.

Verschaffen Sie sich einen Vorteil auf jedem Markt (Teil II): Vorhersage technischer Indikatoren
Wussten Sie, dass die Vorhersage bestimmter technischer Indikatoren genauer ist als die Vorhersage des zugrunde liegenden Preises eines gehandelten Symbols? Lernen Sie mit uns, wie Sie diese Erkenntnisse für bessere Handelsstrategien nutzen können.

DoEasy. Steuerung (Teil 19): Verschieben der Registerkarten in TabControl, Ereignisse im WinForms-Objekt
In diesem Artikel werde ich die Funktionsweise zum Verschieben (scrolling) von Registerkartenüberschriften in TabControl mithilfe von Scroll-Schaltflächen erstellen. Die Funktionalität ist dazu gedacht, Tabulator-Kopfzeilen in einer einzigen Zeile auf beiden Seiten des Steuerelements zu platzieren.

Entwicklung eines Qualitätsfaktors für Expert Advisors
In diesem Artikel sehen wir uns an, wie Sie eine Qualitätsbewertung entwickeln, die Ihr Expert Advisor im Strategietester anzeigen kann. Wir werden uns zwei bekannte Berechnungsmethoden ansehen – Van Tharp und Sunny Harris.

Algorithmen zur Optimierung mit Populationen: Der Wal-Optimierungsalgorithmus (WOA)
Der Wal-Optimierungsalgorithmus (WOA) ist ein metaheuristischer Algorithmus, der durch das Verhalten und die Jagdstrategien von Buckelwalen inspiriert wurde. Die Hauptidee von WOA ist die Nachahmung der so genannten Fressmethode „Blasennetz“, bei der Wale Blasen um ihre Beute herum erzeugen und sie dann in einer spiralförmigen Bewegung angreifen.

Entwicklung eines Replay-Systems — Marktsimulation (Teil 09): Nutzerdefinierte Ereignisse
Hier sehen wir, wie nutzerdefinierte Ereignisse ausgelöst werden und wie der Indikator den Status des Wiedergabe-/Simulationsdienstes meldet.

MQL5 Handels-Toolkit (Teil 2): Erweiterung und Implementierung der Positionsmanagement EX5-Bibliothek
Erfahren Sie, wie Sie EX5-Bibliotheken in Ihren MQL5-Code oder Ihre Projekte importieren und verwenden können. In diesem Fortsetzungsartikel werden wir die EX5-Bibliothek erweitern, indem wir weitere Positionsmanagement-Funktionen zur bestehenden Bibliothek hinzufügen und zwei Expert Advisors erstellen. Im ersten Beispiel wird der Variable Index Dynamic Average Technical Indicator verwendet, um einen Expert Advisor für eine Trailing-Stop-Handelsstrategie zu entwickeln, während im zweiten Beispiel ein Handelspanel zum Überwachen, Öffnen, Schließen und Ändern von Positionen verwendet wird. Diese beiden Beispiele zeigen, wie die erweiterte EX5-Positionsmanagement-Bibliothek verwendet und implementiert werden kann.

Algorithmen zur Optimierung mit Populationen: der Gravitationssuchalgorithmus (GSA)
GSA ist ein von der unbelebten Natur inspirierter Populationsoptimierungsalgorithmus. Dank des in den Algorithmus implementierten Newton'schen Gravitationsgesetzes können wir dank der hohen Zuverlässigkeit der Modellierung der Interaktion physikalischer Körper den bezaubernden Tanz von Planetensystemen und Galaxienhaufen beobachten. In diesem Artikel möchte ich einen der interessantesten und originellsten Optimierungsalgorithmen vorstellen. Der Simulator für die Bewegung von Raumobjekten ist ebenfalls vorhanden.

DoEasy. Steuerung (Teil 23): Verbesserung der WinForms-Objekte TabControl und SplitContainer
In diesem Artikel werde ich neue Mausereignisse relativ zu den Grenzen der Arbeitsbereiche von WinForms-Objekten hinzufügen und einige Mängel in der Funktionsweise der TabControl- und SplitContainer-Steuerelemente beheben.

DoEasy. Steuerung (Teil 28): Balkenstile im ProgressBar-Steuerelement
In diesem Artikel werde ich Anzeigestile und Beschreibungstext für die Fortschrittsleiste des Steuerelements der ProgressBar entwickeln.

Algorithmen zur Optimierung mit Populationen: Spiralförmige Dynamische Optimization (SDO) Algorithmus
In diesem Artikel wird ein Optimierungsalgorithmus vorgestellt, der auf den Mustern der Konstruktion spiralförmiger Trajektorien in der Natur, wie z. B. bei Muschelschalen, basiert - der Algorithmus der spiralförmigen dynamischen Optimierung (SDO). Ich habe den von den Autoren vorgeschlagenen Algorithmus gründlich überarbeitet und verändert. Der Artikel befasst sich mit der Notwendigkeit dieser Änderungen.

PSAR, Heiken Ashi und Deep Learning gemeinsam für den Handel nutzen
Dieses Projekt erforscht die Verschmelzung von Deep Learning und technischer Analyse, um Handelsstrategien im Forex-Bereich zu testen. Für schnelle Experimente wird ein Python-Skript verwendet, das ein ONNX-Modell neben traditionellen Indikatoren wie PSAR, SMA und RSI einsetzt, um die Entwicklung des EUR/USD vorherzusagen. Ein MetaTrader 5-Skript bringt diese Strategie dann in eine Live-Umgebung und nutzt historische Daten und technische Analysen, um fundierte Handelsentscheidungen zu treffen. Die Backtesting-Ergebnisse deuten auf einen vorsichtigen, aber konsequenten Ansatz hin, bei dem der Schwerpunkt eher auf Risikomanagement und stetigem Wachstum als auf aggressivem Gewinnstreben liegt.

Implementierung des Janus-Faktors in MQL5
Gary Anderson entwickelte eine Marktanalysemethode, die auf einer Theorie beruht, die er Janus-Faktor nannte. Die Theorie beschreibt eine Reihe von Indikatoren, mit denen sich Trends aufzeigen und Marktrisiken bewerten lassen. In diesem Artikel werden wir diese Werkzeuge in mql5 implementieren.


Grafiken in der Bibliothek DoEasy (Teil 94): Bewegen und Löschen zusammengesetzter grafischer Objekte
In diesem Artikel werde ich mit der Entwicklung verschiedener Ereignisse für zusammengesetzte grafische Objekte beginnen. Teilweise werden wir auch das Verschieben und Löschen eines zusammengesetzten grafischen Objekts betrachten. In der Tat werde ich hier eine Feinabstimmung der Dinge vornehmen, die ich im vorherigen Artikel implementiert habe.


DoEasy. Steuerung (Teil 32): Horizontale ScrollBar, Scrollen mit dem Mausrad
In diesem Artikel werden wir die Entwicklung der Funktionalität des horizontalen Rollbalkenobjekts abschließen. Wir werden auch die Möglichkeit schaffen, den Inhalt des Containers durch Bewegen des Schiebereglers und Drehen des Mausrades zu scrollen, sowie Ergänzungen zur Bibliothek vornehmen, die die neue Auftragsausführungspolitik und die neuen Laufzeitfehlercodes in MQL5 berücksichtigen.

Entwicklung eines Replay System (Teil 32): Auftragssystem (I)
Von allen Dingen, die wir bisher entwickelt haben, ist dieses System, wie Sie wahrscheinlich bemerken und letztendlich zustimmen werden, das komplexeste. Nun müssen wir etwas sehr Einfaches tun: unser System soll den Betrieb eines Handelsservers simulieren. Die Notwendigkeit, die Funktionsweise des Handelsservers genau zu implementieren, scheint eine Selbstverständlichkeit zu sein. Zumindest in Worten. Aber wir müssen dies so tun, dass alles nahtlos und transparent für den Nutzer des Wiedergabe-/Simulationssystems ist.

DoEasy. Steuerung (Teil 17): Beschneiden unsichtbarer Objektteile, Hilfspfeiltasten WinForms-Objekte
In diesem Artikel werde ich die Funktionalität zum Ausblenden von Objektabschnitten, die sich außerhalb ihrer Container befinden, erstellen. Außerdem werde ich zusätzliche Pfeiltastenobjekte erstellen, die als Teil anderer WinForms-Objekte verwendet werden können.

DoEasy. Steuerung (Teil 18): Funktionsweise für scrollende Registerkarten in TabControl
In diesem Artikel werde ich die Schaltflächen der Kopfzeilen-Scroll-Steuerung im TabControl WinForms-Objekt platzieren, für den Fall, dass die Kopfzeile nicht in die Größe des Steuerelements passt. Außerdem werde ich die Verschiebung der Kopfleiste beim Klicken auf die abgeschnittene Registerkartenüberschrift implementieren.

DoEasy. Steuerung (Teil 29): Das Hilfssteuerelement der ScrollBar
In diesem Artikel werde ich mit der Entwicklung des ScrollBar-Hilfssteuerelements und seiner abgeleiteten Objekte beginnen — vertikale und horizontale Bildlaufleisten. Eine Bildlaufleiste wird verwendet, um den Inhalt des Formulars zu verschieben, wenn er über den Container hinausgeht. Die Bildlaufleisten befinden sich in der Regel am unteren und rechten Rand des Formulars. Die horizontale am unteren Rand blättert den Inhalt nach links und rechts, während die vertikale nach oben und unten blättert.

Integration von ML-Modellen mit dem Strategy Tester (Schlussfolgerung): Implementierung eines Regressionsmodells für die Preisvorhersage
Dieser Artikel beschreibt die Implementierung eines Regressionsmodells auf der Grundlage eines Entscheidungsbaums. Das Modell soll die Preise von Finanzanlagen vorhersagen. Wir haben die Daten bereits aufbereitet, das Modell trainiert und evaluiert, sowie angepasst und optimiert. Es ist jedoch wichtig zu beachten, dass dieses Modell nur für Studienzwecke gedacht ist und nicht im realen Handel eingesetzt werden sollte.

Künstlicher Bienenstock-Algorithmus (ABHA): Theorie und Methoden
In diesem Artikel geht es um den 2009 entwickelten Artificial Bee Hive Algorithm (ABHA). Der Algorithmus ist auf die Lösung kontinuierlicher Optimierungsprobleme ausgerichtet. Wir werden uns ansehen, wie ABHA sich vom Verhalten eines Bienenvolkes inspirieren lässt, in dem jede Biene eine einzigartige Aufgabe hat, die ihr hilft, Ressourcen effizienter zu finden.