

Mini Market Emulator oder ein manueller Strategie-Tester
Der Mini Market Emulator ist ein Indikator, der für die partielle Emulation des Handels am Terminal entwickelt wurde. Vielleicht möchte jemand damit "manuell" seine Strategie einer Marktanalyse oder des Handels testen.


Womit soll man bei der Erstellung eines Handelsroboters für die Moskauer Börse MOEX anfangen
Viele Trader auf der Moskauer Börse möchten ihre Handelsalgorithmen automatisieren, aber wissen nicht, womit anfangen. Die Sprache MQL5 bietet nicht nur den riesigen Satz der Handelsfunktionen an, sondern auch die einsatzbereiten Klassen, die die ersten Schritte in Algotrading maximal erleichtern.

Erstellen eines EA, der automatisch funktioniert (Teil 08): OnTradeTransaktion
In diesem Artikel erfahren Sie, wie Sie das Ereignisbehandlungssystem nutzen können, um Probleme im Zusammenhang mit dem Auftragssystem schnell und effizient zu bearbeiten. Mit diesem System wird der EA schneller arbeiten, sodass er nicht ständig nach den benötigten Daten suchen muss.


Elementare Handelssysteme unter Verwendung von Semaphorindikatoren
Wenn wir ein beliebiges vielschichtiges Handelssystem gründlich untersuchen, werden wir feststellen, dass es auf einem Satz einfacher Handelssignale beruht. Deshalb ist es gar nicht erforderlich, das sich Entwickler gleich zu Beginn ihrer Tätigkeit sofort an der Programmierung komplexer Algorithmen versuchen. In diesem Beitrag wird ein Beispiel für ein Handelssystem vorgestellt, das sich zum Abschluss von Geschäften Indikatoren des Typs Semaphor bedient.


Entwicklung eines Expert Advisor für den Handel von Grund auf
In diesem Artikel werden wir besprechen, wie man einen Handelsroboter mit minimalem Programmieraufwand entwickelt.


Multi-Symbol-Chart der Bilanz in MetaTrader 5
Der Artikel beschreibt ein Beispiel für eine MQL-Anwendung mit dem grafischen Interface, in welchem die Kurven der Bilanz und des Rückgangs für mehrere Symbole nach den Ergebnissen des letzten Tests angezeigt werden.


Die Anwendung der Monte Carlo Methode beim Reinforcement-Learning
Im Artikel werden wir das Reinforcement-Learning (Verstärkungslernen) anwenden, um selbstlernende Expert Advisors zu entwickeln. Im vorherigen Artikel haben wir den Algorithmus Random Decision Forest betrachtet und einen einfachen, selbstlernenden EA geschrieben, der auf dem Reinforcement-Learning basiert. Die Hauptvorteile eines solchen Ansatzes (Einfachheit der Entwicklung von Handelsalgorithmen und hohe "Trainings"-Geschwindigkeit) wurden erläutert. Reinforcement-Learning (RL) lässt sich leicht in jedes Trading EA integrieren und beschleunigt dessen Optimierung.


Grafische Interfaces V: Das Combobox Control (Kapitel 3)
In den ersten zwei Kapiteln des fünften Teils dieser Serie, haben wir Klassen für die Erzeugung einer Scrollbar und einer ListView entwickelt. In diesem Kapitel werden wir über die Erzeugung einer Klasse für eine ComboBox sprechen. Hierbei handelt es sich ebenfalls um ein Komponenten-Control, welches neben anderen Elementen auch Elemente enthält, die wir in den vorherigen Kapiteln des 5. Teils besprochen haben.


Das MQL5-Kochbuch: Stresstests von Handelsstrategien unter Verwendung nutzerdefinierter Symbole
Der Artikel betrachtet einen Ansatz für einen Stresstest einer Handelsstrategie unter Verwendung nutzerdefinierter Symbole. Zu diesem Zweck wird eine eigene Symbolklasse angelegt. Diese Klasse wird verwendet, um Tickdaten von Drittanbietern zu empfangen und die Symboleigenschaften zu ändern. Basierend auf den Ergebnissen der Arbeit werden wir mehrere Optionen für sich ändernde Handelsbedingungen in Betracht ziehen, unter denen eine Handelsstrategie getestet wird.


