Cross-Platform Expert Advisor: Signale
Dieser Artikel beschreibt die Klassen CSignal und CSignals, die in Cross-Plattform Expert Advisor verwendet werden. Es werden die Unterschiede zwischen MQL4 und MQL5 untersucht, wie sie jeweils auf bestimmte Daten zum Ermitteln eines Handelssignals zugreifen, um einen Code zu schreiben, der für beide Kompiler kompatible ist.
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.
Hilfen zur Auswahl und Navigation in MQL5 und MQL4: Hinzufügen von Daten zum Chart
In diesem Artikel werden wir die Funktionen des Dienstprogramms weiter ausbauen. Diesmal werden wir die Möglichkeit hinzufügen, Daten anzuzeigen, die unseren Handel vereinfachen. Insbesondere werden wir die Höchst- und Tiefstpreise des Vortages, das Rundungsniveau, die Höchst- und Tiefstpreise des Jahres, die Startzeit der Sitzung usw. hinzufügen.
Entwicklung eines Symbolauswahl- und Navigationsprogramms in MQL5 und MQL4
Erfahrene Händler sind sich der Tatsache bewusst, dass die meisten zeitaufwendigen Dinge im Handel nicht das Öffnen und Verfolgen von Positionen sind, sondern das Auswählen von Symbolen und das Suchen von Einstiegspunkten. In diesem Artikel werden wir einen EA entwickeln, das die Suche nach Einstiegspunkten für Handelsinstrumente Ihres Brokers vereinfacht.
Wie man jede Art von Trailing-Stop entwickelt und mit einem EA verbindet
In diesem Artikel werden wir uns Klassen für die bequeme Erstellung verschiedener Trailing-Stops ansehen und lernen, wie man sie mit einem beliebigen EA verbindet.
Die Verwendung von WinInet in MQL5 Teil 2: POST-Anfragen und -Dateien
In diesem Artikel werden wir uns weiterhin mit den Grundlagen von internetbasierten HTTP-Anfragen und dem Informationsaustausch mit Servern befassen. Es werden neue Funktionen der CMqINet-Klasse, Methoden der Informationsübertragung mit Formularen, das Senden von Dateien mit POST-Anfragen sowie Autorisierungen auf Webseiten mit Ihrem Login unter Verwendung von Cookies behandelt.
Kontrollierte Optimierung: Simuliertes Abkühlen
Der Strategy Tester in der Handelsplattform MetaTrader 5 bietet nur zwei Optimierungsoptionen: Die vollständige Suche nach Parametern oder den genetischen Algorithmus. Dieser Artikel schlägt eine neue Methode zur Optimierung von Handelsstrategien vor — Simuliertes Abkühlen (simulated annealing). Dabei werden der Algorithmus der Methode, ihre Implementierung und die Integration in jeden Expert Advisor besprochen. Der entwickelte Algorithmus wird mit dem Moving Average EA getestet.
Multiple Regressionsanalyse. Anlegen und Prüfen von Strategien aus einer Hand
Dieser Beitrag schildert die Anwendung der multiplen Regressionsanalyse bei der Entwicklung automatischer Handelssysteme (im Weiteren Expert-Systeme). Es werden Beispiele für ihren Einsatz bei der Automatisierung der Suche nach der richtigen Strategie sowie für eine ohne nennenswerte Vorkenntnisse in Sachen Programmierung angelegte und in ein Expert-System integrierte Regressionsgleichung.
Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XIII): Objektklasse "Account" und die Kollektion von Konto-Objekten
Im vorherigen Artikel haben wir für MQL4 in der Bibliothek der Ereignisse des Positionsschließens definiert und die ungenutzten Auftragseigenschaften beseitigt. Hier werden wir die Erstellung des Konto-Objekts betrachten, die Kollektion von Konto-Objekten entwickeln und die Funktionsweise zur Verfolgung von Konto-Ereignissen vorbereiten.
Analyse der Grafiken Kontostand/Equity nach Symbolen und nach ORDER_MAGIC von Expert Advisors
Die Einführung der Hedging-Option in MetaTrader 5 ermöglichte es, gleichzeitig mehrere Expert Advisors auf einem Handelskonto handeln zu lassen. Dabei ist die Situation möglich, dass eine Strategie profitabel ist, während die andere Verluste bringt. Als Ergebnis schwankt die Grafik um Null. Für diesen Fall ist es praktisch, Kontostand- und Equity-Grafiken für jede Handelsstrategie separat zu zeichnen.
Tiefe neuronale Netzwerke (Teil III). Stichprobenauswahl und Verminderung der Dimensionen
Dieser Artikel ist eine Fortsetzung der Artikelreihe über tiefe neuronale Netze. Hierbei werden wir die Auswahl von Stichproben (Rauschunterdrückung), die Verminderung der Dimensionen der Eingangsdaten und die Aufteilung der Daten in die Datensätze train/val/test bei der Datenaufbereitung für das Training des neuronalen Netzes besprechen.
Die Rezepte MQL5 - die Handelssignale der Pivots
Im Artikel wurde der Prozess der Entwicklung und der Realisierung des Klasse-Signalgebers auf der Grundlage der Pivots dargestellt — der Wendeebenen. Auf der Grundlage dieser Klasse wird die Strategie unter Verwendung der Standardbibliothek gebaut. Es werden die Möglichkeiten der Entwicklung der Pivots-Strategie durch das Hinzufügen der Filter betrachtet.
Grafische Interfaces II: Das Menu-Item-Element (Kapitel 1)
In dem zweiten Teil dieser Serie, werden wir im Detail auf die Entwicklung von Interface Elementen, wie einen Hauptmenü und Kontextmenüs eingehen. Wir werden auch das Zeichnen und das Entwickeln einer speziellen Klasse für diese Elemente berücksichtigen. Wir werden ausführlich den Fragen der Verwaltung von Events und benutzerdefinierten Events nachgehen.
Grafische Interfaces XI: Integration der graphischen Standardbibliothek (build 16)
Eine neue Version der Grafikbibliothek zum Erstellen wissenschaftlicher Diagramme (die Klasse CGraphic) wurde vor Kurzen veröffentlicht. Mit dieser Aktualisierung der weiterentwickelten Bibliothek, um grafische Interfaces zu erstellen, wird eine Version mit neuem Steuerelemente zur Erstellung von Diagrammen eingeführt. Jetzt ist es noch einfacher, Daten verschiedener Typen zu visualisieren.
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.
Verarbeitung von Ereignissen in MQL5: Unmittelbare Änderung des Zeitraums für den gleitenden Durchschnitt
Angenommen, dass ein MA (Gleitender Durchschnitt) Indikator mit Zeitraum 13 auf ein Chart angewandt wird. Und wir den Zeitraum auf 20 ändern wollen, wir dazu aber nicht in das Dialogfenster Indikator-Eigenschaften gehen und die Zahl von 13 zu 20 ändern wollen, da wir einfach auf diese Aktionen mit der Maus und der Tastatur keine Lust mehr haben. Und wir wollen vor allem nicht den Indikator-Code öffnen und dort was ändern. Wir wollen einfach nur eine Taste drücken - und zwar "Bild nach oben" neben dem Zahlenfeld auf der Tastatur. In diesem Beitrag sage ich Ihnen wie das geht.
Neuronale Netze leicht gemacht (Teil 9): Dokumentation der Arbeit
Wir haben schon einen langen Weg hinter uns und der Code in unserer Bibliothek wird immer umfangreicher. Das macht es schwierig, den Überblick über alle Verbindungen und Abhängigkeiten zu behalten. Daher schlage ich vor, eine Dokumentation für den früher erstellten Code zu erstellen und diese mit jedem neuen Schritt zu aktualisieren. Eine gut vorbereitete Dokumentation wird uns helfen, die Integrität unserer Arbeit zu erkennen.
MQL5 beherrschen, vom Anfänger zum Profi (Teil II): Grundlegende Datentypen und die Verwendung von Variablen
Dies ist eine Fortsetzung der Serie für Anfänger. In diesem Artikel werden wir uns ansehen, wie man Konstanten und Variablen erstellt, Daten, Farben und andere nützliche Daten schreibt. Wir werden lernen, wie man Enumerationen (Aufzählungen) wie Wochentage oder Linienstile (durchgezogen, gepunktet usw.) erstellt. Variablen und Ausdrücke sind die Grundlage der Programmierung. Sie sind definitiv in 99 % der Programme vorhanden, daher ist es wichtig, sie zu verstehen. Wenn Sie also neu in der Programmierung sind, kann dieser Artikel sehr nützlich für Sie sein. Erforderliche Programmierkenntnisse: sehr einfach, innerhalb der Grenzen meines vorherigen Artikels (siehe den Link am Anfang).
MQL5 Cookbook: Verschiedene Print-Modi nutzen
Dies ist der erste Beitrag der MQL5 Cookbook-Reihe. Ich beginne mit einfachen Beispielen, damit auch diejenigen, die gerade ihren ersten Erfahrungen im Programmieren machen, mit der neuen Sprache vertraut werden. Ich kann mich noch gut an meine ersten Anstrengungen beim Entwurf und Programmieren von Handelssystemen erinnern, die sich extrem schwierig gestalteten. Das lag schlichtweg an der Tatsache, dass dies die erste Programmiersprache meines Lebens war. Doch schon bald stellte sich das Ganze als wesentlich leichter heraus als gedacht - und nach wenigen Monaten konnte ich ziemlich komplexes Programm entwickeln.
Analysieren von Charts mit den Level von DeMark Sequential und Murray-Gann
Thomas DeMark Sequential ist gut darin, Gleichgewichtsänderungen in der Preisbewegung anzuzeigen. Dies wird besonders deutlich, wenn wir seine Signale mit einem Pegelindikator, zum Beispiel Murray-Levels, kombinieren. Der Artikel ist vor allem für Anfänger und diejenigen gedacht, die ihren "Gral" noch nicht gefunden haben. Ich werde auch einige Merkmale der Levelbildung zeigen, die ich in anderen Foren nicht gesehen habe. So wird der Artikel wahrscheinlich auch für fortgeschrittene Händler nützlich sein... Anregungen und vernünftige Kritik sind willkommen...
Cross-Plattform Expert Advisor: Einführung
Dieser Artikel erläutert eine Methode, durch die leichter und schneller Cross-Plattform Expert Advisors entwickelt werden können. Die vorgeschlagene Methode vereinigt die Funktionen beider Versionen in einer einzigen Klasse, und trennt die Umsetzung der abgeleiteten Klassen für die inkompatible Funktionen.
Moving Mini-Max: ein neuer Indikator für die technische Analyse und seine Umsetzung in MQL5
Im nachfolgenden Beitrag beschreibe ich einen Prozess für die Umsetzung des Indikators Moving Mini-Max auf Basis der Arbeit 'Moving Mini-max: a new indicator for technical analysis' von Z.G. Silagadze. Die Idee hinter dem Indikator basiert auf einer Simulation von Quantentunnel-Phänomenen, die von G. Gamov in der Theorie des Alphazerfalls vorgeschlagen wurde.
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.
Prognose von Zeitreihen (Teil 2): Least-Square Support-Vector Machine (LS-SVM)
Dieser Artikel befasst sich mit der Theorie und der praktischen Anwendung des Algorithmus zur Vorhersage von Zeitreihen, basierend auf der Support-Vektor-Methode. Er schlägt auch seine Implementierung in MQL vor und stellt Testindikatoren und Expert Advisor zur Verfügung. Diese Technologie ist noch nicht in MQL implementiert worden. Aber zuerst müssen wir uns mit der Mathematik dafür vertraut machen.
3D-Modellierung in MQL5
Eine Zeitreihe stellt ein dynamisches System dar, in welches Werte einer zufälligen Größe einer nach dem anderen eintreffen: kontinuierlich oder in gewissen Zeitabständen. Der Übergang von einer flachen zur dreidimensionalen Analyse des Marktes ermöglicht es, komplexe Prozesse und Erscheinungen aus einer neuen Perspektive zu betrachten. In diesem Artikel werden Visualisierungsfunktionen für eine 3D-Darstellung zweidimensionaler Daten beschrieben.
Tipps für unerfahrene Auftraggeber
Eine Volksweisheit, die häufig den unterschiedlichsten Berühmtheiten zugeschrieben wird, lautet: „Nur wer nichts tut, macht keine Fehler.“ Wenn man nicht das Nichtstun selbst für einen Fehler hält, lässt sich diese Behauptung kaum bestreiten. Dagegen ist es absolut möglich, einmal begangene Fehler (eigene ebenso wie die anderer) zu analysieren, um die Anzahl zukünftiger Fehler zu minimieren. Hier wird der Versuch unternommen, mögliche Situationen auszuwerten, die bei der Arbeit mit dem Dienst „Freie Mitarbeit“ entstehen können.
Erstellung der Dokumentation basierend auf Quellcodes von MQL5
Der Artikel beschäftigt sich mit der Erstellung der Dokumentation zu einem Code in MQL5 und beginnt mit der Automatisierung der Platzierung von Tags. Weiter wird die Arbeit mit dem Programm Doxygen beschrieben, ihre Konfiguration und das Erhalten von Ergebnissen in verschiedenen Formaten: in HTML, HtmlHelp und in PDF.
Dr. Handel oder: Wie ich lernte, mir keine Sorgen mehr zu machen und einen autodidakten Expert Advisor erstellte
Vor einem Jahr hat Joo uns in seinem Artikel "Genetic Algorithms - It's Easy!" (Genetische Algorithmen - leicht gemacht!) ein Werkzeug für die Implementierung des genetischen Algorithmus in MQL5 gegeben. Mit diesem Werkzeug werden wir nun einen Expert Advisor erstellen, der unter bestimmten Rahmenbedingungen seine eigenen Parameter genetisch optimieren kann.
Tiefe Neuronale Netzwerke (Teil VI). Gruppen von Klassifikatoren von Neuronalen Netzen: Bagging
Der Artikel beschreibt die Methoden des Aufbaus und Trainings von Gruppen von Neuronalen Netzen mit einer Struktur für das Bagging, einer Methode, um Vorhersagen aus verschiedenen Regressions- oder Klassifikationsmodellen zu kombinieren. Es bestimmt auch die Besonderheiten der Hyperparameter-Optimierung für einzelne Neuronale Netzwerk-Klassifikatoren, aus denen sich das Ensemble zusammensetzt. Die Qualität des optimierten Neuronalen Netzes, das im vorherigen Artikel der Serie erhalten wurde, wird mit der Qualität des erzeugten Ensembles Neuronaler Netze verglichen. Möglichkeiten, die Qualität der Klassifizierung des Ensembles weiter zu verbessern, werden geprüft.
Die optimale Berechnungsmethode für das Gesamtvolumen an Positions nach der festgelegten Magischen Zahl
In diesem Beitrag geht es um das Problem der Berechnung des Gesamtvolumen an Positions nach festgelegtem Symbol und magischer Zahl. Die hier vorgestellte Methode verlangt nur den minimal notwendigen Teil der Abschluss-History, ermittelt den nächsten Zeitpunkt, als die Gesamtposition gleich Null war und führt Berechnungen an den jüngsten Abschlüssen aus. Des Weiteren wird hier ebenfalls die Arbeit mit globalen Variablen des Client-Terminals behandelt.
MQL5-RPC. Remote Procedure Calls von MQL5, mit Web Service Access und XML-RPC-ATC-Analysator
In diesem Artikel wird das MQL5-RPC-System beschrieben, das Remote Procedure Calls von MQL5 ermöglicht. Zuerst wird auf die Grundlagen XML-RPC eingegangen, dann folgt die MQL5 Implementierung und zwei Bespiele aus dem echten Leben. Beim ersten Beispiel wird ein externer Webdienst verwendet, beim zweiten ein Client für den einfachen Analysator Dienst XML-RPC ATC 2011. Wenn Sie sich für Implementierungen und Analysen von verschiedenen Statistiken des ATC 2011 in Echtzeit interessieren, dann ist dieser Artikel das Richtige für Sie.
Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil V). Klassen und Kollektionen für Handelsereignisse, Nachrichten an das Programm senden
In den vorherigen Artikeln haben wir begonnen, eine große plattformübergreifende Bibliothek zu erstellen, die die Entwicklung von Programmen für MetaTrader 5 und MetaTrader 4 Plattformen vereinfacht. Im vierten Teil haben wir die Verfolgung von Handelsereignissen auf dem Konto getestet. In diesem Artikel werden wir Klassen für Handelsereignisse entwickeln und diese in der Kollektion der Ereignisse platzieren. Von dort aus werden sie an das Basisobjekt der Enginebibliothek und die Steuerelement des Chartprogramms.
MQL5 Cookbook: Die History der Abschlüsse und Funktions-Library zum Erhalt von Position-Eigenschaften
Eine gute Gelegenheit, die in den vorangegangenen Beiträgen zu Position-Eigenschaften beschriebenen Informationen nochmals kurz zusammenzufassen. In diesem Beitrag werden wir einige zusätzliche Funktionen erzeugen, um die Eigenschaften zu erhalten, die man nur nach Zugriff auf die History der Abschlüsse abrufen kann. Darüber hinaus lernen wir Datenstrukturen kennen, mit deren Hilfe wir auf Position- und Symboleigenschaften auf weitaus bequemere Weise zugreifen können.
Technische Indikatoren und digitale Filter
In diesem Beitrag werden technische Indikatoren als digitale Filter behandelt. Es werden die Arbeitsprinzipien und die grundlegenden Eigenschaften von digitalen Filtern erklärt. Außerdem werden einige praktische Möglichkeiten, das Filter-Kernel im MetaTrader 5 Terminal zu empfangen und die Integration des vorgefertigten Spektrumanalysators aus dem Beitrag "Erstellen eines Spektrumanalysators" berücksichtigt. Die Impuls- und Spektrumeigenschaften typischer digitaler Filter werden als Beispiele verwendet.
Grundlagen der Statistik
Jeder Devisenhändler arbeitet mit bestimmten statistischen Rechenverfahren, selbst wenn es sich um einen Verfechter der Fundamentalanalyse handelt. Dieser Beitrag führt Sie durch die Grundlagen der Statistik, stellt Ihnen ihre fundamentalen Bestandteile vor und weist ihre Bedeutung bei der Entscheidungsfindung nach.
Der Indikator für "Spindles" Charting
Der Artikel befasst sich mit dem Zeichen der Charts "Spindels" (spindles), auch mit seiner Verwendung in Handelsstrategien und Expert-Advisors. Zunächst betrachten wir die Erscheinung des Charts, sein Zeichen und seine Verbindung mit den japanischen Kerzen. Als nächstes analysieren wir die Realisierung der Indikatoren im Code in MQL5. Wir testen auch den Experten, der auf dem Indikator basierend ist und formulieren eine Trading-Strategie.
Graphische Interfaces VI: Das Checkbox Control, Das Edit Control und deren gemischte Typen (Kapitel 1)
Dieser Artikel ist der Anfang des 6. Teils dieser Serie, welche der Entwicklung einer Bibliothek für die Erzeugung von grafischen Interfaces im Metatrader-Terminal gewidmet ist. In dem ersten Kapitel werden wir das Checkbox-Control, dass Edit-Control und deren gemischte Typen besprechen.
Entwicklung eines plattformübergreifenden Grider-EAs (Teil III): Korrekturbasiertes Raster mit Martingal
In diesem Artikel werden wir versuchen, den bestmögliche, rasterbasierten EA zu entwickeln. Wie üblich wird dies ein plattformübergreifender EA sein, der sowohl mit MetaTrader 4 als auch mit MetaTrader 5 arbeiten kann. Der erste EA war gut genug, außer dass er über einen langen Zeitraum keinen Gewinn erzielen konnte. Der zweite EA konnte in Zeiträumen von mehr als einigen Jahren arbeiten. Leider konnte er nicht mehr als 50% Gewinn pro Jahr bei einem maximalen Drawdown von weniger als 50% erzielen.
Grafische Interfaces I: Funktionen für die Form-Buttons und das Entfernen der Interface Elemente (Kapitel 4)
In diesem Artikel werden wir mit der Entwicklung der CWindow Klasse fortschreiten, indem wir ihr Methoden hinzufügen, welche es uns erlauben das Formular über das Anklicken seiner Controls zu verwalten. Wir sind dann in der Lage das Formular über einen Button zu schließen, so wie es zu minimieren und maximieren.
Die praktische Verwendung eines neuronalen Kohonen-Netzes im algorithmischen Handel. Teil II. Optimierung und Vorhersage
Basierend auf universellen Tools, die für die Arbeit mit Kohonen-Netzwerken entwickelt wurden, konstruieren wir das System zur Analyse und Auswahl der optimalen EA-Parameter und besprechen die Vorhersage von Zeitreihen. In Teil I haben wir die öffentlich zugänglichen neuronalen Netzwerkklassen korrigiert und verbessert, indem wir notwendige Algorithmen hinzugefügt haben. Jetzt ist es an der Zeit, sie praktisch anzuwenden.