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.
20 Handelssignale in MQL5
In diesem Beitrag erfahren Sie, wie Sie die für das Funktionieren eines Handelssystems erforderlichen Handelssignale erhalten. Die Beispiele zur Erzeugung von 20 Handelssignalen werden hier als einzelne benutzerdefinierte Funktionen aufgeführt, die beim Anlegen von Expert Advisors verwendet werden können. Zu Ihrer Bequemlichkeit werden alle in dem Beitrag verwendeten Funktionen in einer einzigen mqh-Include-Datei zusammengefasst, die leicht mit einem künftigen Expert Advisor verknüpft werden kann.
Wie programmiert man einen Indikator auf der Grundlage eines anderen Indikators?
In MQL5 können wir einen Indikator sowohl aus dem Nichts als auch auf der Grundlage eines anderen bereits vorhandenen, in das Ausgabegerät integrierten oder selbst entwickelten Indikators programmieren. Und auch dabei haben wir zwei Möglichkeiten: einen Indikator durch Hinzufügen neuer Berechnungen und grafischer Möglichkeiten zu verbessern, oder mithilfe der Funktionen iCustom() oder IndicatorCreate() einen in das Ausgabegerät integrierten bzw. einen selbst entwickelten Indikator zu verwenden.
Erstellen einer Anzeigetafel unter Verwendung der Klassen aus der Standardbibliothek und Google Chart API
Die Programmiersprache MQL5 ist in erster Linie auf die Schaffung automatisierter Handelssysteme und komplexer Hilfsmittel für technische Aktienanalysen angelegt. Darüber hinaus ermöglicht es uns jedoch auch die Entwicklung interessanter Informationssysteme zur Verfolgung von Marktlagen und verschafft uns eine Rückkopplung mit dem Händler. Dieser Beitrag beschreibt die Bestandteile der Standardbibliothek von MQL5 und liefert Beispiele für ihre praktische Verwendung, um diese Ziele zu erreichen. Außerdem liefert er ein Beispiel für die Verwendung von Google Chart API zur Erstellung von Diagrammen.
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.
Wie man in MQL5 Indikatoren aufruft
Mit der neuen, zur Verfügung stehenden Version der MQL Programmiersprache hat sich nicht nur der Ansatz im Umgang mit Indikatoren verändert, sondern es haben sich auch neue Möglichkeiten ihrer Erzeugung ergeben. Zudem hat man jetzt noch mehr Flexibilität bei der Arbeit mit den Indikator-Buffern - man kann jetzt die gewünschte Richtung der Indizierung angeben und genau so viele Indikatorwerte bekommen, wie man möchte. In diesem Beitrag werden die einfachen Methoden zum Aufruf von Indikatoren und Abruf von Daten aus dem Indikator-Buffer erklärt.
Handels-Ereignisse im Expert Advisor mit Hilfe der OnTrade() Funktion bearbeiten
MQL5 brachte eine Menge an Innovationen, inkl. die Bearbeitung verschiedenartiger Ereignisse (Timer-Ereignisse, Handels-Ereignisse, benutzerdefinierte Ereignisse, usw). Mit diesen Ereignissen umgehen zu können, gestattet Ihnen die Erzeugung komplett neuer Arten an Programmen für den automatischen und halb-automatischen Handel. In diesem Beitrag betrachten wir uns Handels-Ereignisse und schreiben einen Code für die OnTrade() Funktion, die das Handels-Ereignis bearbeiten wird.
Benutzerdefinierte Indikatoren in MQL5 für Anfänger
Als Anfänger erscheint einem jedes neue Thema immer kompliziert und schwer. Bekannte Themen sind uns klar und stellen kein Problem mehr dar. Dabei vergessen wir jedoch oft, dass jeder immer mal wieder komplett bei Null anfangen muss, das gilt selbst für unsere Muttersprache. Und nicht anders ist mit der MQL5 Programmiersprache, die eine große Auswahl bietet, wie man seine ganz persönlichen Handelsstrategien entwickeln kann - man kann sie ausgehend von grundlegenden Konzepten und einfachsten Beispielen erlernen. Dieser Beitrag erklärt die Interaktion eines technischen Indikators mit dem MetaTrader 5 Client-Terminal am Beispiel des einfachen, benutzerdefinierten SMA-Indikators (einfacher gleitender Mittelwert).
Verwendung von Objektzeigern in MQL5
In MQL5 werden alle Objekte standardmäßig per Verweis übertragen, doch gibt es eine Möglichkeit, Objektzeiger zu verwenden. Dazu muss jedoch eine Prüfung des Zeigers durchgeführt werden, da das Objekt u.U. nicht initialisiert ist. In diesem Fall wird das MQL5-Programm mit schwerwiegendem Fehler beendet und entladen. Die automatisch erzeugten Objekte verursachen diesen Fehler nicht, sind in diesem Sinn also recht sicher. In diesem Beitrag versuchen wir den Unterschied zwischen Objektverweis und Objektzeiger zu erklären und werfen einen Blick darauf, wie man sichere Codes schreibt, die diese Zeiger verwenden.
Einführung in MQL5: Schreiben eines einfachen Expert Advisor und benutzerdefinierten Indikators
Die im MetaTrader 5 Client Terminal enthaltene MetaQuotes Programming Language 5 (MQL5) bietet im Vergleich zu MQL4 zahlreiche neue Möglichkeiten und bessere Performance. Dieser Beitrag hilft Ihnen dabei, sich mit dieser neuen Programmiersprache vertraut zu machen. In diesem Beitrag werden einfache Beispiele zum Schreiben eines Expert Advisors und eines benutzerdefinierten Indikators vorgestellt. Wir werden auch auf einige Details der MQL5-Sprache eingehen, die notwendig sind, um diese Beispiele zu verstehen.
Die Reihenfolge der Erstellung und Zerstörung von Objekten in MQL5
Jedes Objekt, ob es sich um ein benutzerdefiniertes Objekt, ein dynamisches Array oder ein Array von Objekten handelt, wird im MQL5-Programm auf seine festgelegte Art erstellt und gelöscht. Oft sind bestimmte Objekte Teil anderer Objekte und die Reihenfolge der Löschung von Objekten bei der Deinitialisierung wird besonders wichtig. In diesem Beitrag finden Sie einige Beispiele, die die Mechanismen der Arbeit mit Objekten behandeln.
Beschränkungen und Überprüfungen in Expert Advisors
Darf dieses Symbol montags gehandelt werden? Ist genug Geld vorhanden, um die Position zu öffnen? Wie groß ist der Verlust, wenn Stop Loss ausgelöst wird? Wie kann die Anzahl ausstehender Aufträge begrenzt werden? Wurde die Handelstätigkeit beim aktuellen oder beim vorherigen Bar ausgeführt? Wenn ein Handelsroboter diese Arten von Überprüfungen nicht durchführen kann, kann jede mögliche Handelsstrategie zu Verlusten führen. Dieser Beitrag beinhaltet Beispiele für Überprüfungen, die in jedem Expert Advisor nützlich sind.
Anwenden von Indikatoren auf Indikatoren
Beim Schreiben eines Indikators, der die kurze Form des Aufrufs der OnCalculate()-Funktion nutzt, könnten Sie übersehen, dass ein Indikator nicht nur anhand von Preisdaten berechnet werden kann, sondern auch anhand der Daten eines anderen Indikators (unabhängig davon, ob dieser Indikator ein integrierter oder benutzerdefinierter ist). Möchten Sie einen Indikator verbessern und seine korrekte Anwendung auf die Daten anderer Indikatoren ermöglichen? In diesem Beitrag betrachten wir die Schritte, die für diese Anpassung benötigt werden.
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.
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.
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.