Einen interaktiven, halbautomatischen Drag-and-Drop Expert Advisor auf Grundlage vorab festgelegter Risiken und dem R/R-Verhältnis (relatives Risiko) bauen
Einige Händler führen all ihre Handel automatisch aus und einige arbeiten sowohl mit automatischen als auch manuellem Handeln auf Grundlage der Ergebnisse verschiedener Indikatoren. Da ich zur zweiten Gruppe gehöre, wollte ich ein interaktives Tool, mit dem ich Risiko- und Prämien-Levels direkt vom Chart aus dynamisch abschätzen kann. In diesem Beitrag wird erläutert, wie man einen interaktiven, halb-automatischen Expert Advisor mit vorab festgelegten Eigenkapitalrisiko und einem R/R-Verhältnis (relatives Risiko) implementiert. Das Expert Advisor Risiko sowie die Parameter für relativer Risiko und die Postengrößen können während der EA-Laufzeit in seinem Bedienfeld verändert werden.


Grafische Interfaces X: Updates für die Easy And Fast Bibliothek (Build 2)
Seit der Veröffentlichung des vorangegangenen Artikels dieser Serie, hat die Easy And Fast Bibliothek einige neue Features bekommen. Die Bibliotheksstruktur und der Programmcode wurden teilweise optimiert, was die CPU-Auslastung leicht reduziert hat. Einige wiederkehrende Methoden in vielen Control-Klassen wurden in die CElement Basisklasse bewegt.


LifeHack für Händler: ForEach mit #define zubereiten
Eine Zwischenstufe für diejenigen, die immer noch in MQL4 schreiben und nicht auf MQL5 umsteigen können. Wir suchen weiter nach den Möglichkeiten, Codes im MQL4-Stil zu schreiben. Diesmal betrachten wir die Makrosubstitution des Präprozessors #define.


Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XXI): Handelsklassen - Plattformübergreifendes Basis-Handelsobjekt
In diesem Artikel werden wir mit der Entwicklung des neuen Bibliotheksbereichs beginnen - die Handelsklassen. Außerdem werden wir die Entwicklung eines einheitlichen Basisobjekts für den Handel auf den Plattformen MetaTrader 5 und MetaTrader 4 in Betracht ziehen. Wenn ein Auftrag an den Server gesendet wird, bedeutet ein solches Handelsobjekt, dass verifizierte und korrekte Parameter der Handelsanfrage an den Server übergeben werden.


Cross-Plattform Expert Advisor: Orders
MetaTrader 4 und MetaTrader 5 verwenden unterschiedliche Konventionen, um den Handel durchzuführen. Dieser Artikel diskutiert die Möglichkeit, mit einem Klassenobjekt die Aufgaben des Handels mit den Server durchzuführen, unabhängig davon, auf welcher Handelsplattform oder in welchem Modus ein Cross-Plattform Expert Advisor arbeitet.


Die Darstellung der Optimierung einer Handelsstrategie im MetaTrader 5
Der Artikel implementiert eine MQL-Anwendung mit einem grafischen Interface zur erweiterten Darstellung der Optimierung. Das grafische Interface verwendet die letzte Version der Bibliothek EasyAndFast. Viele Anwender fragen sich, warum MQL-Anwendungen überhaupt grafische Interfaces benötigen. Dieser Artikel zeigt einen von mehreren Fällen, die für Händler nützlich sein können.


Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XXXIII): Schwebende Handelsanfragen - Entfernen und Ändern von Orders und Positionen unter bestimmten Bedingungen
In diesem Artikel werden wir die Beschreibung des Konzepts des Handels mit schwebenden Anfragen vervollständigen und die Funktionen zum Entfernen von Pending-Orders sowie zur Änderung von Orders und Positionen unter bestimmten Bedingungen schaffen. Auf diese Weise werden wir über die gesamte Funktionalität verfügen, die es uns ermöglicht, einfache benutzerdefinierte Strategien bzw. EA-Verhaltenslogiken zu entwickeln, die unter benutzerdefinierten Bedingungen aktiviert werden.


