Kontinuierliche Walk-Forward-Optimierung (Teil 6): Logikteil und die Struktur des Auto-Optimizers
Kontinuierliche Walk-Forward-Optimierung (Teil 6): Logikteil und die Struktur des Auto-Optimizers
Wir haben bereits früher die Schaffung einer automatischen Walk-Forward-Optimierung in Betracht gezogen. Dieses Mal werden wir zur internen Struktur des Auto-Optimizers übergehen. Der Artikel wird für all diejenigen nützlich sein, die mit dem erstellten Projekt weiterarbeiten und es modifizieren möchten, sowie für diejenigen, die die Programmlogik verstehen möchten. Der aktuelle Artikel enthält UML-Diagramme, die die interne Struktur des Projekts und die Beziehungen zwischen den Objekten darstellen. Er beschreibt auch den Prozess des Optimierungsstarts, enthält jedoch keine Beschreibung des Implementierungsprozesses des Optimizers.
MQL als Darstellungsmittel für graphische Schnittstellen von MQL-Programmen. Teil 2
MQL als Darstellungsmittel für graphische Schnittstellen von MQL-Programmen. Teil 2
In diesem Beitrag wird die neue Konzeption zur Beschreibung der Fenster-Schnittstelle von MQL-Programmen anhand der Strukturen von MQL weiter überprüft. Die automatische Erstellung einer GUI auf der Grundlage des MQL-Markups bietet zusätzliche Funktionalität für die Zwischenspeicherung und dynamische Generierung der Elemente und die Steuerung der Stile und neuen Schemata für die Verarbeitung der Ereignisse. Beigefügt ist eine erweiterte Version der Standardbibliothek von Steuerelementen.
MQL als Darstellungsmittel für graphische Schnittstellen von MQL-Programmen. Teil 1
MQL als Darstellungsmittel für graphische Schnittstellen von MQL-Programmen. Teil 1
Dieser Artikel schlägt ein neues Konzept zur Beschreibung der Fenster-Schnittstelle von MQL-Programmen vor, wobei die Strukturen von MQL verwendet werden. Spezielle Klassen transformieren das sichtbare MQL-Markup in die GUI-Elemente und erlauben es, diese zu verwalten, ihre Eigenschaften einzustellen und die Ereignisse in einer einheitlichen Weise zu verarbeiten. Es enthält auch einige Beispiele für die Verwendung des Markups für die Dialoge und Elemente einer Standardbibliothek.
Kontinuierliche Walk-Forward-Optimierung (Teil 5): Projektübersicht Auto-Optimizer und Erstellen einer GUI
Kontinuierliche Walk-Forward-Optimierung (Teil 5): Projektübersicht Auto-Optimizer und Erstellen einer GUI
Dieser Artikel bietet eine weitere Beschreibung der Walk-Forward-Optimierung im MetaTrader 5-Terminal. In früheren Artikeln betrachteten wir Methoden zur Erstellung und Filterung des Optimierungsberichts und begannen mit der Analyse der internen Struktur der für den Optimierungsprozess verantwortlichen Anwendung. Der Auto-Optimizer ist als C#-Anwendung implementiert und verfügt über eine eigene grafische Oberfläche. Der fünfte Artikel ist der Erstellung dieser grafischen Oberfläche gewidmet.
Zeichnen von Messuhren mithilfe der Klasse CCanvas
Zeichnen von Messuhren mithilfe der Klasse CCanvas
Wir finden Messuhren in Autos und Flugzeugen, in der industriellen Fertigung und in unserem Alltag. Sie werden in allen möglichen Bereichen eingesetzt, die eine schnelle Reaktion auf das Verhalten eines kontrollierten Werts erfordern. Dieser Beitrag beschreibt die Bibliothek der Messuhren für MetaTrader 5.
So formulieren Sie das Pflichtenheft eines Auftrages für einen Handelsroboter
So formulieren Sie das Pflichtenheft eines Auftrages für einen Handelsroboter
Handeln Sie nach Ihrer eigenen Strategie? Wenn Sie Ihre Handelsregeln formalisieren und als Algorithmus für ein Programm beschreiben können, wäre es doch besser, Ihren Handel einem automatisierten Expert Advisor anzuvertrauen. Ein Roboter braucht weder Schlaf noch Nahrung und ist keinen menschlichen Schwächen unterworfen. In diesem Artikel zeigen wir Ihnen, wie Sie, um einen Handelsroboter im Freelance-Service in Auftrag zu geben, das sogenannte Pflichtenheft erstellen.
Entdecken der Trading-Strategieklassen der Standard Library - Anpassungsstrategien
Entdecken der Trading-Strategieklassen der Standard Library - Anpassungsstrategien
In diesem Artikel werden wir Ihnen zeigen, wie Sie sich mit den Trading-Strategieklassen der Standard Library vertraut machen, wie Sie angepasste Strategien, Filter und Signale hinzufügen als auch wie Sie sich der Patterns-and-Models-Logik des MQL5-Assistenten bedienen. Am Ende wird es Ihnen spielend möglich sein, eigene Strategien via der Standardindikatoren von MetaTrader 5 hinzuzufügen und mittels MQL5-Assistent einen Code für einen hochfunktionalen Expert Advisor zu schreiben.
Das MQL5-Kochbuch: Implementierung Ihrer eigenen Markttiefe
Das MQL5-Kochbuch: Implementierung Ihrer eigenen Markttiefe
Dieser Beitrag führt vor, wie die Markttiefe (Depth of Market, DOM) programmatisch verwendet wird, und beschreibt das Arbeitsprinzip der Klasse CMarketBook, durch die die Standardbibliothek von MQL5-Klassen erweitert werden kann und die praktische Methoden für die Verwendung der DOM liefert.
ZUP - Universeller ZigZag mit Pesavento-Mustern. Suche nach Mustern
ZUP - Universeller ZigZag mit Pesavento-Mustern. Suche nach Mustern
Die Indikator-Plattform ZUP erlaubt es, nach einer Vielzahl bekannter Muster zu suchen, deren Parameter bereits festgelegt wurden. Man kann solche Parameter auch an eigene Anforderungen anpassen. Darüber hinaus gibt es die Möglichkeit, neue Muster mithilfe des grafischen Interfaces des ZUP-Indikators zu erstellen und deren Parameter in einer Datei zu speichern. Danach kann man schnell überprüfen, ob neue Muster in den Charts entstehen.
Universeller Expert Advisor: Benutzerstrategien und Hilfsklassen (Teil 3)
Universeller Expert Advisor: Benutzerstrategien und Hilfsklassen (Teil 3)
In diesem Artikel werden wir mit der Analyse der Algorithmen der Klasse CStrategy Trading Engine fortfahren. Der dritte Teil der Serie enthält die detaillierte Analyse von Beispielen, wie bestimmte Handelsstrategien mit diesem Ansatz entwickelt werden können. Ein besonderes Augenmerk wird auf die Hilfsalgorithmen gelegt — Ein Expert Advisor Protokollierungs-System (logging) und der Datenzugriff über gewöhnliche Indexe (Close[1], Open[0] etc.)
Erstellung und Ausgabe von Handelsberichten sowie Mitteilungsversand per SMS
Erstellung und Ausgabe von Handelsberichten sowie Mitteilungsversand per SMS
Börsenhändler haben nicht immer Zeit und Lust stundenlang an Ihrem Ausgabegerät für Geschäftsvorgänge zu sitzen. Besonders dann nicht, wenn ihre Handelssysteme mehr oder weniger formelgestützt arbeiten und in der Lage sind, einige Marktlagen automatisch zu erkennen. In diesem Beitrag wird beschrieben, wie man einen Bericht über Handelsergebnisse mithilfe eines Expert-Systems, eines Indikators oder eines Skripts in Form einer Datei im HTML-Format erstellt und mittels FTP auf einen Webserver lädt. Überdies wird die Frage des Versandes von Mitteilungen über Handelsereignisse per E-Mail sowie per SMS an Mobiltelefone erörtert.
MetaTrader 5: Handelsprognosen und Umsatzzahlen per E-Mail in Blogs, sozialen Netzen und auf thematischen Webseiten veröffentlichen
MetaTrader 5: Handelsprognosen und Umsatzzahlen per E-Mail in Blogs, sozialen Netzen und auf thematischen Webseiten veröffentlichen
Dieser Beitrag zielt darauf ab, gebrauchsfertige Lösungen für die Veröffentlichung von Prognosen mittels MetaTrader 5. Er behandelt eine Reihe von Gedanken: von der Verwendung thematischer Webseiten zur Veröffentlichung von MetaTrader-Meldungen über die Erstellung einer eigenen Webseite ohne Erfahrung in Sachen Webprogrammierung bis hin zur abschließenden Einbindung in den Mikrobloggingdienst eines sozialen Netzes, die zahlreichen Leserinnen und Lesern ermöglicht, die Prognosen zu lesen und zu verfolgen. Alle hier vorgestellten Lösungen sind hundertprozentig kostenlos und können von allen eingerichtet werden, die über E-Mail- und FTP-Grundkenntnisse verfügen. Dem Einsatz derselben Verfahren für berufsmäßige Webhosting- und gewerbliche Handelsprognosedienste steht nichts entgegen.
Übersetzung von MQL4 in MQL5
Übersetzung von MQL4 in MQL5
Dieser Beitrag bietet eine Kurzanleitung zu den Funktionen der Programmiersprache MQL4 und hilft bei der Umstellung Ihrer Programme von MQL4 auf MQL5. Für jede MQL4-Funktion (mit Ausnahme der Handelsfunktionen) werden die entsprechende Beschreibung und die Bereitstellung in MQL5 vorgestellt, was den Zeitaufwand für den Wechsel erheblich verkürzt. Der Einfachheit halber wurden die MQL4-Funktionen ähnlich wie in der MQL4-Hilfe in Gruppen aufgeteilt.
Die Arbeit mit ZIP-Archiven in MQL5 ohne Bibliotheken von Drittanbietern
Die Arbeit mit ZIP-Archiven in MQL5 ohne Bibliotheken von Drittanbietern
Die Sprache MQL5 entwickelt sich weiter und es wird zu ihr ständig neue Funktionen hinzugefügt, mit Daten zu arbeiten. Schon seit einiger Zeit ist es wegen Innovationen möglich geworden, mit ZIP-Archiven regelmäßig zu arbeiten, ohne die Beteiligung von Bibliotheken DLL der Drittanbieter. Dieser Artikel beschreibt im Detail, wie das gemacht wird. Als Beispiel ist die Beschreibung der CZIP Klasse - das universelle Werkzeug für das Lesen, Erstellen und Modifizierung der ZIP-Archive.
Verwendung von Netzwerkfunktionen oder MySQL ohne DLL: Teil II - Programm zur Überwachung von Änderungen der Signaleigenschaften
Verwendung von Netzwerkfunktionen oder MySQL ohne DLL: Teil II - Programm zur Überwachung von Änderungen der Signaleigenschaften
Im vorherigen Teil haben wir die Implementierung des MySQL-Konnektors besprochen. In diesem Artikel wenden wir uns seiner Anwendung durch die Implementierung eines Dienstes zum Sammeln von Signaleigenschaften und des Programms zum Anzeigen ihrer Änderungen im Laufe der Zeit. Das implementierte Beispiel ist praktisch sinnvoll, wenn Nutzer Änderungen an Eigenschaften beobachten müssen, die auf der Webseite des Signals nicht angezeigt werden.
Verwendung von Netzwerkfunktionen oder MySQL ohne DLL: Teil I - Konnektor
Verwendung von Netzwerkfunktionen oder MySQL ohne DLL: Teil I - Konnektor
MetaTrader 5 hat kürzlich Netzwerkfunktionen erhalten. Dies eröffnete Programmierern, die Produkte für den Markt entwickeln, große Möglichkeiten. Jetzt können sie Dinge implementieren, für die zuvor dynamische Bibliotheken erforderlich waren. In diesem Artikel werden wir sie am Beispiel der Implementierung von MySQL betrachten.
Wie man 3D-Grafiken mit DirectX in MetaTrader 5 erstellt
Wie man 3D-Grafiken mit DirectX in MetaTrader 5 erstellt
3D-Grafiken sind ein hervorragendes Mittel zur Analyse riesiger Datenmengen, da sie die Visualisierung verborgener Muster ermöglichen. Diese Aufgaben können direkt in MQL5 gelöst werden, während die Funktionen von DireсtX die Erstellung dreidimensionaler Objekte ermöglichen. So ist es sogar möglich, Programme von beliebiger Komplexität zu erstellen, sogar 3D-Spiele für MetaTrader 5. Beginnen Sie mit dem Erlernen der 3D-Grafik, indem Sie einfache dreidimensionale Formen zeichnen.
Kontinuierliche Walk-Forward-Optimierung (Teil 3): Eine Roboters für Autoadaptierung anpassen
Kontinuierliche Walk-Forward-Optimierung (Teil 3): Eine Roboters für Autoadaptierung anpassen
Der dritte Teil dient als Brücke zwischen den beiden vorhergehenden Teilen: Er beschreibt den Mechanismus der Interaktion mit der DLL, der im ersten Artikel besprochen wurde, und die Objekte zum Laden von Berichten, die im zweiten Artikel beschrieben wurden. Wir werden den Prozess der Wrapper-Erstellung für eine Klasse analysieren, die aus der DLL importiert wird und die eine XML-Datei mit der Handelshistorie bildet. Wir werden auch eine Methode für die Interaktion mit diesem Wrapper in Betracht ziehen.
SQLite: Natives Arbeiten mit SQL-Datenbanken in MQL5
SQLite: Natives Arbeiten mit SQL-Datenbanken in MQL5
Die Entwicklung von Handelsstrategien ist mit dem Umgang mit großen Datenmengen verbunden. Jetzt können Sie mit Datenbanken mit SQL-Abfragen auf der Basis von SQLite direkt in MQL5 arbeiten. Ein wichtiges Merkmal dieser Engine ist, dass die gesamte Datenbank in einer einzigen Datei auf dem PC des Benutzers abgelegt wird.
MQL-Parsing mit Hilfe von MQL
MQL-Parsing mit Hilfe von MQL
Der Artikel beschreibt einen Präprozessor, einen Scanner und einen Parser, die beim Parsen der MQL-basierten Quellcodes verwendet werden sollten. Die MQL-Implementierung ist beigefügt.
Kontinuierliche Walk-Forward-Optimierung (Teil 1): Arbeiten mit Optimierungsberichten
Kontinuierliche Walk-Forward-Optimierung (Teil 1): Arbeiten mit Optimierungsberichten
Der erste Artikel beschäftigt sich mit der Erstellung eines Toolkits für die Arbeit mit Optimierungsberichten, für den Import aus dem Terminal sowie für die Filterung und Sortierung der erhaltenen Daten. MetaTrader 5 ermöglicht das Laden von Optimierungsergebnissen, unser Ziel ist es jedoch, dem Optimierungsbericht unsere eigenen Daten hinzuzufügen.
Wie man nutzerdefinierte MOEX-Symbole in MetaTrader 5 erstellt und testet
Wie man nutzerdefinierte MOEX-Symbole in MetaTrader 5 erstellt und testet
Der Artikel beschreibt die Erstellung eines nutzerdefinierten Symbols einer Börse mit der Sprache MQL5. Insbesondere wird die Verwendung von Börsenkursen von der beliebten Finam-Website in Betracht gezogen. Eine weitere in diesem Artikel betrachtete Option ist die Möglichkeit, mit einem beliebigen Format von Textdateien zu arbeiten, die bei der Erstellung des nutzerdefinierten Symbols verwendet werden. Dies ermöglicht die Arbeit mit beliebigen Finanzsymbolen und Datenquellen. Nachdem wir ein benutzerdefiniertes Symbol erstellt haben, können wir alle Funktionen des Strategy Tester des MetaTrader 5 nutzen, um Handelsalgorithmen für Börseninstrumente zu testen.
Optimierungsmanagement (Teil II): Erstellen der Schlüsselobjekte und der Add-on-Logik
Optimierungsmanagement (Teil II): Erstellen der Schlüsselobjekte und der Add-on-Logik
Dieser Artikel ist eine Fortsetzung der vorherigen Veröffentlichung über das Erstellen einer grafischen Oberfläche für das Optimierungsmanagement. Der Artikel berücksichtigt die Logik des Add-ons. Es wird ein Wrapper für das MetaTrader 5 Terminal erstellt, der es ermöglicht, das Add-on als verwalteten Prozess über C# auszuführen. Darüber hinaus wird in diesem Artikel der Betrieb mit Konfigurationsdateien und Setup-Dateien betrachtet. Die Anwendungslogik ist in zwei Teile gegliedert: Der erste Teil beschreibt die Methoden, die nach dem Drücken einer bestimmten Taste aufgerufen werden, während der zweite Teil den Start und die Verwaltung der Optimierung umfasst.
Optimierungsmanagement (Teil I): Erstellen einer GUI
Optimierungsmanagement (Teil I): Erstellen einer GUI
Dieser Artikel beschreibt den Prozess der Erstellung einer Erweiterung für das MetaTrader-Terminal. Die vorgestellte Lösung hilft, den Optimierungsprozess zu automatisieren, indem Optimierungen in anderen Terminals durchgeführt werden. Es werden noch einige weitere Artikel zu diesem Thema geschrieben. Die Erweiterung wurde unter Verwendung der Sprache C# und der Designmuster entwickelt, was zusätzlich die Fähigkeit demonstriert, die Terminalfunktionen durch die Entwicklung benutzerdefinierter Module zu erweitern, sowie die Fähigkeit, benutzerdefinierte grafische Benutzeroberflächen mit der Funktionsvielfalt einer bevorzugten Programmiersprache zu erstellen.
Beurteilung der Fähigkeit des Fraktalindex und des Hurst-Exponenten, finanzielle Zeitreihen vorherzusagen.
Beurteilung der Fähigkeit des Fraktalindex und des Hurst-Exponenten, finanzielle Zeitreihen vorherzusagen.
Studien, die sich auf die Suche nach dem fraktalen Verhalten von Finanzdaten beziehen, deuten darauf hin, dass hinter dem scheinbar chaotischen Verhalten von ökonomischen Zeitreihen verborgene stabile Mechanismen des kollektiven Verhaltens der Teilnehmer stehen. Diese Mechanismen können zur Entstehung einer Preisdynamik an der Börse führen, die spezifische Eigenschaften von Preisreihen definieren und beschreiben kann. Im Handel könnte man von den Indikatoren profitieren, die effizient und zuverlässig die in der Praxis relevanten fraktalen Parameter in Umfang und Zeitrahmen schätzen können.
Eine DLL für MQL5 in 10 Minuten (Teil II): Erstellen mit Visual Studio 201
Eine DLL für MQL5 in 10 Minuten (Teil II): Erstellen mit Visual Studio 201
Der ursprüngliche Basisartikel hat seine Relevanz nicht verloren. Daher, wenn Sie an diesem Thema interessiert sind, sollten Sie unbedingt den ersten Artikel lesen. Es ist viel Zeit seitdem vergangen, und Visual Studio 2017 verfügt mittlerweile über eine aktualisierte Oberfläche. Auch der MetaTrader 5 hat neue Funktionen erhalten. Der Artikel enthält eine Beschreibung der Phasen der DLL-Projektentwicklung sowie das Einrichten und Interagieren mit dem MetaTrader 5.
Die rechnerische Fähigkeiten von MATLAB 2018 im MetaTrader 5 nutzen
Die rechnerische Fähigkeiten von MATLAB 2018 im MetaTrader 5 nutzen
Nach dem Upgrade des MATLAB-Pakets im Jahr 2015 ist es notwendig, auf eine moderne Art der Erstellung von DLL-Bibliotheken umzustellen. Der Artikel veranschaulicht anhand eines exemplarischen prädiktiven Indikators die Besonderheiten der Verknüpfung von MetaTrader 5 und MATLAB mit modernen 64-Bit-Versionen der Plattformen, die heute genutzt werden. Mit der gesamten Verbindungssequenz von MATLAB können MQL5-Entwickler Anwendungen mit erweiterten Rechenfunktionen viel schneller erstellen und so "Fallstricke" vermeiden.
Integration von MetaTrader 5 und Python: Daten senden und empfangen
Integration von MetaTrader 5 und Python: Daten senden und empfangen
Eine umfassende Datenverarbeitung erfordert umfangreiche Werkzeuge und geht oft über den Sandkasten (Sandbox) einer einzigen Anwendung hinaus. Für die Verarbeitung und Analyse von Daten, Statistiken und maschinellem Lernen werden spezielle Programmiersprachen verwendet. Eine der führenden Programmiersprachen für die Datenverarbeitung ist Python. Der Artikel enthält eine Beschreibung, wie man MetaTrader 5 und Python über Sockets verbindet und wie man Kurse über die Terminal-API erhält.
Extrahieren von strukturierten Daten aus HTML-Seiten mit Hilfe von CSS-Selektoren
Extrahieren von strukturierten Daten aus HTML-Seiten mit Hilfe von CSS-Selektoren
Der Artikel beschreibt eine universelle Methode zur Analyse und Konvertierung von Daten aus HTML-Dokumenten auf Basis von CSS-Selektoren. Handelsberichte, Testerberichte, Ihren bevorzugten Wirtschaftskalender, öffentliche Signale, Kontoüberwachung und zusätzliche Online-Kursquellen werden direkt mit MQL verfügbar gemacht.
Verwenden von OpenCL, um Kerzenmuster zu testen
Verwenden von OpenCL, um Kerzenmuster zu testen
Der Artikel beschreibt den Algorithmus, um die Kerzenmuster von OpenCL für den Tester im Modus "1 Minute OHLC" zu implementieren. Wir werden auch die Geschwindigkeiten des integrierten Strategietesters, gestartet in schnellen und langsamen Modi, vergleichen.