Graphische Interfaces XI: Überarbeitung des Bibliothekscodes (build 14.1)
Graphische Interfaces XI: Überarbeitung des Bibliothekscodes (build 14.1)
Wenn die Bibliothek wächst, muss ihr Programmcode wiederholt optimiert werden, um die Größe zu verringern. Die Version der in diesem Artikel beschriebenen Bibliothek ist nun auch in Teilen objektorientiert. Dadurch ist der Code leichter zu verstehen. Mit der detaillierten Beschreibung der letzten Änderungen kann der Leser auf Basis dieser Bibliothek seine eigenen Ziele umsetzen.
Cross-Plattform Expert Advisor: Geldmanagement
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.
Der MQL5-Assistent: Wie man einem EA beibringt, einen bedingten Auftrag (Pending Order) eines beliebigen Preises zu platzieren
Der MQL5-Assistent: Wie man einem EA beibringt, einen bedingten Auftrag (Pending Order) eines beliebigen Preises zu platzieren
Dieser Artikel beschreibt eine Methode, mit der man den Code eines Handelsignalmoduls so modifiziert, dass die Funktion zur Verfügung steht, einen bedingten Auftrag unabhängig des aktuellen Preises in Auftrag zu geben: Hierbei kann es sich um den Eröffnungs- oder Schlusskurs des vorherigen Balkens oder um den gleitenden Durchschnittswert handeln. Die Optionen sind grenzenlos. Entscheidend ist, dass Sie einen Eröffnungskurs für einen bedingten Auftrag einstellen können. Dieser Artikel richtet sich an all jene Trader, die sich mit bedingten Aufträgen (Pending Orders) auseinandersetzen.
Schnelleinstieg oder Kurzanleitung für Anfänger
Schnelleinstieg oder Kurzanleitung für Anfänger
Liebe Leser, in diesem Artikel möchte ich Ihnen vermitteln und zeigen, wie man sich möglichst schnell und einfach die Grundlagen der Erstellung automatischer Handelssysteme, wie die Arbeit mit Indikatoren u. a., erschließt. Der Beitrag richtet sich an Neueinsteiger, in ihm kommen weder komplizierte noch schwer zu verstehende Beispiele zur Anwendung.
Objektorientierter Ansatz zum Aufbau von Panels mit mehreren Timeframes und Währungen
Objektorientierter Ansatz zum Aufbau von Panels mit mehreren Timeframes und Währungen
In diesem Beitrag wird die Nutzung der objektorientierten Programmierung zum Erstellen von Panels mit mehreren Timeframes und Währungen für MetaTrader 5 beschrieben. Das Hauptziel ist der Aufbau eines universell einsatzfähigen Panels, das für die Darstellung verschiedener Arten von Daten genutzt werden kann – beispielsweise Preise, Preisänderungen, Indikatorwerte oder benutzerdefinierte Kauf-/Verkaufsbedingungen –, ohne den Code des Panels selbst verändern zu müssen.
Der MQL5-Assistent für Neueinsteiger
Der MQL5-Assistent für Neueinsteiger
Anfang 2011 haben wir die erste Fassung des MQL5-Assistenten veröffentlicht. Damit hatten die Devisenhändler ein einfaches und verständliches Werkzeug zur automatischen Erzeugung von automatischen Handelssystemen in der Hand. Jeder Anwender von MetaTrader 5 erhielt so die Möglichkeit, ohne MQL5-Programmierkenntnisse sein eigenes Expert-System zu schreiben.
Benutzerdefinierte grafische Bedienelemente. Teil 1: Erstellen eines einfachen Bedienelements
Benutzerdefinierte grafische Bedienelemente. Teil 1: Erstellen eines einfachen Bedienelements
Dieser Beitrag behandelt die grundlegenden Prinzipien für die Entwicklung von grafischen Bedienelementen. Wir bereiten Tools für eine schnelle und bequeme Arbeit mit grafischen Objekten vor, analysieren ein Beispiel für die Erstellung eines einfachen Bedienelements für die Eingabe von Text oder numerischen Daten und gehen darauf ein, wie dieses Bedienelement genutzt werden kann.
Marktbeobachtung mithilfe vorgefertigter Klassen
Marktbeobachtung mithilfe vorgefertigter Klassen
Die neue MetaTrader 5-Anwendungsinstanz für Ausgabegeräte (Terminal) und die Programmiersprache MQL5 eröffnen neue Möglichkeiten zur Wiedergabe visueller Informationen für Börsenhändler. In dem folgenden Beitrag stellen wir eine universelle und erweiterbare Sammlung (Bibliothek) von Klassen vor, die Ihnen die Organisation der Wiedergabe beliebiger Informationstexte zu einem Diagramm abnehmen. Dazu präsentieren wir das Beispiel eines Marktbeobachtungsindikators.
Test-Performance der Berechnung von gleitenden Mittelwerten in MQL5
Test-Performance der Berechnung von gleitenden Mittelwerten in MQL5
Seit der Erstellung des ersten Moving-Average-Indikators ist eine Vielzahl von Indikatoren erschienen. Viele von ihnen nutzen ähnliche Glättungsmethoden, doch die Glättung der unterschiedlichen Algorithmen von gleitenden Mittelwerten wurde nie eingehend studiert. In diesem Beitrag betrachten wir Möglichkeiten zur Nutzung der gleitenden Mittelwerte in MQL5 und vergleichen ihre Performance.
Erstellen von Expert-Systemen mit dem Hilfsprogramm Expert Advisor Visual Wizard
Erstellen von Expert-Systemen mit dem Hilfsprogramm Expert Advisor Visual Wizard
Das Hilfsprogramm Expert Advisor Visual Wizard für MetaTrader 5 bietet eine höchst verständliche intuitive grafische Umgebung mit einer umfangreichen Auswahl vorgefertigter Programmblöcke für den Handel, die die Erstellung automatischer Handelssysteme (hier: Expert-Systeme) zu einer Sache von Minuten machen. Die auf Anklicken, Ziehen und Ablegen (click, drag and drop) beruhende Arbeitsweise des Expert Advisor Visual Wizard ermöglicht die Erstellung grafischer Abbildungen von Handelsstrategien und -signalen wie bei der Arbeit mit Papier und Bleistift. Diese Handelsdiagramme werden automatisch von dem von Molanis entwickelten MQL5-Codegenerator analysiert und in einsatzbereite Expert-Systeme übersetzt. Die interaktive grafische Umgebung vereinfacht die Planung und beseitigt die Notwendigkeit des Schreibens von MQL5-Code.
Tracing, Debugging und strukturelle Analyse von Quellcodes
Tracing, Debugging und strukturelle Analyse von Quellcodes
Die gesamte Problematik der Erstellung einer Struktur eines auszuführenden Codes und dessen Tracing lässt sich ohne ernsthafte Schwierigkeiten lösen. Diese Möglichkeit trat mit MetaTrader 5 dank einer neuen Funktion der MQL5-Sprache in Erscheinung: der automatischen Erstellung von Variablen eines komplexen Datentyps (Strukturen und Klassen) und deren Beseitigung beim Verlassen des lokalen Umfelds. Dieser Beitrag beschreibt die Methoden und liefert ein vorgefertigtes Tool.
Ein Beispiel für ein Handelssystem auf der Grundlage des Indikators Heiken-Ashi
Ein Beispiel für ein Handelssystem auf der Grundlage des Indikators Heiken-Ashi
In diesem Beitrag betrachten wir die Verwendung eines Heikin-Ashi-Indikators im Handel. Basierend auf diesem Indikator wird ein einfaches Handelssystem betrachtet und ein Expert Advisor in MQL5 geschrieben. Handelstätigkeiten werden auf Basis der Klassen der Standard-Klassenbibliothek implementiert. Die auf der Historie basierenden und mithilfe des in MetaTrader 5 eingebauten Strategietesters erhaltenen Testergebnisse der geprüften Handelsstrategie werden in diesem Beitrag bereitgestellt.
Zeichnen von Indikatoremissionen in MQL5
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 Implementierung digitaler Filter in MQL5 für Anfänger
Praktische Implementierung digitaler Filter in MQL5 für Anfänger
Der Gedanke einer Filterung digitaler Signale ist in Foren für den Aufbau von Handelssystemen umfassend diskutiert worden. Und es wäre sehr unschlau, keinen Standardcode für digitale Filter in MQL5 zu erzeugen. In diesem Beitrag beschreibt der Autor die Umwandlung des Codes eines einfachen SMA Indikators aus seinem Beitrag "Angepasste Indikatoren in MQL5 für Anfänger" in einen Code für einen komplizierteren und digitalen Filter. Daher ist dieser Beitrag die logische Fortsetzung des vorhergehenden. Außerdem wird hier auch gezeigt, wie man Text im Code ersetzen und Programmierfehler korrigieren kann.
Hier sind der neue MetaTrader 5 und MQL5
Hier sind der neue MetaTrader 5 und MQL5
Dies ist nur ein kurzer Überblick über MetaTrader 5. Ich kann nicht alle neuen Funktionen des Systems in so kurzer Zeit beschreiben. Die Tests begannen am 09.09.2009. Das ist ein symbolisches Datum und ich bin sicher, dass es eine Glückszahl werden wird. Es sind ein paar Tage vergangen, seit ich die Beta-Version des MetaTrader-5-Terminals und MQL5 bekommen habe. Ich konnte noch nicht alle Funktionen ausprobieren, doch ich bin jetzt schon beeindruckt.
MQL5: Erstellen Ihres eigenen Indikators
MQL5: Erstellen Ihres eigenen Indikators
Was ist ein Indikator? Es ist ein Satz berechneter Werte, die auf praktische Weise auf dem Bildschirm angezeigt werden sollen. Sätze von Werten werden in Programmen als Arrays dargestellt. Somit bedeutet das Erstellen eines Indikators, einen Algorithmus zu schreiben, der bestimmte Arrays bearbeitet (Preis-Arrays) und die Ergebnisse der Bearbeitung für andere Arrays (Indikator-Arrays) aufzeichnet. Durch die Beschreibung der Erstellung des True Strength Index zeigt der Autor, wie Indikatoren in MQL5 geschrieben werden.
Der Prototyp eines automatischen Handelssystems
Der Prototyp eines automatischen Handelssystems
In diesem Beitrag werden die Grundlagen für die Erstellung von Algorithmen und Elementen für Handelssysteme zusammengefasst und systematisch geordnet. Es geht hier um die Entwicklung eines Algorithmus‘ für ein automatisches Handelssystem (im Weiteren: das Expert-System). Als Beispiel ziehen wir die Klasse CExpertAdvisor heran, sie kann zur schnellen und einfachen Entwicklung von Handelssystemen verwendet werden.
Benutzerdefinierte grafische Bedienelemente. Teil 3. Formen
Benutzerdefinierte grafische Bedienelemente. Teil 3. Formen
Dies ist der letzte der drei Beiträge, die sich grafischen Bedienelementen widmen. Er behandelt die Erstellung der Hauptkomponente der grafischen Oberfläche – der Form – und ihre Verwendung in Kombination mit anderen Bedienelementen. Zusätzlich zu den Formklassen wurden die Klassen CFrame, CButton und CLabel der Bibliothek von Bedienelementen hinzugefügt.
Verwendung von Layouts und Containern für GUI Controls: Die CBox Klasse
Verwendung von Layouts und Containern für GUI Controls: Die CBox Klasse
Dieser Artikel präsentiert eine alternative Methode für die Erzeugung von GUI-Controls, basierend auf Layouts und Containern und der Verwendung eines Layoutmanagers, der CBox Klasse. Die CBox Klasse ist ein externes Control, welches als ein Container für besondere Controls in einem GUI-Panel agiert. Sie vereinfacht das Designen von grafischen Panels und in einigen Fällen reduziert sie auch den Programmieraufwand.
Handelssignal-Generator auf Grundlage eines angepassten Indikators
Handelssignal-Generator auf Grundlage eines angepassten Indikators
Wie man einen Handelssignal-Generator auf Grundlage eines angepassten Indikators erzeugt. Wie man einen angepassten Indikator erzeugt Wie man Zugriff auf die Daten des angepassten Indikators bekommt. Warum man die IS_PATTERN_USAGE(0) Struktur und das Modell 0 braucht
Das Handelssystem 'Turtle Soup' und seine Modifikation 'Turtle Soup Plus One'
Das Handelssystem 'Turtle Soup' und seine Modifikation 'Turtle Soup Plus One'
In diesem Artikel wurden Regeln der Handelsstrategien Turtle Soup und Turtle Soup Plus One aus dem Buch Street Smarts: High Probability Short-Term Trading Strategies von Linda Raschke und Laurence Connors formuliert und programmiert. Die im Buch beschriebenen Strategien sind relativ populär, man sollte aber beachten, dass die Autoren diese Strategien anhand eines 15...20 Jahre alten Marktverhaltens entwickelt haben.
Das Beispiel eines Indikators, der die Linien Unterstützung / Widerstands zeichnet
Das Beispiel eines Indikators, der die Linien Unterstützung / Widerstands zeichnet
Im Artikel wird das Realisierungsbeispiel des Indikators für den Aufbau der Linien Unterstützung/Widerstands aufgrund der formalisierten Bedingungen aufgeführt. Sie haben die Möglichkeit, den Indikator zu verwenden, aber verstehen auch nebenbei, wie einfach es ist, das zu realisieren. Nun können Sie selbst die Bedingungen für den Aufbau der Linien formulieren, die Sie nötig finden, dabei den Code des Indikators nach Ihren Wünschen ein wenig ändern.
Kennenlernen der CCanvas Klasse. Kantenglättung (Antialiasing) und Schatten
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.
Der universell Oszillator mit dem graphischen Interface
Der universell Oszillator mit dem graphischen Interface
Im Artikel wird die Erstellung des universellen Indikators aufgrund aller Oszillators des Terminalen mit dem eigenen graphischen Interface beschrieben. Es ermöglicht schnell und bequem die Parameter jedes separaten Oszillators aus dem Chart-Fenster zu wechseln (und ohne Öffnung des Fensters der Eigenschaften), ihre Messwerte zu vergleichen und für sich die optimale Variante für eine konkrete Aufgabe zu wählen.
Die statistische Verteilung in Form von einem Histogramm ohne Indikator-Puffer und Arrays
Die statistische Verteilung in Form von einem Histogramm ohne Indikator-Puffer und Arrays
Im Artikel wird die Bildungsmöglichkeit der Histogramme der statistischen Verteilungen der Markt-Charakteristiken unter Verwendung des graphischen Gedächtnisses betrachtet, das heißt ohne Verwendung der Indikator-Puffer und Arrays. Es wurden die ausführlichen Beispiele des Aufbaus solcher Histogramme aufgeführt und wurde die sogenannte "verborgene" Funktional der graphischen Objekte der Sprache MQL5 vorgeführt.
Graphisches Interface X: Textauswahl im mehrzeiligen Textfeld (build 13)
Graphisches Interface X: Textauswahl im mehrzeiligen Textfeld (build 13)
In diesem Artikel erreichen wir, Text mittels verschiedener Tasten auszuwählen, und markierten Text zu löschen, genau so, wie man das von einem Texteditor kennt. Zusätzlich wird der Code weiter optimiert, und es werden die Klassen für die zweite Stufe in Richtung der endgültigen Version der Bibliothek vorbereitet, die alle Elemente als Einzelbilder vor einem Hintergrund darstellt.
LifeHack für Trader: Der vergleichende Bericht über einige Tests
LifeHack für Trader: Der vergleichende Bericht über einige Tests
Im Artikel wird der Test des EAs betrachtet, der zugleich auf 4 verschiedenen Symbolen gestartet wird. Der endgültige Vergleich der 4 Testberichte wird in einer Tabelle aufgeführt, genauso wie bei einer Auswahl der Waren in einem Internet-Geschäft. Als zusätzlicher Bonus kommen dazu die automatisch erstellten Grafiken der Verteilung für jedes Symbol.
Grundlagen der Programmierung in MQL5: Globale Variablen des Terminals
Grundlagen der Programmierung in MQL5: Globale Variablen des Terminals
Dieser Beitrag beschäftigt sich mit den Objekt-orientierten Fähigkeiten der MQL5-Sprache zur Erzeugung von Objekten, die die Arbeit mit globalen Variablen des Terminals erleichtern. Als praktisches Beispiel betrachte ich einen Fall, wo die globalen Variablen als Kontrollpunkte zur Implementierung der Programmphasen eingesetzt werden.
Anlegen eines systemübergreifenden mehrwährungsfähigen automatischen Handelssystems
Anlegen eines systemübergreifenden mehrwährungsfähigen automatischen Handelssystems
In diesem Beitrag wird ein Gerüst für ein automatisches Handelssystem, im Weiteren kurz: Expert-System, vorgestellt, das in der Lage ist mehrere Währungspaare (Kürzel) gleichzeitig zu handeln und sich dabei ebenfalls gleichzeitig unterschiedlicher Handelssysteme zu bedienen. Wenn Sie bereits die optimalen Eingangsparameter für all Ihre Expert-Systeme ermittelt und für jedes einzelne gute Rückvergleichsergebnisse erzielt haben, sollten Sie sich fragen, welche Ergebnisse Sie erhalten würden, wenn Sie sie alle gleichzeitig und für die Gesamtheit all Ihrer Strategien auf einmal prüfen würden.
MQL5 Cookbook: Position-Eigenschaften im MetaTrader 5 Strategietester analysieren
MQL5 Cookbook: Position-Eigenschaften im MetaTrader 5 Strategietester analysieren
Wir präsentieren hier eine veränderte Version des Expert Advisors aus dem vorangegangenen Beitrag "MQL5 Cookbook: Position-Eigenschaften auf dem Angepassten Info-Panel". Einige der Themen, die wir ansprechen werden, sind: Daten von Bars bekommen, nach neuen Bar-Ereignissen auf dem aktuellen Symbol suchen, eine Handelsklasse der Standard-Library in eine Datei aufnehmen, eine Suchfunktion für Handelssignale und eine Funktion zur Ausführung von Handelsoperationen erzeugen sowie Handelsereignisse in der OnTrade() Funktion festlegen.
Neue Möglichkeiten mit MetaTrader5
Neue Möglichkeiten mit MetaTrader5
MetaTrader 4 erfreute sich bei Händlern auf der ganzen Welt großer Beliebtheit und es sah lange so aus, als wären alle nun wunschlos glücklich. Mit seiner hohen Arbeitsgeschwindigkeit, seiner robusten Zuverlässigkeit, einem Riesenfeld an Möglichkeiten zum Schreiben von Indikatoren, Expert Advisors und informierten Handelssystemen sowie seiner Fähigkeit, aus über 100 Maklern auswählen zu können, hat sich dieses Terminal deutlich vom Rest abgesetzt. Doch die Zeit steht nicht still und deshalb stehen wir jetzt vor der Wahl: MetaTrade 4 oder MetaTrade 5? In diesem Beitrag sollen die wichtigsten Unterschiede dieses Terminals der 5. Generation aus aktuellem Blickwinkel beschrieben werden.
Eine neue Schiene: Benutzerdefinierte Indikatoren in MQL5
Eine neue Schiene: Benutzerdefinierte Indikatoren in MQL5
Ich werde nicht alle neuen Möglichkeiten und Funktionen des neuen Terminals und der Sprache aufzählen. Sie sind zahlreich und einige der Neuheiten sind eine Diskussion in einem eigenen Beitrag wert. Auch gibt es hier keinen Code, der mit objektorientierter Programmierung geschrieben wurde. Das Thema ist zu wichtig, um es nur im Kontext zusätzlicher Vorteile für Entwickler zu erwähnen. In diesem Beitrag gehen wir auf Indikatoren, ihre Struktur, Zeichnung, Typen und Programmierdetails im Vergleich zu MQL4 ein. Ich hoffe, dass dieser Beitrag für Einsteiger und erfahrene Entwickler hilfreich sein wird. Vielleicht entdeckt auch jemand etwas Neues.
Lifehack für Händler: Indikatoren für Balance, Drawdown, Belastung und Ticks während des Testens
Lifehack für Händler: Indikatoren für Balance, Drawdown, Belastung und Ticks während des Testens
Wie man einen Test mehr anschaulich machen kann? Die Antwort ist einfach: Sie müssen im Tester einen oder mehreren Indikatoren verwenden - der Tick-Indikator, der Indikator der Balance und Equity, der Indikator des Drawdowns und der Belastung des Deposites. Dies wird visuell ermöglichen, die Art der Ticks zu verfolgen, oder die Änderungen in der Balance und Equity oder im Drawdown und der Belastung des Deposites zu sehen.
Wolfe Wellen
Wolfe Wellen
Die von Bill Wolfe vorgeschlagene Methode hilft nicht nur ein Muster zu erkennen und somit den Moment und die Richtung des Einstiegs zu bestimmen, sondern auch das Ziel vorherzusagen, das der Preis erreichen muss sowie die Zeit des Erreichens. Der Artikel beschreibt die Erstellung eines Indikator für die Erkennung der Wolfe Wellen basierend auf dem ZigZag Indikator sowie einen einfachen Expert Advisor, der nach seinen Signalen handelt.
Cross-Platform Expert Advisor: Signale
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.
DeMarks Sequential (TD SEQUENTIAL) unter Verwendung künstlicher Intelligenz
DeMarks Sequential (TD SEQUENTIAL) unter Verwendung künstlicher Intelligenz
In diesem Artikel werde ich erzählen, wie man durch das Kreuzen einer sehr bekannten Strategie mit einem neuronalen Netz erfolgreich handeln kann. Es wird um die Strategie Thomas Demarks "Sequential" unter Verwendung künstlicher Intelligenz gehen. Wir werden NUR nach dem ersten Teil der Strategie arbeiten, dabei verwenden wir die Signale der "Setzung" und "Kreuzung".
Die Rezepte MQL5 - die Handelssignale der Pivots
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.