Graphical Interfaces I: Animation des graphischen Interfaces (Kapitel 3)
In dem vorherigen Artikel haben wir eine Formular-Klasse (Form class) mit Steuerelementen (Controls) entwickelt. In diesem Artikel werden wir die Klasse mit Methoden auffüllen, welche es möglich machen, das Formular über den Chartbereich zu bewegen. Wir werden anschließend diese Komponente in den Kern der Bibliothek mit aufnehmen. Zudem werden wir sicherstellen, dass sich die Farbe der Form verändert, sobald sich die Maus darüber befindet.


Universal Expert Advisor: Das Event-Modell und der Trading-Strategie Prototyp (Part 2)
Dieser Artikel führt die Serie der Publikationen eines universellen Expert-Advisors fort. Dieser Teil beschreibt ausführlich das originale Event-Modell, welches auf einer zentralisierten Datenverarbeitung basiert und bestimmt die Struktur der Basisklasse CStrategy dieser Trading-Engine.


Der Player des Handels auf Basis der Abschlusshistorie
Der Player des Handels. Nur vier Wörter, keine Erklärung erforderlich. Man denkt an eine kleine Kiste mit Knöpfen. Drückt man einen Knopf, erfolgt die Wiedergabe. Bewegt man den Hebel, ändert sich die Wiedergabegeschwindigkeit. Die Realität sieht sehr ähnlich aus. In diesem Beitrag möchte ich mein Programm vorstellen, das die Handelshistorie fast wie in Echtzeit abspielt. Der Beitrag behandelt einige Nuancen der OOP bei der Arbeit mit Indikatoren und der Verwaltung von Diagrammen.


Statistische Verteilungen von Wahrscheinlichkeiten in MQL5
Dieser Beitrag behandelt Verteilungen von Wahrscheinlichkeiten (normal, lognormal, binomial, logistisch, Cauchy-Verteilung, Studentsche t-Verteilung, Laplace-Verteilung, Poisson-Verteilung, Secans-Hyperbolicus-Verteilung, Beta- und Gamma-Verteilung) zufälliger Statistiken in der angewandten Statistik. Er nennt ebenfalls Klassen für den Umgang mit diesen Verteilungen.


Die eigene, multi-threaded, asynchrone Web-Anfrage in MQL5
Der Artikel beschreibt die Bibliothek, mit der Sie die Effizienz von HTTP-Anfragen mit WebRequest in MQL5 erhöhen können. Die Ausführung von WebRequest im nicht-blockierenden Modus verwendet in zusätzliche Threads, die Hilfscharts und Expert Advisors verwendet, um nutzerdefinierte Ereignisse austauschen und gemeinsame Ressourcen lesen. Die Quellcodes sind ebenfalls besprochen und beigefügt.


Muster mit Beispielel (Taiul I): Multiple-Tops
Dies ist der erste Artikel einer Serie, die sich mit Umkehrmustern im Rahmen des algorithmischen Handels beschäftigt. Wir werden mit der interessantesten Musterfamilie beginnen, die aus den Mustern Doppel-Top (Hochs) und Doppel-Bottom (Tiefs) hervorgegangen ist.


Channels zeichnen - Innen- und Außenansicht
Ich glaube ohne Übertreibung sagen zu können, dass Channels das beliebteste Tool zur Analyse von Märkten und für Handelsentscheidungen nach dem gleitenden Durchschnitt sind. Ohne zu tief in die Unmengen an Handelsstrategien einsteigen zu wollen, die Channels und ihre Komponenten verwenden, geht es in diesem Beitrag um die mathematischen Grundlagen und die praktische Implementierung eines Indikators, der auf dem Bildschirm des Client-Terminals einen Channel zeichnet, der durch drei Extrema festgelegt ist.


Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XX): Erstellen und Speichern von Programmressourcen
Der Artikel beschäftigt sich mit dem Speichern von Daten im Quellcode des Programms und dem Erstellen von Audio- und Grafikdateien daraus. Bei der Entwicklung einer Anwendung benötigen wir oft Audio und Bilder. Die MQL-Sprache verfügt über mehrere Methoden zur Verwendung solcher Daten.


Fertige Expert Advisors von MQL5 Wizard laufen auf MetaTrader 4
Im Artikel wird ein einfacher Emulator der MetaTrader 5 Handelsumgebung für den MetaTrader 4 vorgestellt. Mithilfe des Emulators werden Handelsklassen der Standardbibliothek übertragen und angepasst. Dementsprechend können die Expert Advisors, die MetaTrader 5 Wizard erzeugt, in MetaTrader 4 kompiliert und unverändert gestartet werden.


