Der Artikel bietet grundlegende Werkzeuge für die OLAP-Analyse von Testberichten in Bezug auf einzelne Durchläufe und Optimierungsergebnisse. Das Werkzeug kann mit Dateien im Standardformat (tst und opt) arbeiten und bietet auch eine grafische Schnittstelle. MQL-Quellcodes sind unten angefügt.
Globale Variablen des Terminals sind ein unverzichtbares Hilfsmittel für die Entwicklung komplexer und zuverlässiger Experten und Berater. Sobald Sie die Verwendung globaler Variablen beherrschen, können Sie sich die Entwicklung von EAs ohne sie nicht mehr vorstellen.
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.
In diesem Beitrag entwickeln wir ein Analysetool für CFTC-Berichte. Wir lösen das folgende Problem: Entwicklung eines Indikators mit dem wir die CFTC-Berichtsdaten aus den von der Behörde zur Verfügung gestellten Datendateien ohne Zwischenschritte und Konvertierung direkt verwenden können. Dieser kann darüber hinaus noch für weitere Zwecke genutzt werden: die Daten als einen Indikator zeichnen, mit den Daten in anderen Indikatoren, in den Scripts für die automatische Analyse und im Expert Advisors zur Verwendung in den Handelsstrategien fortfahren.
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.
Der Artikel demonstriert die Entwicklung des ZigZag-Indikators gemäß der im Artikel "Wie man eine Anforderungsspezifikation bei der Bestellung eines Indikators erstellt" beschriebenen Beispiele. Der Indikator wird durch Extrema gebildet, die mit Hilfe eines Oszillators definiert werden. Es besteht die Möglichkeit, einen von fünf Oszillatoren zu verwenden: WPR, CCI, Chaikin, RSI oder die Stochastik.
Dieser Artikel stellt den Pivot Mean Oscillator (PMO) vor, eine Implementierung des kumulativen Moving Average (CMA) als Handelsindikator für die MetaTrader-Plattformen. Insbesondere führen wir zunächst Pivot Mean (PM) als Normalisierungsindex für Zeitreihen ein, der den Bruchteil zwischen einem beliebigen Datenpunkt und dem CMA berechnet. Wir bilden dann den PMO als Differenz zwischen den gleitenden Durchschnitten, die auf zwei PM-Signale angewendet werden. Einige erste Experimente, die mit dem EURUSD-Symbol durchgeführt wurden, um die Wirksamkeit des vorgeschlagenen Indikators zu testen, werden ebenfalls besprochen, so dass genügend Raum für weitere Überlegungen und Verbesserungen bleibt.
MetaTrader 5 erlaubt es, Roboter zu entwickeln und zu testen, die gleichzeitig auf mehreren Symbolen handeln. Der in die Plattform integrierte Strategietester lädt die Tickshistorie vom Server des Brokers automatisch herunter und berücksichtigt Kontraktspezifikationen: der Entwickler muss nichts manuell machen. Dies lässt einfach und präzise alle Bedingungen der MetaTrader 5 Handelsumgebung programmieren und Roboter testen, mit den Intervallen von bis zu Millisekunden zwischen dem Eingehen von Ticks auf verschiedenen Symbolen. In diesem Artikel zeigen wir, wie eine Spread-Strategie basierend auf zwei Futures der Moskauer Börse entwickelt und getestet werden kann.
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.
In diesem Beitrag befassen wir uns mit der Entwicklung eines mehrwährungsfähigen Kursschwankungsindikators. Jemanden, der gerade erst beginnt, in MQL5 zu programmieren, kann die Entwicklung von Indikatoren für mehrere Währungen vor einige Schwierigkeiten stellen, aber nach der Lektüre dieses Beitrages sollte alles wesentlich einfacher sein. Die grundlegenden Fragen bei der Entwicklung mehrwährungsfähiger Indikatoren beziehen sich auf die Abstimmung der Daten anderer Kürzel auf die des aktuellen Kürzels, die Lösung des Problems des Nichtvorhandenseins eines Teils der Indikatordaten sowie auf die Ermittlung des Anfangs der „echten“ Balken des jeweiligen Zeitraums. All das wird in dem hier vorliegenden Beitrag ausführlich behandelt.
In diesem Artikel erzeugen wir das Trendlinien-Element Es kann nicht nur als unabhängiges Interface-Element verwendet werden, sondern auch als ein Teil von vielen anderen Elementen. Anschließend haben wir alles, was für die Entwicklung der Kontextmenü Klasse benötigt wird. Diese Klasse werden wir in diesem Artikel im Detail besprechen. Zudem werden wir alle notwendigen Ergänzungen dieser Klasse hinzufügen, die für das Abspeichern von Pointern aller Elemente des grafischen Interfaces dieser Anwendung benötigt werden.
In diesem Beitrag betrachten wir die Entwicklung eines Indikators mit mehreren Symbolen für die Analyse von Preisunterschieden in einem bestimmten Zeitraum. Die wichtigsten Themen wurden bereits im vorhergehenden Beitrag zur Programmierung mehrwährungsfähiger Indikatoren besprochen, "Das MQL5-Kochbuch: Entwicklung eines Indikators für die Volatilität mehrerer Symbole in MQL5". Diesmal gehen wir also nur auf jene neuen Features und Funktionen ein, an denen wesentliche Änderungen vorgenommen wurden. Wenn Sie ein Neuling in der Programmierung von mehrwährungsfähigen Indikatoren sind, empfehle ich Ihnen, zuerst den vorherigen Beitrag zu lesen.
Bevor wir einen Roboter auf einem Handelskonto starten, testen und optimieren wir ihn in der Regel anhand der Kurshistorie. Es stellt sich jedoch die berechtigte Frage: Wie können uns die Ergebnisse der Vergangenheit in Zukunft helfen? Der Artikel beschreibt die Anwendung der Monte-Carlo-Methode, um benutzerdefinierte Kriterien für die Optimierung der Handelsstrategie zu erstellen. Zusätzlich werden die EA-Stabilitätskriterien berücksichtigt.
Der Handel an den Finanzmärkten ist mit einer ganzen Reihe von Risiken verbunden, die in den Algorithmen der Handelssysteme berücksichtigt werden sollten. Die Reduzierung solcher Risiken ist die wichtigste Aufgabe, um mit dem Handel Gewinne zu erzielen.
Der Artikel beschreibt die Art und Weise, wie man Strategien individuell testen und einen benutzerdefinierten Analysator für die Optimierungsdurchläufe erstellt. Nach dem Lesen werden Sie verstehen, wie die "Mathematische Berechnung" und der Mechanismus der sogenannten Frames funktionieren, wie Sie benutzerdefinierte Daten für Berechnungen vorbereiten und laden und effektive Algorithmen für ihre Komprimierung verwenden. Dieser Artikel wird auch für diejenigen interessant sein, die an Möglichkeiten interessiert sind, benutzerdefinierte Informationen innerhalb eines Experten zu speichern.
Es wurden 7 Typen gleitender Durchschnitte (MA) betrachtet; es wurde eine Handelsstrategie für das Arbeiten mit ihnen entwickelt. Verschiedene gleitende Durchschnitte wurden anhand einer Handelsstrategie getestet, des Weiteren wurden diese hinsichtlich der Effektivität der Anwendung verglichen.
Der siebte Teil der Serie über die grafischen Interfaces des Metatraders, handelt von drei Tabellen-Typen: Text-Label, Edit-Box und gerenderte Tabellen. Ein weiteres Control, welches sehr oft gebraucht wird, ist das Tab, womit es Ihnen möglich ist, Gruppen von anderen Controls anzuzeigen und zu verstecken und somit sehr effektive und platzsparende Interfaces für ihre MQL Anwendung programmieren zu können.
Dieser Artikel bietet eine programmtechnische Realisation eines Modells der Bewegungsfortsetzung. Die Hauptidee besteht darin, zwei Wellen zu definieren - die Haupt- und die Korrekturwelle. Für Extrempunkte verwende ich sowohl Fraktale als auch "potenzielle" Fraktale - Extrempunkte, die sich noch nicht als Fraktale gebildet haben.
Ein großes Programm beginnt mit einer kleinen Datei, die dann immer größer wird, je mehr Funktionen und Objekte Sie hinzufügen. Die meisten Roboterentwickler verwenden Include-Dateien, um dieses Problem zu lösen. Es gibt jedoch eine bessere Lösung: Beginnen Sie mit der Entwicklung einer beliebigen Handelsanwendung in einem Projekt. Es gibt so viele Gründe, dies zu tun.
Wenn Sie nicht wissen, wie Handelsklassen aufgebaut sind, und Wörter wie „objektorientierte Programmierung“ (OOP) Sie verunsichern, ist dieser Beitrag genau das Richtige für Sie. Denn Sie müssen wirklich nicht alle Einzelheiten kennen, um Ihr eigenes Handelssignalmodul zu programmieren, sondern lediglich ein paar einfache Regeln befolgen. Alle weitere erledigt der MQL5-Assistent für Sie, und am Ende haben Sie ein einsatzbereites automatisches Handelssystem, einen Expert Advisor!
Der Player des Handels. Nur vier Wörter, keine Erklärung erforderlich. Man denkt an eine kleine Kiste mit Knöpfen. Drückt man einen Knopf, erfolgt die Wiedergabe. Bewegt man den Hebel, ändert sich die Wiedergabegeschwindigkeit. Die Realität sieht sehr ähnlich aus. In diesem Beitrag möchte ich mein Programm vorstellen, das die Handelshistorie fast wie in Echtzeit abspielt. Der Beitrag behandelt einige Nuancen der OOP bei der Arbeit mit Indikatoren und der Verwaltung von Diagrammen.
Alle Markets Produkte vor der Veröffentlichung bestehen eine obligatorische vorläufige Überprüfung, um eine Standarte Qualität zu haben. In diesem Artikel werden wir von den häufigsten Fehlern erzählen, die die Hersteller in den Handelsrobotern und den technischen Indikatoren machen. Auch werden wir zeigen, wie man sein Produkt vor der Sendung in Market selbständig überprüfen soll.
Händler suchen nach Gesetzmäßigkeiten im Verhalten des Marktes, die auf günstige Gelegenheiten für die Ausführung von Trades hinweisen. Am häufigsten ist der erste Schritt bei der Entwicklung eines Handelssystems die Erstellung eines technischen Indikators, der es erlaubt, benötigte Informationen im Preischart zu sehen. Der Artikel hilft Ihnen, eine Anforderungsspezifikation bei der Bestellung eines Indikators im Freelance zu erarbeiten.
Die Plattform MetaTrader 5 wurde aus dem nichts entwickelt und übertrifft ihre Vorgänger natürlich bei Weitem. Die neue Handelsplattform bietet unbegrenzte Möglichkeiten für den Handel auf allen Finanzmärkten. Darüber hinaus wird ihr Funktionsumfang ständig erweitert, um immer mehr nützliche Instrumente und eine immer größere Benutzerfreundlichkeit zu bieten. Deshalb ist es nicht ganz einfach, all die zahlreichen Vorzüge von MetaTrader 5 aufzuzählen. Wir haben uns bemüht, sie in einem Artikel kurz darzustellen, und waren überrascht, dass der Beitrag alles andere als kurz geraten ist.
Der Handel auf den Finanzmärkten ist mit einer Vielzahl von Risiken verbunden, unter denen das gefährlichste darin besteht, eine falsche Handelsentscheidung zu treffen. Jeder Händler träumt davon, sich selbst durch ein automatisches Handelssystem zu ersetzen, eine Maschine, stets in Bestform, unerschöpflich und frei von menschlichen Schwächen wie Angst, Raffgier und Ungeduld.
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.
Das Erstellen von benutzerdefinierten Symbolen verschiebt die Grenzen der Entwicklung von Handelssystemen und der Finanzmarktanalyse. Jetzt können Händler Charts erstellen und Handelsstrategien mit einer unbegrenzten Anzahl von Finanzinstrumenten testen.
Automatische Scalping-Systeme gelten zurecht als der Höhepunkt des algorithmischen Tradings, aber es ist auch am kompliziertesten, einen Code für diese Systeme zu schreiben. In diesem Artikel zeigen wir, wie man mithilfe von eingebauten Werkzeugen für Debugging und visuelles Testen Strategien entwickeln kann, die auf der Analyse eingehender Ticks basieren. Um Regeln für Einstieg und Ausstieg zu erarbeiten, braucht man häufig jahrelang manuellen zu handeln. Aber mithilfe von MetaTrader 5 können Sie jede solche Strategie anhand realer historischer Daten schnell testen.
Im Artikel werden verschiedene Herangehensweisen betrachtet, die es erlauben, eine Walk-Forward-Optimierung mithilfe des eingebauten Testers und Hilfsbibliotheken in MQL genau zu emulieren.
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.
Die Webseite MQL5.com vergisst nichts und niemanden! Wie viele Abschlüsse legendär geworden sind, welcher Beliebtheit sich die einzelnen Artikel erfreuen, und wie oft die in der Codedatenbank gespeicherten Programme heruntergeladen wurden, all das ist nur ein kleiner Teil dessen, was MQL5.com nicht vergisst. In den Profilen werden die Errungenschaften jedes Einzelnen aufbewahrt, aber wie sieht das Gesamtbild aus? Dieser Beitrag soll eine Gesamtübersicht über die Leistungen aller Mitglieder der MQL5.community zeigen.
Beim Abonnieren zu Signalen kann eine solche Situation auftreten: Ihre Hebelwirkung im Trading-Konto ist 1:100, der Anbieter hat einen Hebel von 1: 500 und handelt mit einem minimalen Lot, und Ihre Handelsbilanzen handeln nahezu gleich - mit dem Abbildungsverhältnis zwischen 10% und 15%. In diesem Artikel erfahren Sie, wie in diesem Fall das Abbildungsverhältnis erhöhen kann.
Um Möglichkeiten von Retail-Tradern zu erweitern, wurde das zweite System der Aufrechnung von Positionen — Hedging — auf der Plattform hinzugefügt. Nun kann man eine Vielzahl von Positionen pro Symbol haben, darunter auch gegenläufige. Dank Hedging kann man Handelstrategien mit dem sogenannten "Locking" umsetzen: wenn sich der Preis gegen den Trader entwickelt, kann der Trader eine Position in einer entgegengesetzten Richtung eröffnen.
In diesem Artikel betrachten wir ein weiteres Kriterium für die Optimierung einer Strategie auf Basis einer grafischen Analyse der Salden. Die linearen Regression wird mit der Funktion aus der Bibliothek ALGLIB berechnet.
Die Benutzerfreundlichkeit eines MQL5-Programms basiert gleichermaßen auf seinem Funktionsreichtum und einer ausgefeilten grafischen Benutzeroberfläche. Das Äußere ist manchmal wichtiger als ein schneller und stabiler Betrieb. Hier sehen Sie Schritt für Schritt, wie Sie Ihre eigenen Anzeigefelder auf Basis der Klassen aus der Standardbibliothek erstellen können.
Ein Jahr ist vergangen, seit die Verkäufe im MQL5 Market begonnen haben. Wir blicken zurück auf ein Jahr harter Arbeit, die sich gelohnt hat: der neue Service ist zum größten Platz für Handelsroboter und technische Indikatoren für die MetaTrader 5 Plattform geworden.
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.
Der Hauptzweck des Artikels besteht darin, den Mechanismus der Arbeit mit unserer Anwendung und deren Möglichkeiten zu beschreiben. Daher kann der Artikel als eine Anleitung zur Benutzung der Anwendung betrachtet werden. Er behandelt alle möglichen Fallstricke und Besonderheiten bei der Verwendung der Anwendung.
In diesem Artikel werden wir uns überlegen, die Listen der Bar-Objekte für jede verwendete Symbolperiode zu einem einzigen Symbol-Zeitreihen-Objekt zusammenzufassen. Auf diese Weise wird jedes Symbol ein Objekt haben, das die Listen aller verwendeten Symbolzeitreihen-Perioden speichert.