Universeller Kanal mit grafischem Interface
Universeller Kanal mit grafischem Interface
Alle Channel Indikatoren stellen drei Linien dar: zentrale, obere und untere Linie. Die zentrale Linie ist nach dem Prinzip des Zeichnens dem gleitenden Durchschnitt identisch, und in den meisten Fällen wird für das Zeichnen eines Kanals gerade der gleitende Durchschnitt verwendet. Die obere und untere Linien sind von der zentralen Linie gleich weit entfernt. Dieser Abstand kann in Punkten oder in Prozent vom Preis (Envelopes Indikator) definiert werden, es können der Wert der Standardabweichung (Bolliger Bands) oder der Wert des ATR Indikators (Keltner Kanal) verwendet werden.
Grafische Interfaces X: Neue Möglichkeiten der Tabellendarstellung (build 9)
Grafische Interfaces X: Neue Möglichkeiten der Tabellendarstellung (build 9)
Bis heute war CTable die fortschrittlichste Tabellenart überhaupt in der Bibliothek. Diese Tabelle ist zusammengestellt aus editierbaren Boxen des Typs OBJ_EDIT Typ, aber eine weitere Entwicklung ist problematisch. Mit dem Ziel einer maximale Leistungsfähigkeit, wäre es besser, eine andere Tabellendarstellung vom Typ CCanvasTable zu entwickeln, auch beim augenblicklichen Entwicklungsstand der Bibliothek. Die aktuelle Version ist völlig starr, aber ab diesem Artikel werden wir versuchen, die Situation zu beheben.
3D-Modellierung in MQL5
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.
Grafische Interfaces X: Das Standard Chart-Steuerelement (Build 4)
Grafische Interfaces X: Das Standard Chart-Steuerelement (Build 4)
Diesmal betrachten wir das Standard Chart-Steuerelement. Dieses erlaubt es uns, eine ganze Serie von Unter-Charts zu erzeugen, mit der Möglichkeit, diese beim Scrollen horizontal zu synchronisieren. Darüber hinaus werden wir weiterhin den Bibliothekscode für eine Reduzierung der CPU-Last optimieren.
Die Grundlagen von MQL5 Strings
Die Grundlagen von MQL5 Strings
Dieser Artikel behandelt alle Funktionsweisen von Strings in MQL5. Er ist vor allem für neue MQL5-Programmierer interessant, und für erfahrene Entwickler ist es eine gute Möglichkeit, ihre Kenntnisse zusammenzufassen und zu systematisieren.
Rezepte MQL5 - Handelssignale der gleitenden Kanäle
Rezepte MQL5 - Handelssignale der gleitenden Kanäle
Der Artikel beschreibt den Prozess der Entwicklung und Implementierung einer Klasse, die Signale auf der Basis gleitender Kanäle entwickelt. Auf der Basis dieser Signale, werden wir eine Handelsstrategie erstellen. Es werden die Klassen der Standardbibliothek zur Erstellung der abgeleiteten Unterklassen verwendet.
Grafische Interfaces X: Updates für die Easy And Fast Bibliothek (Build 2)
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.
Grafische Interfaces IX: Das Farbauswahl Control (Kapitel 1)
Grafische Interfaces IX: Das Farbauswahl Control (Kapitel 1)
Mit diesem Artikel starten wir das Kapitel 9 der Serie der Artikel über die entwicklung von grafischen Interfaces in den Metatrader Trading-Terminals. Diese Serie besteht aus zwei Kapiteln, in welcher neue Elemente und Interfaces vorgestellt werden, wie zum Beispiel das Farbauswahl-Control, farbige Buttons, die Fortschrittsanzeige und Linien Charts.
Grafische Interfaces VIII: Das Datei-Navigator Control (Kapitel 3)
Grafische Interfaces VIII: Das Datei-Navigator Control (Kapitel 3)
In den vorherigen Kapiteln des 8 Teils dieser Serie, haben wir unsere Bibliothek um mehrere Klassen für die Entwicklung von Mauszeigern, Kalendern und Baum-Ansichten erweitert. In dem aktuellen Artikel beschäftigen wir uns mit dem Datei-Navigator-Control, welcher auch als Teil eines grafischen Interfaces einer MQL Anwendung verwendet werden kann.
Grafische Interfaces VII: Das Tab-Control (Kapitel 2)
Grafische Interfaces VII: Das Tab-Control (Kapitel 2)
Das erste Kapitel des siebten Teils befasste sich mit drei Klassen von Controls für die Erzeugung der folgenden Tabellen: Text-Label-Tabelle (CLabelsTable), Edit-box-Tabelle (CTable) und die gerenderte Tabelle (CCanvasTable). In diesem Artikel(Kapitel 2) werden wir das Tabs-Control besprechen.
Testen von Strategien mit echten Ticks
Testen von Strategien mit echten Ticks
Der Artikel enthält die Ergebnisse der Prüfung einer einfachen Trading-Strategie in drei Modi: "1 Minute OHLC", "Jeder Tick" und "Jeder Tick basierend auf echten Ticks" mit tatsächlichen historischen Daten.
Universeller Expert Advisor: Ein benutzerdefiniertes Trailing Stop (Part 6)
Universeller Expert Advisor: Ein benutzerdefiniertes Trailing Stop (Part 6)
Der sechste Teil des Artikels über den universellen Expert Advisor beschreibt die Verwendung eines Trailingstops. Dieser Artikel führt sie durch die Erstellung eines Trailingstop-Moduls, welches einheitliche Regeln verwendet, sowie durch den Vorgang, wie dieses Modul der Trading Engine hinzugefügt wird, damit es automatisch Positionen verwaltet.
Grafische Interfaces V: Das Combobox Control (Kapitel 3)
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.
Grafische Interfaces V: Das ListView-Element (Kapitel 2)
Grafische Interfaces V: Das ListView-Element (Kapitel 2)
In dem vorherigen Kapitel haben wir Klassen für die Erzeugung der vertikalen und horizontalen Scrollbar geschrieben. In diesem Kapitel werden wir diese implementieren. Wir werden eine Klasse für das Erzeugen eines ListView Elementes (Liste / Listenansicht) schreiben, bei der eine Komponente eine vertikale Scrollbar darstellt.
Grafische Interfaces IV: Der Multi-Window-Modus und das System für Prioritäten (Kapitel 2)
Grafische Interfaces IV: Der Multi-Window-Modus und das System für Prioritäten (Kapitel 2)
In diesem Kapitel werden wir die Bibliothek um die Möglichkeit der Erzeugung von Multi-Window-Modus-Interfaces für MQL Anwendungen erweitern. Wir werden zudem ein System für die Priorität eines Klicks mit der linken Maustaste auf grafische Objekte entwickeln. Dieses ist notwendig um Probleme zu vermeiden, falls der Anwender auf ein grafisches Element klickt und dieses nicht reagiert.
Grafische Interfaces IV: Informierende Interface-Elemente (Kapitel 1)
Grafische Interfaces IV: Informierende Interface-Elemente (Kapitel 1)
Zum aktuellen Stand der Entwicklung, beinhaltet die Bibliothek für die Erzeugung von grafischen Interfaces ein Formular und verschiedene Steuerelemente (Controls), welche dem Formular hinzugefügt werden können. Wie zuvor schon erwähnt, sollte sich einer der zukünftigen Artikel mit dem Thema Multi-Window-Modus beschäftigen. Dafür liegt nun alles vor, und wir werden in dem folgenden Kapitel dieses Thema behandeln. In diesem Kapitel schreiben wir Klassen für die Erzeugung der Statusbar und des Tooltip-Elementes.
Graphische Interfaces III: Einfache und multifunktionale Buttons (Kapitel 1)
Graphische Interfaces III: Einfache und multifunktionale Buttons (Kapitel 1)
Lassen Sie uns das Control "Button" näher ansehen. Wir werden über Klassen für die Erzeugung von einfachen Buttons diskutieren, sowie auch über Buttons mit erweiterter Funktionalität (Icon-Button und Split-Button) und Buttons, die miteinander interagieren (Gruppen von Buttons und Radio-Buttons). Zusätzlich werden wir noch einige Ergänzungen zu schon existierenden Klassen für Controls hinzufügen, um sie in ihren Möglichkeiten zu erweitern.
Grafische Interfaces II: Das Hauptmenü Element (Kapitel 4)
Grafische Interfaces II: Das Hauptmenü Element (Kapitel 4)
Dieses ist das letzte Kapitel des zweiten Teils der Serie über die grafischen Interfaces. Hier betrachten wir die Erzeugung des Hauptmenüs. Hier demonstrieren wir die Entwicklung dieses Controls und das Einrichten der Eventhandler innerhalb der Bibliotheks-Klasse, damit später die Anwendung korrekt auf die Aktionen des Users reagiert. Wir besprechen hier zudem, wie man Kontextmenüs dem Hauptmenü hinzufügt. Zudem werden wir noch besprechen, wie man inaktive Elemente blockiert.
Grafische Interfaces II: Einrichtung des Eventhandlers für die Bibliothek (Kapitel 3)
Grafische Interfaces II: Einrichtung des Eventhandlers für die Bibliothek (Kapitel 3)
Der vorherige Artikel beinhaltet die Implementation der Klassen für das Erzeugen der Bestandteile des Hauptmenüs. Nun ist es an der Zeit, dass wir uns die Eventhandler in den Basisklassen und in den Klassen für die Controls näher betrachten. Wir werden unsere Aufmerksamkeit auch auf das Verwalten des Status des Charts, in Abhängigkeit der Position des Mauszeigers, richten.
Grafische Interfaces II: Das Menu-Item-Element (Kapitel 1)
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 I: Testen der Bibliothek in unterschiedlichen Programmen und in dem MetaTrader 4 Terminal (Kapitel 5)
Grafische Interfaces I: Testen der Bibliothek in unterschiedlichen Programmen und in dem MetaTrader 4 Terminal (Kapitel 5)
In dem vorherigen Kapitel des ersten Teils der Serie über grafische Interfaces, haben wir die Formularklasse mit Methoden für das Verwalten der Form über das Anklicken von Controls ergänzt. In diesem Teil wollen wir unsere Arbeit in verschiedenen Typen von MQL Programmen, wie zum Beispiel Indikatoren und Skripten, testen. Da unsere Bibliothek darauf ausgelegt ist, plattformübergreifend zu funktionieren, werden wir Sie in allen Metatrader-Plattformen testen, so wie zum Beispiel im MetaTrader 4.
Graphical Interfaces I: Animation des graphischen Interfaces (Kapitel 3)
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.
Graphical Interfaces I: Formular mit Steuerelementen (Kapitel 2)
Graphical Interfaces I: Formular mit Steuerelementen (Kapitel 2)
In diesem Artikel erstellen wir das erste und wichtigste Element für das graphische Interface - ein Formular (Form) mit Steuerelementen (Controls) Es können eine Vielzahl von Controls zu jeder Zeit und in jeder Kombination zu dieser Form hinzugefügt werden.
Grafische Interfaces I: Vorbereitung der Bibliotheksstruktur (Kapitel 1)
Grafische Interfaces I: Vorbereitung der Bibliotheksstruktur (Kapitel 1)
Dieser Artikel ist der Anfang einer weiteren Serie über die Entwicklung von grafischen Interfaces. Zur Zeit gibt es keine einzige Bibliothek, die es einem ermöglichen würde, einfach und schnell qualitative graphische Interfaces innerhalb einer MQL- Anwendung zu erzeugen. Damit meine ich graphische Interfaces, wie wir sie auch von anderen Betriebssystemen her kennen.
Die Erstellung eines Helfers im manuellen Handeln
Die Erstellung eines Helfers im manuellen Handeln
Die Anzahl der Handelsroboter für die Arbeit an Devisenmärkten nimmt in den letzten Jahren lawinenartig zu. In den Robotern werden verschiedene Konzepte und Strategien umgesetzt, keinem ist aber bis jetzt gelungen, eine gewinnsichere künstliche Intelligenz zu entwilckeln. Aus diesem Grund bleiben viele Trader manuellem Handel treu. Aber auch für sie werden Assistenten, die sogenannten Trading Panels erstellt. Dieser Artikel stellt ein Beispiel für die Erstellung eines solchen Panels von Grund auf dar.
Spontane Änderung der Expert-Advisor-Parameter vom Bedienfeld aus
Spontane Änderung der Expert-Advisor-Parameter vom Bedienfeld aus
Dieser Artikel zeigt anhand eines Beispiels die Implementierung eines Expert Advisors, dessen Parameter vom Bedienfeld aus kontrolliert werden können. Bei einer spontanen Änderung der Parameter schreibt der Expert Advisor die Werte vom Infofeld in eine Datei, um sie später von dieser Datei zu lesen und sie im Feld darzustellen. Dieser Artikel ist interessant für alle, die manuell oder semi-automatisch handeln wollen.
Programmierungsgrundlagen für MQL5 Zeit
Programmierungsgrundlagen für MQL5 Zeit
Dieser Beitrag konzentriert sich auf Standard MQL5-Funktionen zur Arbeitsweise mit Zeit sowie Programmiertechniken und praktisch sinnvolle Funktionen zur Arbeitsweise mit Zeit, die für die Erzeugung von Expert Advisors und Indikatoren erforderlich sind. Besondere Aufmerksamkeit wird auf die allgemeine Theorie der Zeitmessung gelegt. Dieser Beitrag sollte vor allem für Anfänger unter den MQL5-Programmierern von großem Interesse sein.