Erweiterter EA-Konstruktor für MetaTrader - botbrains.app
In diesem Artikel demonstrieren wir die Funktionen von botbrains.app - einer no-code Plattform für die Entwicklung von Handelsrobotern. Um einen Handelsroboter zu erstellen, brauchen Sie keinen Code zu schreiben - ziehen Sie einfach die notwendigen Blöcke auf das Schema, legen Sie ihre Parameter fest und stellen Sie Verbindungen zwischen ihnen her.

Eine Schritt-für-Schritt-Anleitung zum Handel mit der Break of Structure (BoS)-Strategie
Ein umfassender Leitfaden für die Entwicklung eines automatisierten Handelsalgorithmus auf der Grundlage der Break of Structure (BoS)-Strategie. Detaillierte Informationen zu allen Aspekten der Erstellung eines Advisors in MQL5 und dessen Test in MetaTrader 5 - von der Analyse von Preisunterstützung und -widerstand bis hin zum Risikomanagement


Entwicklung eines plattformübergreifenden Grider-EAs (Teil II): Kursspannenbasiertes Raster in Trendrichtung
In diesem Artikel werden wir einen Grider-EA für den Handel in einer Trendrichtung innerhalb einer Kursspanne entwickeln. Somit ist der EA vor allem für den Devisen- und Rohstoffmarkt geeignet. Nach den Tests zeigte unser Grider seit 2018 einen Gewinn. Leider gilt dies nicht für den Zeitraum 2014-2018.


Die Analyse der Handelsergebnisse mit den HTML-Berichten
Die MetaTrader 5 Plattform bietet Funktionen zum Speichern von Handelsberichten sowie die Test- und Optimierungsberichte des Expert Advisors. Handels- und Testberichte können in zwei Formaten gespeichert werden: XLSX und HTML, während der Optimierungsbericht in XML gespeichert werden kann. In diesem Artikel beschäftigen wir uns mit dem HTML-Testbericht, dem XML-Optimierungsbericht und dem HTML-Bericht über die Handelshistorie.


OOP in MQL5 anhand von Beispielen: Fehlercodes und Warnmeldungen bearbeiten
In diesem Beitrag wird ein Beispiel für die Erstellung einer Klasse zur Verarbeitung von Meldungen des Handelsservers sowie aller während der Laufzeit des betreffenden MQL-Programms eintretenden Fehler. Wenn Sie diesen Artikel lesen, erfahren Sie, wie in MQL5 mit Klassen und Objekten gearbeitet wird. Zugleich ist dies ein handliches Werkzeug für den Umgang mit Fehlern, das Sie außerdem passgenau auf Ihre jeweiligen Bedürfnisse zuschneiden können.


Die Betrachtung der CCanvas-Klasse. Wie man transparente Objekte zeichnet
Sie wollen mehr als nur komische Grafiken von gleitenden Mittelwerten? Sie möchten etwas Schöneres in Ihrem Terminal abbilden, als nur ein schlichtes, gefülltes Rechteck? Das geht! Im Terminal kann man nämlich tatsächliche attraktive Grafiken zeichnen. Und zwar durch Implementierung der CСanvas-Klasse, die zur Erzeugung von individuell angepassten Grafiken benutzt wird. Mit dieser Klasse können Sie Transparenz umsetzen, Farben mischen und sogar den Anschein von Transparenz durch Überlappung und Ineinanderlaufen von Farben erreichen.


Kennenlernen der CCanvas Klasse. Kantenglättung (Antialiasing) und Schatten
Der Algorithmus der Kantenglättung der CCanvas Klasse ist die Basis für alle Konstrukte, die eine Kantenglättung verwenden. Der Artikel beschreibt, wie der Algorithmus arbeitet und bietet prägnante Beispiele der Visualisierung. Es behandelt auch das Zeichnen von Schattierungen von Grafik-Objekte und hat einen ausführlichen Algorithmus zum Zeichnen von Schattierungen auf der Leinwand (canvas) entwickelt . Die Numerik-Bibliothek ALGLIB wird für Berechnungen verwendet.


Cross-Plattform Expert Advisor: Wiederverwendung von Komponenten aus der Standardbibliothek von MQL5
Es gibt einige Komponenten in der Standardbibliothek von MQL5, die für eine MQL4-Version eines Cross-Plattform Expert Advisors hilfreich sein könnten. Dieser Artikel befasst sich mit einem Verfahren zur Herstellung von bestimmten Komponenten aus der Standardbibliothek von MQL5, das sie kompatibel für den Kompiler der Programmiersprache MQL4 macht.


Cross-Plattform Expert Advisor: Geldmanagement
Dieser Artikel beschreibt die Implementierung von Methoden des Geldmanagements für einen Cross-Plattform Expert Advisor. Die Klassen des Geldmanagements führen die Berechnungen der Lotgröße der nächsten Position des Expert Advisors durch.


Wie man nicht hinterherhinkende digitale Filter erzeugt
Dieser Beitrag beschreibt einen der Ansätze zur Bestimmung eines nützlichen Signals (Trend) in Datenströmen. Kleine filternde (glättende) Tests, die auf Marktnotierungen angewendet werden, belegen das Potential zur Erzeugung nicht hinterherhinkender digitaler Filter (Indikatoren), die auf den letzten Bars nicht erneut gezeichnet werden.


Graphische Interfaces VIII: Der Kalender (Kapitel 1)
Im Kapitel VIII der Reihe von Artikeln, die sich der Erstellung graphischer Oberflächen im MetaTrader widmet, betrachten wir komplexe, zusammengesetzte Steuerelemente wie Kalender, Baumdarstellung und einen Dateinavigator. Aufgrund der umfangreichen Informationen gibt es für jedes Thema eigene Artikel. Das erste Kapitel dieses Teil beschreibt das Kalenderelement und seine erweiterte Version, ein Dropdown-Kalender.


Statistische Carry Trade-Strategie
Ein statistischer Algorithmus zum Schutz von offenen, positiven Swap-Positionen vor ungewollten Kursbewegungen. Dieser Artikel widmet sich einer Variante der Carry Trade Protection-Strategie, die die potentiellen Risiken einer Kursbewegung in die entgegengesetzte Richtung einer offenen Position kompensiert.


Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XVI): Ereignisse der Kollektionssymbole
In diesem Artikel werden wir eine neue Basisklasse aller Bibliotheksobjekte erstellen, die die Ereignisfunktionen allen ihren Nachkommen hinzufügt, und die Klasse zur Verfolgung von Ereignissen der Kollektionssymbole auf der Grundlage der neuen Basisklasse entwickeln. Wir werden auch die Konto- und Ereignisklassen für die Entwicklung der neuen Basisobjektfunktionalität ändern.


Zeichnen von Indikatoremissionen in MQL5
In diesem Beitrag behandeln wir die Emission von Indikatoren, eine neuen Herangehensweise an die Marktforschung. Die Berechnung von Emissionen basiert auf den Schnittpunkten verschiedener Indikatoren: Nach jedem Tick erscheinen immer mehr Punkte mit unterschiedlichen Farben und Formen. Sie formen zahlreiche Cluster wie Nebel, Wolken, Bahnen, Linien, Bögen usw. Diese Formen helfen uns beim Finden der unsichtbaren Kräfte, die die Bewegung von Marktpreisen beeinflussen.


Praktische Anwendung von Datenbanken für die Marktanalyse
Die Arbeit mit Daten ist zur Hauptaufgabe moderner Software geworden, sowohl autonomer als auch vernetzter Programme. Dazu wurde eine besondere Form von Software entwickelt. Diese Programme zur Verwaltung von Datenbanken (DBMS) ermöglichen die Strukturierung, Systematisierung und Organisation von Daten für ihre Speicherung und Verarbeitung auf Computern. Was den Börsenhandel betrifft, nutzen nur die wenigsten Analysten Datenbanken für ihre Arbeit. Es gibt jedoch Aufgaben, für die eine solche Lösung geeignet sein müsste. In diesem Beitrag wird ein Beispiel für Indikatoren vorgestellt, die sowohl unter einer Client-Server- als auch einer Datei-Server-Architektur Daten in Datenbanken speichern sowie aus diesen laden können.