English Русский 中文 Español 日本語 Português 한국어 Français Italiano Türkçe
MetaTrader 5 - Jenseits aller Vorstellungen!

MetaTrader 5 - Jenseits aller Vorstellungen!

MetaTrader 5Beispiele | 27 Januar 2016, 09:37
2 057 0
MetaQuotes
MetaQuotes

Einleitung

Begonnen hat die Entwicklung von MetaTrader 5 bereits im fernen 2007. Von Anfang an war MetaTrader 5 als revolutionäre Plattform für verschieden Märkte gedacht, die sowohl im Devisenhandel als auch an jeder anderen Börse genutzt werden kann. Während der gesamten Entwicklung wurde enorme Arbeit geleistet, deren Ergebnis eine vielseitige Dienstinfrastruktur ist, die Händlern grenzenlose Möglichkeiten eröffnet. In dem hier vorliegenden Beitrag versuchen wir, alle wesentlichen Funktionen von MetaTrader 5 anzusprechen und werden eine Analyse im Vergleich zu der Vorgängerplattform vornehmen.

  1. Diagramme
  2. Navigator
  3. Handel
  4. Werkzeuge/Toolbox
  5. Prüfung und Optimierung
  6. Einbindung in die MQL5.Community
  7. MetaEditor
  8. Die Programmiersprache MQL5
  9. Dienste für Händler und Entwickler


1. Diagramme

Wir beginnen mit einem der augenfälligsten Vorzüge der MetaTrader 5 Plattform, ihrem analytischen Teil. Die Echtzeit-Kursdiagramme weisen ein im Vergleich zu MetaTrader 4 deutlich erweitertes Funktionsspektrum auf.

1.1. Anpassung und 21 Zeiträume. Die Diagramme der Plattform verfügen über zahlreiche unterschiedliche Einstellungen, sodass jeder Händler sie seinen Bedürfnissen anpassen kann. MetaTrader 5 unterstützt drei Arten von Diagrammen: gestrichelte Linien, Balkenfolgen oder Folgen von japanischen Kerzen. Jedem Bildelement kann eine andere Farbe zugewiesen und es kann eine angenehmere Arbeitsoberfläche für eine länger anhaltende Beschäftigung geschaffen werden. Verglichen mit der 4. Fassung der Plattform wurde die Anzahl der verfügbaren Diagrammzeiträume in MetaTrader 5 auf jetzt 21 mehr als verdoppelt.

Anpassbare Diagramme

1.2. Vorteile der Minutenbalken. In MetaTrader 5 wurde ein völlig neues Prinzip der Übertragung und Speicherung der Kursdaten umgesetzt. In der Vorgängerversion wurden die Daten je nach Zeitraum gesondert an die Ausgabegeräte übermittelt. Jetzt erfolgt die Übertragung und Speicherung der Daten lediglich in Form von Minutenbalken, auf deren Grundlage länger zurückreichende Zeiträume jeweils in dem betreffenden Ausgabegerät zusammengestellt werden. Dieses Vorgehen ermöglicht deutliche Einsparungen beim Datenverkehr, da die Verlaufsdaten nur einmal heruntergeladen und dann auf alle Zeiträume angewendet werden. Nach dem Herunterladen des Kursverlaufs ruft das Ausgabegerät nur noch die neuen Daten ab.

Die Diagramme lassen sich jetzt schneller öffnen: das Anlegen eines Diagramms für einen beliebigen Zeitraum aus Minutenbalken dauert nur noch wenige Sekunden. Die fertigen Diagramme werden auf Ihrer Festplatte im Cache zwischengespeichert. Folglich wird das Diagramm mit den Daten für diesen Zeitraum beim nächsten Aufruf im Handumdrehen geöffnet, und es werden lediglich die neuen Daten eingerechnet.

Die Arbeit mit Minutenverläufen bietet zudem vollständige Synchronisierung (Abgleichung) der Daten über alle Zeiträume, da alle auf dieselben Minutendaten als Quelle zurückgreifen.

Ein weiterer Vorteil der Arbeit mit Kursverläufen besteht darin, dass sie in gepackter Form auf die Ausgabegeräte übertragen werden, das spart Bandbreite und beschleunigt das Herunterladen. Zur Veranschaulichung, ein Zehnjahreskursverlauf in Minutenbalken für ein Kürzel umfasst in gepackter Form etwa 10 MB.

1.3. Indikatoren. Im Lieferumfang von MetaTrader 5 sind 38 technische Indikatoren enthalten. Sie sind im Fenster des Navigators übersichtlich nach ihrer Art gruppiert: Trendindikatoren, Oszillatoren, Mengenindikatoren und Bill Williams-Indikatoren. Zu den verfügbaren Indikatoren zählen Bollinger Bänder, Envelopes, der gleitende Durchschnittswert (moving average), parabolische SAR, Standardabweichung, Ichimoku Kinko Hyo, MACD, Bulls Power, Bears Power, Alligator, der Awesome Oszillator u. v. a. m.

Die Anzahl der Indikatoren von Fremdanbietern ist in MetaTrader 5 praktisch unbegrenzt. Zahlreiche Indikatoren können aus der Codebasis heruntergeladen oder im Markt erworben werden.

1.4. Analyseinstrumente. Auch die Auswahl der verfügbaren Analyseinstrumente wurde erheblich erweitert. Die MetaTrader 5 Plattform bietet jetzt 46 Objekte, darunter die Instrumente von Elliott, Fibonacci und Gann, grafische Objekte (darunter auch solche zur interaktiven Zusammenarbeit mit anderen MQL5-Programmen), Formen, Kanäle, Linien usw.

Jedes Objekt besitzt seine eigenen Einstellungen, Farbe, Linienstärke, zusätzliche Ebenen sowie die Darstellung in unterschiedlichen Zeiträumen.

1.5. Exakte Zeitleiste. Bei den Diagrammen kann die exakte Zeitleiste eingeschaltet werden; jetzt sind die grafischen Objekte nicht mehr zwangsläufig mit einem Balken verknüpft. Die Objektanker können überall zwischen den Balken des Diagramms liegen. Dabei bleibt die exakte Lage der Ankerpunkte des Objekts bei einem Wechsel zwischen verschieden Zeiträumen erhalten.

1.6. Wirtschaftskalender. Eine der Neuerungen in MetaTrader 5 ist der Wirtschaftskalender, der eine grundlegende Analyse der Märkte ermöglicht. Die makroökonomischen Kennziffern werden in Echtzeit aktualisiert. Darüber hinaus können Ereignisse des Wirtschaftskalenders leicht in ein Kursdiagramm eingearbeitet werden.

Der Wirtschaftskalender in MetaTrader 5

1.7. Erweiterte Marktinformationen. In der vierten Fassung der Plattform werden zu jedem Kürzel in Echtzeit fünf Kennziffern übermittelt: Bid, Ask, High, Low und Time. In MetaTrader 5 ist der Umfang der verfügbaren Informationen um ein Vielfaches größer. Zu den grundlegenden Kennziffern wurden der tatsächliche Umfang und der Kurs des letzten abgeschlossenen Geschäftsvorgangs hinzugefügt. Und unter einer eigenen Registerkarte in der „Marktübersicht“ sind zu jedem Kürzel 20 statistische Kennziffern abrufbar, die ebenfalls in Echtzeit aktualisiert werden:

Marktübersicht

Eine nicht unwesentliche Besonderheit ist auch das Vorhandensein der tatsächlichen Werte für den Spread und den Umfang in den Verlaufsdaten. Diese Kennziffern werden in jedem Minutenbalken gespeichert, was bedeutet, dass sie bei der Prüfung und Optimierung von Expert-Systemen in dem mehrwährungsfähigen Strategieprüfprogramm von MetaTrader 5, dem Strategy Tester, verwendet werden können.

1.8. Online-Veröffentlichung von Diagrammen. In MetaTrader 5 besteht die bequeme Möglichkeit, Bildschirmaufnahmen Ihrer Diagramme online zu veröffentlichen. Das Ausgabegerät ermöglicht jetzt nicht mehr nur die Darstellung auf dem lokalen Rechner, sondern sie kann jetzt mithilfe des zur MQL5.Community gehörenden Dienstes MQL5 Charts im Handumdrehen an andere Händler weitergeleitet werden. Dabei wird, wenn Sie Ihr MQL5.Community-Konto in dem Ausgabegerät angemeldet haben, die Bildschirmaufnahme mit diesem verknüpft. Somit kann jeder Händler eigene Galerien erstellen und sie in seinem Profil bequem verwalten.

Online-Veröffentlichung von Diagrammen

Nach der Veröffentlichung kann die grafische Darstellung auch über soziale Netze verbreitet werden.


2. Navigator

Die Oberfläche der Handelsplattform von MetaTrader 5 ist nach wie vor schlicht, aber jetzt noch benutzerfreundlicher. Das Navigatorfenster ermöglicht die Verwaltung zahlreicher Vorgänge in dem Ausgabegerät, von der Eröffnung eines neuen Demokontos bis hin zur Einbindung von Expert-Systemen, Indikatoren und Skripten in Diagramme.

2.1. Serversuche nach Maklernamen. Eine weitere Erleichterung in MetaTrader 5 ist das Hinzufügen von Maklerservern unter dem Namen des Maklers. Während man früher, um ein neues Demokonto bei einem Makler zu eröffnen, die IP-Adresse von dessen Handelsserver in Erfahrung bringen oder eine besondere Anwendersoftware herunterladen musste, gibt man jetzt einfach den Namen des Maklers ein. Das System findet den erforderlichen Server unter dem angegebenen Namen selbst und fügt ihn dem entsprechenden Verzeichnis hinzu:

Einen Server anhand des Namens des Maklers finden

Danach steht der Eröffnung des Kontos nichts mehr im Weg.

2.2. Gruppierung von Programmen. Noch eine vorteilhafte Fähigkeit des Navigators ist die Gruppierung von Programmen. Die im Lieferumfang enthaltenen technischen Indikatoren sind übersichtlich nach Arten gruppiert: Trendindikatoren, Oszillatoren, Mengenindikatoren und Bill Williams-Indikatoren. Benutzerdefinierte Indikatoren, Expert-Systeme und Skripte sind ebenfalls in eigene Gruppen aufgegliedert. Dabei gilt in allen Gruppen eine Hierarchie, die der Ordnerstruktur auf einem Speichermedium entspricht. Sie können Ihre selbst angelegten Indikatoren beispielsweise auf Unterordner wie /MQL5/Indicators/My oder /MQL5/Indicators/CodeBase usw. verteilen. Im Navigatorfenster stoßen Sie auf eine ähnliche Struktur.

Über den „Markt“ bezogene MQL5-Programme werden in den betroffenen Expert-Systemen sowie den benutzerdefinierten Indikatoren und Skripten automatisch der entsprechenden Unterkategorie „Markt“ zugeordnet.

2.3. Weiterentwicklung von Programmen. Wenn sich die Notwendigkeit der Nachbesserung einer Anwendung ergibt (und deren Quellcode verfügbar ist), wählen Sie sie aus und drücken Sie die Eingabetaste  Enter. Der Quellcode der Anwendung wird in dem Bearbeitungsprogramm MetaEditor geöffnet.

2.4. Herunterladen von Programmen aus der Codebasis. Dank der engen Verbindung der Handelsplattform MetaTrader 5 mit den Diensten der MQL5.Community kann das Herunterladen eines Expert-Systems, eines Indikators oder eines Skripts aus der Codebasis mit einem einzigen Mausklick im Navigator ausgelöst werden. In jeder Kategorie von Programmen gibt es den zusätzlichen Befehl „Weitere“. Der Zahlenwert bei diesem Befehl gibt die Anzahl der zum Herunterladen verfügbaren Programme an:

Weitere in der Codebasis verfügbare Programme

2.5. Schnelltests. Jedes Expert-System und jeder Indikator kann unter Verwendung des Kontextmenübefehls Test mit zwei Mausklicks für einen Probelauf aufgerufen werden. Das Prüfprogramm „Startegy Tester“ öffnet sich zeitgleich mit dem aufgerufenen Programm. Sie müssen lediglich noch die Parameter einstellen und den Probelauf starten.


3. Handel

In MetaTrader 5 haben die Handelsmechanismen im Vergleich zu MetaTrader 4 erhebliche Veränderungen erfahren. All diese Änderungen sind auf eine Erweiterung der Nutzung der Handelsplattform gerichtet. Mit MetaTrader 5 erhalten die Händler die Möglichkeit, an allen Börsenplätzen und mithilfe aller ECN zu handeln. Bereits jetzt genießt die MetaTrader 5 Plattform bei einer Reihe von Börsenplätzen, darunter SMX, GBOT, CitiBank, Currenex, DGCX, Integral usw., den Status eines unabhängigen Programmanbieters (ISV). Die weitere Planung zielt auf die Einbeziehung der großen Börsen der Welt.

3.1. Positionsnetting. In MetaTrader 5 kommt die als „Netting“ bezeichnete Aufrechnung der Positionen entsprechend den Gepflogenheiten an allen modernen Börsen zum Einsatz. Dieses „Netting“ zeichnet sich dadurch aus, dass in einem Finanzinstrument zu jedem beliebigen Zeitpunkt jeweils nur eine Position vorhanden sein kann. In unterschiedliche Richtungen (Kaufen und Verkaufen) gerichtete Positionen sind nicht zulässig.

Folglich wird bei Ausführung einer Handelsoperation mit dem Ziel des Verkaufs eines Postens eines bestimmten Finanzinstrumentes, wenn gleichzeitig eine Position zum Kauf eines Postens geöffnet ist, eine der beiden Positionen geschlossen, Wenn jedoch eine Position zum Kauf eines Postens besteht, und eine Handelsoperation mit dem Ziel des Kaufs eines weiteren Postens desselben Finanzinstrumentes ausgeführt wird, ergibt sich daraus letztlich eine Position im Umfang von 2 Posten. Dabei werden die Eröffnungskurse neu berechnet; es wird ein gewichteter Durchschnittswert für den Eröffnungskurs ermittelt: (Kurs des ersten Abschlusses * Umfang des ersten Abschlusses + Kurs des zweiten Abschlusses * Umfang des zweiten Abschlusses) / (Umfang des ersten Abschlusses + Umfang des zweiten Abschlusses).

3.2. Sechs Arten von Pending Orders. Zusätzlich zu Markt-, begrenzten („limit“) und verlustgesicherten Stop-Aufträgen unterstützt die MetaTrader 5 Plattform zwei weitere Arten offener Aufträge ( Pending Orders): Buy Stop Limit und Sell Stop Limit. Bei Auslösung eines derartigen Auftrags wird der entsprechende begrenzte Auftrag erteilt. Die neuen Auftragsarten erweitern die Möglichkeiten zur Umsetzung von Handelsstrategien.

3.3. Ein-Klick-Handel. Heute spielt die Geschwindigkeit beim Abschluss von Handelsgeschäften eine immer wichtigere Rolle. MetaTrader 5 bietet die Möglichkeit zum sofortigen Abschluss von Handelsvorgängen per Mausklick. Diese Möglichkeit steht im Fenster der bereits bekannten Marktübersicht zur Verfügung.

Ein-Klick-Handel in MetaTrader 5

Darüber hinaus ermöglicht die Ein-Klick-Handelsfunktion das schnelle Schließen von Positionen, die Löschung von Pending Orders sowie der Stop Loss- und Take Profit-Grenzen unter der Registerkarte „Handel“.

Ein-Klick-Handel

Schnelle Handelsfunktionen finden sich auch in der Markttiefe.

3.4. Handel aus dem Diagramm. Zum Vorteil aller, die manuell handeln, sind in MetaTrader 5 erweiterte Möglichkeiten für den Handel direkt aus dem Diagramm vorgesehen. In jedem Diagramm gibt es ein Einblendmenü für schnelle Marktoperationen.

Handel aus dem Diagramm

Zur Platzierung von Pending Orders im Diagramm steht ein „intelligentes“ Kontextmenü zur Verfügung. Der Auftrag wird zu dem Kurs erteilt, den Sie mit der Maus anklicken. Als erste wird die für die jeweilige Position des Mauszeigers in Bezug auf den Kurs wahrscheinlichste Auftragsart angezeigt.

3.5. Änderung der Handelsgrenzen im Diagramm. In MetaTrader 5 besteht die Möglichkeit, die Kurse in Pending Orders sowie in Stop Loss- und Take Profit-Aufträgen unmittelbar im Diagramm zu ändern. Jetzt können Sie, da Sie die aktuelle Marktlage vor Augen haben, einfach die Handelsgrenze mit Ihrer Maus in den gewünschten Bereich ziehen und ihren Wert anschließend genauer einstellen:

Änderung der Handelsgrenzen im Diagramm

3.6. Ungleichzeitigkeit und Mehrsträngigkeit des Handels. Gegenüber MetaTrader 4 bietet die fünfte Fassung der Plattform den Händlern umfassendere Möglichkeiten zur gleichzeitigen Ausführung mehrerer Handelsoperationen. Früher kam es vor, dass Händler sich zum Beispiel beim gleichzeitigen Handel mithilfe mehrerer automatischer Handelssysteme mit der Fehlermeldung „Handelsstrang belegt“ konfrontiert sahen. In MetaTrader 5 wurden die Handelsstränge erweitert, und es ist jetzt möglich, bis zu 16 Handelsanfragen an den Server zu übermitteln, ohne die Ergebnisse ihrer Bearbeitung abwarten zu müssen.

3.7. Ausführung der Operationen an der Börse. Wie bereits gesagt haben die Händler dank der Einbindung der Handelsplattform MetaTrader 5 in andere Systeme jetzt Zugang zu den führenden Handelsplätzen der Welt. Das System ermöglicht die unmittelbare Ausführung von Handelsoperationen in externen Handelssystemen, das so genannte Straight-Through Processing. Dabei werden die Handelsoperationen ohne Einschaltung eines Vermittlers oder Maklers (im Modus „Non-Dealing Desk“) ausgeführt.

3.8. Handel aus der Markttiefe. Ein untrennbarer Bestandteil des Börsenhandels ist die kurz als DOM („Depth of Market“) bezeichnete Markttiefe. In ihr kann der Händler die aktuell tatsächlich auf dem Markt vorhandene Nachfrage sowie die eigenen Handelsanfragen sehen. In MetaTrader 5 können Handelsoperationen unmittelbar aus der Markttiefe ausgeführt werden.

Die Markttiefe in MetaTrader 5

In Kombination mit der Ein-Klick-Handelsfunktion ist die Markttiefe ein leistungsfähiges Scalping-Instrument, das dem Händler ermöglicht, Handelsanfragen mit einem Mausklick zu platzieren, zu ändern und zu löschen.

3.9. Erweiterte Ausführungsbedingungen. Für jeden Handelsvorgang kann der Händler erweiterte Bedingungen für die Ausführung durch den Makler angeben, Fill or Kill (FOK) oder Immediate or Cancel (IOC). Mit FOK ist gemeint, dass die Handelsoperation ausschließlich in dem vorgegebenen Umfang ausgeführt werden darf (weder mehr noch weniger). Ist diese Menge des Finanzinstrumentes auf dem Markt nicht erhältlich, so wird der Auftrag nicht ausgeführt. Bei IOC kann die Handelsoperation für die höchste auf dem Markt erhältliche Menge innerhalb der in dem Auftrag ausgewiesenen Obergrenze ausgeführt werden. Im Falle der Unmöglichkeit der vollständigen Erfüllung des Auftrages wird dieser in dem erhältlichen Umfang erfüllt, und der nicht erfüllbare Umfang des Auftrags wird annulliert.

3.10. Mobile Handelsfunktionen und Push-Benachrichtigungen. Heute kommt der Handel mithilfe mobiler Endgeräte zunehmend in Mode. Die Händler wollen zu jeder Tages- und Nachtzeit das ganze Jahr über und von jedem beliebigen Ort auf der Welt auf ihre Konten zugreifen können. Der mobile Teil der MetaTrader 5 Handelsplattform geht mit der Zeit. Den Händlern stehen kostenlose MetaTrader 5 Apps für iPhones und Android Geräte zur Verfügung.

Eine der wichtigsten Funktionen der Apps ist die Möglichkeit zum Empfang von Push-Benachrichtigungen. Dabei handelt es sich um kurze Textmitteilungen, die von dem stationären Ausgabegerät des Händlers sowie von Diensten der MQL5.Community an mobile Endgeräte geschickt werden können. Diese Benachrichtigungen gehen unterwegs nicht verloren und kommen stets unverzüglich an, gleich ob die Anwendung gerade läuft oder nicht.

Die Programmiersprache MQL5 bietet die Sonderfunktion SendNotification, die dem MQL5-Programm den Versand von Push-Benachrichtigungen ermöglicht. Zudem besteht die Möglichkeit, in dem Ausgabegerät Signale zur Meldung bestimmter Marktereignisse anzulegen. Eine dieser Ereignismeldungen ist der Versand von Push-Benachrichtigungen.

Push-Benachrichtigungen können auch verwendet werden, um Informationen über Aktualisierungen auf der Webseite der MQL5.Community abzurufen. Geben Sie dazu den Benutzernamen aus Ihrem Profil unter der Registerkarte „Kontakte“ an.

Push-Benachrichtigungen in MetaTrader 5 Mobile

Push-Benachrichtigungen halten den Händler stets auf dem neuesten Stand und ermöglichen ihm, auf Veränderungen am Markt auch dann zu reagieren, wenn er weit von seinem Rechner entfernt ist.


4. Werkzeuge/Toolbox

Das den Händlern aus der vierten Fassung des Programms bekannte Fenster Werkzeuge (Toolbox) hat eine beträchtliche Zahl neuer Funktionen erhalten.

4.1. Aktiva. Der Händler kann sich jetzt eine zusammenfassende Übersicht über den Stand der Aktiva aller offenen Positionen anzeigen lassen.

Die Aktiva im Werkzeugefenster

4.2. Kalender. Wie bereits in Abschnitt 1 ausgeführt steht in MetaTrader 5 jetzt ein Kalender wirtschaftlich relevanter Ereignisse zur Verfügung. Zu mehr als 10 der führenden Volkswirtschaften der Welt sind die in Echtzeit aktualisierten makroökonomischen Kennziffern abrufbar. Alle Ereignisse können in den Diagrammen der entsprechenden Währungspaare abgebildet werden.

4.3. Der Markt. MetaTrader 5 ist eng mit den Diensten der MQL5.Community verknüpft. Bei dem Markt handelt es sich um einen MQL5-Appstore, wo jeder Interessent das gewünschte Produkt für den Einsatz in seinem Ausgabegerät erwerben kann. Der Bequemlichkeit halber ist dieser Dienst im Lieferumfang für das jeweilige Ausgabegerät bereits enthalten.

Der „Markt“ eingebunden in MetaTrader 5

Im Werkzeugefenster wird dem Händler das vollständige im „Markt“ erhältliche Anwendungssortiment präsentiert. Bevor Sie sich zum Kauf entschließen, können Sie eine Testversion der Programme herunterladen und sie in einem Prüfprogramm wie dem Strategieprüfprogramm (Strategy Tester) auf ihre Brauchbarkeit überprüfen. Zudem bietet der „Markt“ eine große Zahl kostenloser Anwendungen.

Unter der Registerkarte „Käufe“ finden Sie eine übersichtliche Aufstellung der von Ihnen erworbenen und heruntergeladenen Erzeugnisse. Diese werden im Navigatorfenster automatisch nach ihrer Art sortiert und können auch von dort aus gestartet werden.

4.4. Die Codebasis. Über das Werkzeugefenster kann auch auf den umfangreichen Bestand kostenloser MQL5-Quellcodes zugegriffen werden. Der Händler kann jeden Code unmittelbar von seinem Ausgabegerät laden und ausführen. Er muss das entsprechende Expert-System, den Indikator oder das Skript dazu lediglich mit der Maus auf ein Diagramm ziehen. Der Code wird dann automatisch geladen, in den passenden Ordner gelegt, zusammengestellt und im Diagramm ausgeführt.

Codebasis, frei zugänglicher Quellcode

Die Anzahl der veröffentlichten Quellcodes nähert sich schrittweise der 1.500er Marke und wächst weiter.


5. Prüfung und Optimierung

Eine der wichtigsten und unerwartetsten Neuerungen in MetaTrader 5 ist das mehrwährungsfähige Prüfprogramm (Strategy Tester). Ab jetzt sind die Händler in ihren Möglichkeiten zur Prüfung und Optimierung der Expert-Systeme, die sie für den Handel mit mehreren Finanzinstrumenten einsetzen, nicht mehr beschränkt.

5.1. Umfassender Prüfbericht. In MetaTrader 5 wurde der Bericht über die Ergebnisse der Prüfung von Expert-Systemen erheblich erweitert. Er enthält zusätzliche statistische Kennziffern, die eine umfassendere Beurteilung der Handelsstrategie ermöglichen. Zu den Neuerungen zählen Kennziffern wie der Ausgleichsfaktor, die Sharpe Ratio, die Haltezeit von Positionen sowie zahlreiche weitere. Insgesamt stehen im Prüfbericht über 40 Kennziffern zur Verfügung.

Erheblich erweitert wurde auch der grafische Teil des Prüfberichts. Als Ergänzung zu den Konto- und Eigenkapitalkurven sind die Verteilung der Eintritte in Positionen sowie der Gewinne/Verluste im Zeitablauf (stündlich, wöchentlich und monatlich) hinzugekommen:

Prüfergebnisdiagramme

Darüber hinaus sind die Diagramme für die Gewinnverteilung und MAE/MFE sowie für die Gewinnverteilung und die Haltezeit der Position abrufbar.

Diagramme für Gewinne, MAE, MFE und Haltezeit

5.2. Größere Genauigkeit bei der „tick“-weisen Prüfung. Das Strategieprüfprogramm von MetaTrader 5 verwendet bei der Prüfung nur einen Kursmodellierungsmodus — die Erzeugung von Ticks aufgrund der verfügbaren Minutendaten. Der Einsatz des Zeitraums M1 in dem Prüfprogramm ermöglicht eine sehr genaue Modellierung der Kursbewegung mit einer minimalen Fehlerquote im Vergleich zu der Modellierung der Kursänderungen (Ticks) anhand längerer Zeiträume in MetaTrader 4. Infolgedessen ist die höchste Fehlerquote bei der Modellierung der Kurse in dem Prüfprogramm von MetaTrader 5 unerheblich, und die Abweichungen des modellierten von dem tatsächlichen Kurs können nur innerhalb eines Minutenbalkens liegen.

5.3. Weitere Prüfmodi. MetaTrader 5 verfügt über vier Prüfmodi: bei jeder Kursänderung (every tick) (das genaueste Verfahren), One-Minute OHLC (Prüfung an den Stützpunkten des Balkens), nur Eröffnungskurse (das oberflächlichste Verfahren zur schnellen Prüfung), mathematische Berechnungen (für mathematische Berechnungen im Prüfprogramm ohne die Verwendung historischer Daten und die Erzeugung von Ticks).

5.4. Eigenes Optimierungskriterium. Während der Händler in MetaTrader 4 die Möglichkeit hatte, ein Expert-System in Bezug auf eines von fünf Kriterien zu optimieren, so ist in der fünften Fassung ein weiteres hinzugekommen (die Anwendung der Sharpe Ratio auf den Kontobestand). Die Hauptneuerung besteht jedoch in der Möglichkeit der Verwendung eines eigenen Optimierungskriteriums. Nach Auswahl des Wertes Custom max in den Einstellungen des Prüfprogramms kann der Händler sein Expert-System entsprechend dem von der Funktion OnTester() ausgegebenen Höchstwert optimieren.

5.5. Zwischenspeicheroptimierung und Bericht in XML. Die Prüfergebnisse werden automatisch in einem besonderen Zwischenspeicher (einer XML-Datei) abgelegt, um später ggf. schnell darauf zugreifen zu können. Um die doppelte Ausführung von Durchläufen zu vermeiden, sucht das Programm bei der Prüfung/Optimierung jedes Satzes von Eingangsparametern in dem Ergebniszwischenspeicher nach bereits vorliegenden Ergebnissen vorheriger Durchläufe. Wird bei einem solchen Parametersatz kein Ergebnis gefunden, erfolgt die Weitergabe der Aufgabe zur Durchführung der Prüfung an eine Programminstanz (einen „Agent“).

Da es sich bei dem Zwischenspeicher für die Ergebnisse der Optimierung um eine gewöhnliche XML-Datei handelt, kann die Analyse in anderen Programmen erfolgen (z. B. in MS Excel).

5.6. Automatisches Herunterladen des Verlaufs und Abgleich der Zeiträume. Das Prüfprogramm von MetaTrader 5 sorgt selbst dafür, dass alle erforderlichen historischen Daten verfügbar sind. Vor Beginn der Prüfung lädt es alle verfügbaren historischen Daten zu dem zu prüfenden Kürzel herunter. Das geschieht nur beim ersten Mal. Danach werden lediglich die neuen Daten nachgeladen. Sollte ein (mehrwährungsfähiges) Expert-System während der Prüfung Daten zu anderen Kürzeln anfordern, werden auch diese automatisch von dem Handelsserver heruntergeladen.

5.7. Vorwärts-Prüfung. MetaTrader 5 verfügt über den neuen Modus der Vorwärts-Prüfung. Unter Vorwärts-Prüfung versteht man den wiederholten Durchlauf der besten Optimierungsergebnisse in einem anderen Zeitraum. Die Möglichkeit hilft zu vermeiden, dass sich die Parameter an bestimmte Bereiche der historischen Daten anpassen.

5.8. Belastungsprüfung. Zur größtmöglichen Annäherung der Bedingungen der Prüfung des Expert-Systems an die Realität würde dem Prüfprogramm von MetaTrader 5 der Modus Zufällige Verzögerungen hinzugefügt. Ab dem Zeitpunkt des Versendens eines Auftrages bis zu seiner Erfüllung kann der Kurs sich ändern. Je nach der in dem Auftrag festgelegten Abweichung kann seine Erfüllung zum Tageskurs erfolgen (wenn dieser innerhalb der Abweichung liegt), oder es wird ein neuer Auftrag erteilt. Die Prüfung in diesem Modus ermöglicht dem Programmierer des Expert-Systems die Verarbeitung vergleichbarer Situationen korrekt zu programmieren.

5.9. Mehrsträngige Optimierung. Das Prüfprogramm ist mehrsträngig und ermöglicht die Nutzung aller verfügbaren Ressourcen Ihres Rechners. Die Prüfung und Optimierung erfolgt mithilfe besonderer, als Dienste auf dem Computer des Anwenders installierter besonderer Recheninstanzen (eine Instanz je Prozessorkern). Die Programminstanzen arbeiten unabhängig und ermöglichen die Durchführung parallel laufender Berechnungen der Optimierungsdurchgänge.

5.10. Prüfmöglichkeit aus der Ferne. Mit dem Prüfprogramm kann eine unbegrenzte Anzahl externer Instanzen („Remote Agents“) verknüpft werden, dabei handelt es sich um Programminstanzen, die auf anderen Rechnern installiert sind. Mithilfe der Anwendung MetaTester können die Instanzen des Prüfprogramms auf allen Rechnern eines lokalen Netzwerks installiert und anschließend mit dem Prüfprogramm auf einem Endgerät verbunden werden. Die Programminstanzen erhalten die Aufgaben zur Berechnung über das Netzwerk und übermitteln die Ergebnisse an das entsprechende Endgerät. Auf diese Weise können die Möglichkeiten zur parallel laufenden Berechnung beträchtlich erweitert und der Optimierungsvorgang um ein Vielfaches beschleunigt werden.

5.11. Die MQL5-Cloud. Das Netzwerk der MQL5-Cloud ermöglicht die Organisation des Austauschs von Rechenkapazitäten zwischen allen, die sie benötigen und denen, die freie Ressourcen auf ihren Rechnern zur Verfügung stellen können. Durch die MQL5-Cloud kann jeder Händler die Rechenleistung tausender Programminstanzen auf der ganzen Welt nutzen. Die Optimierung, die bei Verwendung nur eines einzelnen Computers einige Jahre in Anspruch genommen hätte, kann jetzt in wenigen Stunden erledigt werden.

Die MQL5-Cloud

Um auf das Netzwerk zuzugreifen, reicht es, das Fenster des Strategieprüfprogramms zu öffnen und die Verwendung von Instanzen aus der Cloud (Cloud Agents) zuzulassen.

Außer die MQL5-Cloud zu nutzen, können Sie dem Netzwerk auch eigene Rechenleistung zur Verfügung stellen und bares Geld verdienen. Dazu muss nicht einmal MetaTrader 5 vollständig auf Ihrem Ausgabegerät installiert sein. Laden Sie einfach das eigens angelegte Installationsprogramm herunter, das Ihnen die schnelle und einfache Installation von MetaTester, einer Anwendung zur Verwaltung entfernt gelegener Instanzen aus der Cloud auf Ihrem Rechner, ermöglicht. Treten Sie nach Vornahme einiger einfacher Einstellungen der MQL5-Cloud bei und fangen Sie an Geld zu verdienen. Die gesamten Nutzungsdaten und die Einnahmen aus der Bereitstellung Ihrer Rechenkapazität werden in Ihren Profil auf der Webseite der MQL5.Community übersichtlich angezeigt. Die Angaben zu den Programminstanzen (Agenten) erscheinen in Ihrem Profil unmittelbar nach der Erledigung ihrer ersten Aufgabe.

5.12. Einfache Steuerung externer Geräte. Die Steuerung der Prüfinstanzen erfolgt über ein Kontextmenü. Mit wenigen Klicks können beliebige Instanzen ein- bzw. ausgeschaltet werden: lokale, externe oder solche aus der MQL5-Cloud. Hier können zudem die angeschlossenen externen Instanzen verwaltet sowie die Einstellungen von Instanzen im- bzw. exportiert werden.

5.13. Mathematische Berechnungen. Die Funktionen des Strategieprüfprogramms in Verbindung mit den Möglichkeiten der MQL5-Cloud werden durch die Prüfung und Optimierung des Expert-Systems nicht beeinträchtigt. Der Modus „ Mathematische Berechnungen“ ermöglicht die Ausführung von Berechnungen aller Art. Dabei werden der Kursverlauf und die Angaben zu den Kürzeln von dem Strategieprüfprogramm weder geladen noch verwendet, es führt die Berechnungen einfach aus, indem es nacheinander die Funktionen OnInit(), OnTester() und OnDeinit() aufruft. Mathematische Berechnungen eignen sich gut für Aufgaben zur Bestimmung der Extremwerte mathematischer Funktionen, deren Werte von der Funktion OnTester() ausgegeben werden. Die Optimierung erfolgt anhand der Suche nach dem Höchstwert der Funktion.

5.14. Zwei- und dreidimensionale Darstellungen der Optimierungsergebnisse. „Ein Bild sagt mehr als tausend Worte.“ Das Strategieprüfprogramm bietet eine Möglichkeit zur Veranschaulichung der Optimierungsergebnisse. Hier haben wir eine zweidimensionale Darstellung der Optimierung. Je dunkler das Grün desto höher der Wert des Optimierungskriteriums:

Zweidimensionale Darstellung der Optimierungsergebnisse

Es folgt eine dreidimensionale Darstellung der mathematischen Berechnungen in dem Strategieprüfprogramm. Die Abbildung zeigt die Suche nach dem höchsten Wert der Funktion: f(x,y) = MathSin(x^2 + y^2) + k * MathExp(-p * x^2 - p * y^2).

Dreidimensionale Darstellung der Optimierungsergebnisse

5.15. Sichtprüfung. In dem Modus der Sichtprüfung wird anhand einer Prüfung auf der Grundlage historischer Daten ersichtlich, wie ein Expert-System Handelsoperationen ausführt. Die grafische Darstellung stand bereits in MetaTrader 4 zur Verfügung, in der fünften Fassung der Plattform wurde ihr Funktionsumfang jedoch erheblich erweitert. Zunächst einmal wurde die grafische Darstellung von der Plattform getrennt und kann jetzt als eigenständiger Vorgang aufgerufen werden. Die Handelsoperationen werden nunmehr nicht mehr ausschließlich im Diagramm des geprüften Kürzels angezeigt. Unter eigenen Registerkarten können der aktuelle Kontostand, die eröffneten Positionen und die laufenden erteilten Aufträge sowie der Verlauf der Handelsvorgänge und ein ausführliches Protokoll angezeigt werden.

Grafische Darstellung des Strategieprüfprogramms

5.16. Beliebige benutzerdefinierte Ergebnisse während der Optimierung. Bei jedem Aufruf des Expert-Systems im Strategieprüfprogramm kann ein eigenes Datenfeld angelegt werden. Dieser Datensatz kann mithilfe der Funktion FrameAdd() in ein besonderes, als Rahmen („frame“) bezeichnetes Gerüst gespeichert werden. Bei der Optimierung des Expert-Systems kann jede Programminstanz eine Reihe von Rahmen an das Ausgabegerät übertragen. Alle eingehenden Rahmen werden in der Reihenfolge ihres Eintreffens in die Datei *.MQD in dem Ordner terminal_directory/MQL5/Files/Tester mit dem Namen des Expert-Systems eingetragen. Beim Empfang eines Rahmens von einer Instanz des Prüfprogramm durch das Ausgabegerät wird das Ereignis TesterPass erzeugt, das mithilfe der Funktion OnTesterPass() verarbeitet werden kann. Das ermöglicht die mitlaufende dynamische Verarbeitung der Ergebnisse des Optimierungsvorgangs, ohne dessen Abschluss abwarten zu müssen.

5.17. Beschleunigung dank OpenCL. Dank der in MQL5 angelegten Integration von OpenCL kann eine Reihe von in den Expert-Systemen auszuführenden Berechnungen mithilfe von Videokarten vorgenommen werden. Moderne Videokarten enthalten zahllose kleine Spezialprozessoren, die in der Lage sind, mehrere einfache mathematische Operationen an den eingehenden Datenströmen gleichzeitig auszuführen.

Die Verwendung von OpenCL in MQL5-Programmen ermöglicht die Beschleunigung der Prüfung und Optimierung von Expert-Systemen um ein Vielfaches. Dabei wählen die Instanzen („Agents“) des Prüfprogramms (lokale, externe oder in die Cloud ausgelagerte) automatisch das schnellste Berechnungsverfahren: mithilfe des Prozessors oder der Videokarte.

So erfolgt beispielsweise die Berechnung der bekannten fraktalen Mandelbrot-Menge mithilfe von OpenCL hundert Mal schneller als mit einem Prozessor.


6. Einbindung in die MQL5.Community

MetaTrader 5 ist fest in die MQL5-Entwicklergemeinschaft MQL5.Community eingebunden. Sie bietet Händlern wie Entwicklern einzigartige Dienste und Möglichkeiten.

6.1. Der Markt. Unmittelbar aus dem Programm heraus können in dem App-Store für MQL5-Programme beliebige vorgefertigte Anwendungen erworben werden. Bevor Sie sich zum Kauf entschließen, können Sie eine Testversion herunterladen und sie in dem Strategieprüfprogramm ausprobieren.

In dem „Markt“ kann jedermann als Verkäufer auftreten. Sie müssen sich lediglich anmelden. Nachdem erfolgter Zulassung als Anbieter können Sie Erzeugnisse anbieten und Geld verdienen.

6.2. Die MQL5-Cloud. Dieses leistungsfähige Netz für verteilte Berechnungen steht zur Prüfung und Optimierung Ihrer Expert-Systeme in einem Strategieprüfprogramm zur Verfügung. Jetzt können zahlreiche Optimierungsdurchgänge binnen weniger Minuten ausgeführt werden. Außer die MQL5-Cloud zu nutzen, können Sie dem Netzwerk auch eigene Rechenleistung zur Verfügung stellen und Geld verdienen.

6.3. Der MQL5-Speicher. Bei dem MQL5-Speicher handelt es sich um einen in das Bearbeitungsprogramm MetaEditor integrierten privaten Speicherplatz für Ihre Quellcodes. Er ermöglicht Ihnen, Ihren Quellcode sicher aufzubewahren und jederzeit von überall aus auf ihn zugreifen zu können. Im MQL5-Speicher wird der gesamte Verlauf der Änderungen an den geladenen Dateien jederzeit abrufbar aufbewahrt. Außerdem können Sie zu jeder beliebigen älteren Fassung der betreffenden Datei zurückgehen.

6.4. Die Codebasis. Mit einem Mausklick kann der Anwender jeden in dem Bereich Codebasis der Webseite der MQL5.Community veröffentlichten Code herunterladen und ausführen. Er muss das entsprechende Expert-System, den Indikator oder das Skript dazu lediglich mit der Maus auf ein Diagramm ziehen. Der Code wird dann automatisch geladen, in den passenden Ordner gelegt, zusammengestellt und im Diagramm ausgeführt.

6.5. Signale. Der Dienst Signale ermöglicht den Anwendern, Handelssignale professioneller Händler zu abonnieren, sie direkt in ihrem Ausgabegerät zu empfangen und auf ihnen beruhende Handelsoperationen auszuführen.

6.6. Artikel/Beiträge. Auf der Webseite der MQL5.Community sind zahlreiche nützliche Artikel und Beiträge zur Programmiersprache MQL5 sowie zur Arbeit mit der Handelsplattform veröffentlicht. Sie finden den gewünschten Beitrag anhand der unter der Registerkarte im Werkzeugefenster des Bearbeitungsprogramms MetaEditor übersichtlich zusammengestellten Titel oder Beschreibungen.

Der Zugang zu den Artikeln und Beiträgen in der MQL5.Community

6.7. MQL5-Diagramme. MetaTrader 5 bietet Händlern die Möglichkeit zur Veröffentlichung ihrer Bildschirmaufnahmen mithilfe des Dienstes  MQL5-Diagramme (MQL5 Charts). h dem Anlegen einer Bildschirmaufnahme kann diese automatisch online veröffentlicht werden. Sie erhalten dabei auch einen Link, um sie über die beliebtesten sozialen Netze zu verbreiten.

Wenn Sie Ihr MQL5.Community-Konto in dem Ausgabegerät angemeldet haben, wird die Bildschirmaufnahme mit diesem verknüpft. So erhält ein Händler die Möglichkeit, eigene Bildergalerien zu erstellen und sie über sein Profil bequem zu verwalten.


7. MetaEditor 5

Die integrierte Programmiersprache war stets einer der wichtigsten Bestandteile der Handelsplattform MetaTrader. Die Anwendungsentwicklung besteht jedoch nicht nur in der Programmiersprache MQL5, deren unbezweifelbare Vorzüge weiter unter nachgewiesen werden, sondern ebenso in dem Bearbeitungsprogramm für den Quellcode, dem MetaEditor. MetaEditor 5 bietet eine Fülle den Anwendern von MetaTrader 4 nicht verfügbarer neuer Funktionen.

7.1. Neues Dateisystem. Wie in der Vorgängerversion lässt das Bearbeitungsprogramm MetaEditor lediglich die Bearbeitung innerhalb des eigenen Dateienbestandes des Ordners /MQL5 im Dateiordner des Ausgabegerätes zu. Zur Erleichterung der Arbeit ist für jede Art von Quelldateien ein eigenes Verzeichnis vorgesehen (Experts [Expert-Systeme], Indicators [Indikatoren ], Scripts [Skripte], Include usw.). Die Struktur der Ordner und Dateien zur Speicherung ausführbarer Programme (Expert-Systeme, Indikatoren und Skripte) wird in dem Navigatorfenster des Ausgabegerätes in entsprechender Form abgebildet.

Ein übersichtliches Dateisystem

7.2. Der MQL5-Assistent. Im Lieferumfang von MetaEditor 4 ist ein Assistent zur Erstellung von Expert-Systemen enthalten, der die Erzeugung von Vorlagen für die Entwicklung unterschiedlicher Anwendungen ermöglicht. Für die fünfte Fassung des MetaEditors wurde dieses Programmelement erheblich überarbeitet. Es heißt jetzt  MQL5-Assistent und ermöglicht nach wie vor die Erstellung bereits ordnungsgemäß gestalteter Programmvorlagen (Templates) mit den erforderlichen Ereignisverarbeitungsroutinen. Die Hauptneuerung besteht jedoch in der Möglichkeit der Erzeugung vollständig fertiger und verwendbarer Expert-Systeme. Der Händler muss lediglich auswählen, welche Signale das jeweilige Expert-System verwenden soll, wie es das Kapital verwaltet und wie es vor Verlusten geschützt werden soll (die Art der Trailing Stop-Grenze).

Der MQL5-Assistent

Der Händler muss jetzt nicht mehr unbedingt in MQL5 programmieren können, um ein Expert-System zu erhalten. Seine Erstellung erfolgt in ein paar einfachen Schritten. Anschließend kann das Expert-System in einem Strategieprüfprogramm (Strategy Tester) optimiert werden.

7.3. Der MQL5-Speicher. Bei dem MQL5-Speicher handelt es sich um ausgelagerten Speicherplatz für eigene MQL5-Quellcodes. Er dient zur versionierten Dateispeicherung sowie zur bequemen Steuerung all Ihrer Vorhaben unmittelbar aus dem MetaEditor.

Die Quellcodes werden in einem geschützten ausgelagerten Speicher aufbewahrt, auf den über das entsprechende Konto in der MQL5.Community zugegriffen werden kann. Bei einem Ausfall der Festplatte können lokale Kopien Ihrer Codes binnen kürzester Frist aus dem MQL5-Speicher wiederhergestellt werden.

Sie können von jedem Computer aus auf ihn zugreifen. Dazu reicht es, wenn Sie sich mit Ihrem MQL5.Community-Konto in dem Bearbeitungsprogramm MetaEditor anmelden. Die Arbeit mit dem Speicher wird durch das Kontextmenü des Navigators zu einem Kinderspiel.

Der MQL5-Speicher

Jede Übertragung von Änderungen an dem Speicher wird protokolliert. Anschließend kann der gesamte Änderungsverlauf angezeigt sowie mit einem eigenen Hilfsprogramm die Dateifassungen verglichen und zu jeder älteren Fassung zurückgegangen werden.

Dateivergleich

Die Möglichkeiten des MQL5-Speichers werden auch weiterhin ständig erweitert. Mithilfe der Erteilung von Zugriffsrechten an bestimmte Konten der MQL5.Community wird die Möglichkeit zur gemeinsamen Bearbeitung von Projekten geschaffen.

7.4. Schnelle Erstellung von C++ DLL. Bei der Entwicklung von Anwendungen in MQL5 verwenden viele Entwickler DLLs Dritter. MetaEditor 5 erspart dem Anwender den Einsatz von MS Visual Studio zur DLL-Erstellung. Das Bearbeitungsprogramm unterstützt die üblichen cpp- und h-Dateien und erstellt sie ebenso leicht wie die Quellcodes in MQL5. Wenn auf dem Rechner des Anwenders MS Visual Studio installiert ist, wird dessen Codeersteller (Compiler) verwendet. Ansonsten werden die erforderlichen Dateien über eine sichere Verbindung an einen besonderen Übersetzungsserver weitergeleitet. Nach der Übersetzung erfolgt die Rücksendung der fertigen DLL-Datei an den Anwender.

Wie bei der Arbeit mit Quellcodes in MQL5 werden die Ergebnisse der Übersetzung, einschließlich etwaiger Fehler und Warnmeldungen, unter der Registerkarte „Fehler“ (Errors) des Werkzeugefensters ausgegeben.

7.5. Intelligente Codeverwaltung. In MetaEditor 5 sind einige Hilfsmittel zur Beschleunigung des Programmiervorgangs, zur Erleichterung der Navigation im Code und zur Verhütung von Fehlern vorgesehen:

Snippets. Zur Erleichterung der Codeerstellung besteht die Möglichkeit, als Vorlagen für bestimmte Konstruktionen in MQL5 kleine, Snippets genannte Quellcodefragmente einzufügen. Das Einfügen eines Snippets erfolgt durch die Eingabe des entsprechenden Schlüsselwortes.

Automatisches Einsetzen von Funktionsbezeichnungen. Dabei handelt es sich um die Möglichkeit, sich eine Übersicht der Varianten der Bezeichnungen der vorgefertigten wie der benutzerdefinierten Funktionen, Konstanten, Variablen, Klassenmitglieder, Schlüsselwörter usw. anzeigen zu lassen, um sie bei der Programmierung einzusetzen. Die einzusetzende Variante wird durch die Eingabe der ersten Zeichen ermittelt.

Hinweise auf die Funktionsparameter. Diese Möglichkeit entbindet den Programmierer von der Notwendigkeit, beim Schreiben einer Funktion jedes Mal die entsprechende Dokumentation aufrufen zu müssen. Es reicht, beim Programmieren der Funktion eine bestimmte Tastenkombination zu betätigen, um das Bearbeitungsprogramm Hinweise mit den Funktionsparametern und den Parameterarten anzeigen zu lassen.

Verzeichnis der Funktionen. Das Bearbeitungsprogramm ermöglicht die Anzeige aller in der jeweiligen Datei deklarierten Funktionen sowie den schnellen Zugang zu jeder von ihnen.

7.6. Codegestaltung. Die ansehnliche und fehlerfreie Gestaltung des Quellcodes erleichtert dem Programmierer die Arbeit. Ein sorgfältig angelegter Programmcode sieht außerdem professionell aus. Der MetaEditor bietet eine integrierte Codegestaltung. Jeder Code kann mit einem Mausklick in eine gekonnt aussehende Form gebracht werden. Die bei der Codegestaltung angelegten Regeln wurden von professionellen Programmierern mit mehrjähriger Programmiererfahrung entwickelt.

7.7. Codehervorhebung. Gegenüber der vierten Fassung sind die Möglichkeiten zur Hervorhebung unterschiedlicher Bestandteile des Quellcodes (Schlüsselwörter, Funktionsbezeichnungen, Variablen usw.) in MetaEditor 5 erweitert worden. Jeder Anwender kann seine eigene Codehervorhebung gestalten.

7.8. Unterstützung von Unicode. In der Vorgängerversion des Bearbeitungsprogramms wurden Quellcodedateien in Unicode nicht unterstützt. Dadurch kommt es zu Problemen bei der Anzeige und der Übersetzung von Dateien, die Zeichen enthalten, die von der jeweiligen Ländervariante des Betriebssystem nicht unterstützt werden. In MetaEditor 5 wurde dieses Problem vollständig behoben. Mithilfe einer standardmäßigen Funktion des Bearbeitungsprogramms kann jede Quellcodedatei in Unicode gespeichert und anschließend bearbeitet sowie in jede gewünschte Sprache des Betriebssystems übersetzt werden.

7.9. Ressourceneinbindung. Der MetaEditor 5 ist auf die größtmögliche Erleichterung des Programmiervorgangs ausgelegt. Der Routinevorgang zur Einbindung von Ressourcendateien in das Programm wird mit einem einzigen Befehl ausgeführt:

Ressourceneinbindung

7.10. Globale Suche und Einbindung der MQL5.Community. Während der Programmentwicklung muss man stets eine Vielzahl von Informationen greifbar haben. Im MetaEditor wurde dieses Problem durch die Einbindung der MQL5.Community gelöst. Unter den Registerkarten des Werkzeugefensters sind die auf mql5.com veröffentlichten Artikel, Beiträge und Quellcodes übersichtlich zusammengestellt. Zur wirklich effektiven Nutzung aller verfügbaren Informationen benötigt man dennoch ein System für die Suche.

Ein solches globales Suchsystem steht in MetaEditor 5 bereit:

Suchsystem in MetaEditor 5

Sie geben Ihren Suchbegriff in die entsprechende Suchzeile ein, wählen aus, wo gesucht werden soll, und erhalten Ihr Suchergebnis in einer neuen Registerkarte des Werkzeugefensters. Neben der Einzelsuche in dem jeweils aktuellen Dokument, den Dateien, Artikeln und Beiträgen oder der Codebasis kann auch die gesamte Webseite der MQL5.Community durchsucht werden. Sie umfasst Bereiche wie das Forum, die Artikel/Beiträge, die Dokumentation und die Codebasis.

7.11. Fehlerbehebung. Ohne Übertreibung, alle Anwender von MetaEditor 4 haben eine Funktion zur Fehlerbehebung erwartet. Das Vorhandensein der Fehlerbehebung in der fünften Fassung der Plattform hat die Entwicklung von MQL5-Programmen auf eine qualitativ neue Stufe gehoben. Zur Fehlerbehebung stehen jetzt alle bekannten Funktionen zur Verfügung:

Anhaltepunkte. Legen Sie in den Zeilen des Quellcodes „Anhaltepunkte“ an, an denen die Ausführung des Programms zur Untersuchung seines Verhaltens und seines Zustands unterbrochen werden soll.

Ausdrucksüberwachung. Verfolgen Sie während der Fehlerbehebung unter einer eigenen Registerkarte des Werkzeugefensters die Werte beliebiger Ausdrücke.

Aufrufstapel. Beachten Sie während der Fehlerbehebung die aufgelaufenen Aufrufe.

Schrittweise Fehlerbehebung. Verwenden Sie die Befehle zur schrittweisen Fehlerbehebung: Schritt mit Eintritt in die Funktion (Step Into), Schritt unter Umgehung der Funktion (Step Over) und Schritt hinaus (Step Out).

Fehlerbehebung

7.12. Entwürfe. Eine der zahlreichen geplanten Möglichkeiten im MetaEditor 5 ist die Möglichkeit zur Verwaltung von Entwürfen. Dabei wird die Arbeit des Programmierers dank der geordneten Strukturierung seiner Entwicklungen erleichtert.

7.13. Codeprofilierung. Das Vorhandensein der Fehlerbehebung in MetaTrader 5 hat die Arbeit der Programmierer erheblich vereinfacht. Allerdings bietet MetaEditor 5 noch ein weiteres leistungsfähiges Hilfsmittel zur Optimierung des Quellcodes. Die Codeprofilierung ermöglicht die Ermittlung aller Schwachstellen der untersuchten Anwendung.

Codeprofilierung

Bei der Codeprofilierung wird die Ausführungsgeschwindigkeit einzelner Fragmente des Quellcodes des Programms gemessen. Die Messergebnisse werden dem Programmierer sowohl in Bezug auf die einzelnen Funktionen als auch zu einzelnen Zeilen übermittelt. Somit ist es jetzt möglich, die langsamsten Codeabschnitte zu ermitteln und die Arbeit des MQL5-Programms zu optimieren.


8. Die Programmiersprache MQL5

8.1. Größere Geschwindigkeit. Gegenüber MQL4 ist die Ausführungsgeschwindigkeit von Code in MQL5 um das 4- bis 20-fache gestiegen! Die Ausführungsgeschwindigkeit hat fast das Niveau von C++ erreicht, weshalb in MQL5 keine Notwendigkeit mehr besteht, zur Beschleunigung der Berechnungen auf DLLs Dritter zurückzugreifen. Das Fehlen von DLLs steigert seinerseits wiederum die Sicherheit der Anwendungen sowie das Vertrauen in sie.

8.2. Codeschutz. Das Maß der Sicherheit der ausführbaren Dateien von MQL5-Programmen (ex5) hat absolut neue Höhen erreicht. Die Steigerung des Schutzes vor einer Rückübersetzung in lesbaren Text (Dekompilierung) wurde ermöglicht durch folgende Faktoren: neue, aufwendigere Verschlüsselungsalgorithmen, Überprüfung der Unversehrtheit der Dateien (Überprüfung der Datei auf Änderungen nach der Erstellung) sowie die größere Komplexität der Sprache selbst. Auf dem „ Markt“ erhältliche Programme werden noch einmal verschlüsselt und an die Hardware (Computerkonfiguration) des Anwenders gekoppelt, wodurch sie zusätzlich vor Diebstahl geschützt sind.

8.3. Vergleichbarkeit mit C++. Die Syntax von MQL5 ist einer der verbreitetsten Programmiersprachen, C++, sehr ähnlich. Deshalb ist sie leicht zu erlernen, und es fällt nicht schwer, Programme aus anderen modernen Sprachen in sie zu übersetzen. MQL5 ist objektorientiert und ermöglicht die Nutzung aller Vorzüge dieses Programmieransatzes, der Kapselung und Erweiterbarkeit der Arten, der Weitergabe und Nachfolge, der Vielgestaltigkeit (Polymorphie) sowie der Verlagerung und virtueller Funktionen.

8.4. Klassen und Gerüste. In MQL5 kommen vielschichtige oder abstrakte Arten von Daten zum Einsatz: Gerüste (Strukturen) und Klassen. Mit ihrer Hilfe wird nicht nur das Objekt selbst beschrieben, an dem ein Vorgang ausgeführt wird, sondern auch das Verhaltensmodell. Dadurch dass das Objekt selbst auf sein Verhalten reagiert, wird die Programmierungsaufgabe für die Anwender des betreffenden Objekts erheblich erleichtert.

8.5. Ereignisse. In MQL5 ist die Verarbeitung einer Reihe vorgegebener Ereignisses bereits angelegt. In MQL4 gab es derer nur drei, in der 5. Auflage der Sprache können dagegen 13 Arten von Ereignissen verarbeitet werden, darunter die Ereignis der Bereitstellung und der Bereinigung der einer Anwendung, der Empfang eines neuen Ticks, die Änderung der Kursdaten und der Markttiefe, Timer-Ereignisse, Handelsereignisse sowie Ereignisse bei der Prüfung, der Optimierung und der Ausführung von Vorgängen mit Diagrammen.

8.6. Verwaltung von Diagrammen, Objekten und Ressourcen direkt aus MQL5. Unmittelbar aus einem MQL5-Programm können die Eigenschaften eines Diagramms verwaltet und Objekte zum ihm hinzugefügt, geändert oder von ihm entfernt werden. Im Zusammenspiel mit der Möglichkeit der Verarbeitung von Ereignissen der Interaktion zwischen Anwender und Diagramm können grafische Benutzeroberflächen von beliebiger Vielschichtigkeit erzeugt werden.

Außer den bereits im Lieferumfang enthaltenen Objekten können für die Arbeit auch eigene Bild- und Tonressourcen verwendet werden.

8.7. Neue Darstellungsmöglichkeiten für Indikatoren. In MetaTrader 5 wurde die Anzahl der Darstellungsmöglichkeiten für Indikatoren von 6 auf 18 erhöht. Verfügbar sind die Darstellung als Linie, Histogramm, Symbol, gefüllte Fläche, japanische Kerze, Pfeil usf. So sieht etwa ein in einem Unterfenster des Diagramms dargestellter Indikator mit Füllung zwischen zwei Linien aus:

Indikator mit gefüllter Fläche zwischen zwei Linien

8.8. Einfacher Umgang mit Indikatoren. In MQL4 bleibt die Richtung der Kennziffernvergabe in den Indikatorpuffern immer gleich: von den aktuellsten (0) zu ältesten Daten. Dieser Ansatz ist bei der Arbeit mit Indikatoren und Skripten annehmbar. Bei der Entwicklung von Indikatoren ist er jedoch ungeeignet, da sich bei jeder Eröffnung eines neuen Balkens die Kennziffern aller Elemente jeweils um „1“ erhöhen, während am Anfang des Datenfeldes ein neues Element mit der Kennziffer „0“ hinzukommt. In MQL5 wurde dieses Problem durch Ergänzung der Funktion ArraySetAsSeries gelöst, sie ermöglicht die Änderung der Richtung der Kennziffernvergabe in dem Datenfeld.

In MQL5 ist die Anzahl der verwendbaren Indikatorpuffer nicht begrenzt, wogegen in MQL4 höchstens 8 Puffer zum Einsatz kommen können.

In MQL5 besteht zudem die Möglichkeit, Indikatoren zu programmieren, die aus den Werten anderer Indikatoren beruhen. In der vierten Fassung der Plattform konnte ein Indikator nur mithilfe einer bestimmten Wahlmöglichkeit der Benutzeroberfläche des Hauptprogramms auf dem Ausgabegerät auf einen anderen Indikator aufgesetzt werden. In MQL5 kann der Bezeichner (Handle) eines beliebigen Indikators als Eingangsdatenfeld price[] an einen Indikator übergeben werden.

8.9. Umfangreiche Standardbibliothek und zahlreiche Beispiele. Im Lieferumfang von MetaTrader 5 ist eine riesige in MQL5 geschriebene Standardbibliothek enthalten. Sie gewährt einen bequemen Zugriff auf den Großteil der MQL5-Funktionen und erleichtert so das Schreiben von Programmen. Die Standardbibliothek enthält Klassen zur Organisation der Daten sowie für die Arbeit mit Dateien, Zeichenketten, grafischen Objekten, Diagrammen, Indikatoren und Handelsklassen.

Darüber hinaus befinden sich im Lieferumfang von MetaTrader 5 zahlreiche Beispiele für alle Arten von Anwendungen: Expert-Systeme, Indikatoren und Skripte.

8.10. Unterstützung von OpenCL. MQL5 unterstützt OpenCL. Um deren Vorteile in ihrer Gesamtheit nutzen zu können, benötigt man Bibliotheken von Fremdanbietern. Es genügt jedoch die Verwendung der Sonderfunktionen von MQL5. Die Sprache OpenCL ist zur Ausführung von Berechnungen auf Videokarten, die mindestens OpenCL 1.1 unterstützen, bestimmt. Moderne Videokarten enthalten zahllose kleine Spezialprozessoren, die in der Lage sind, mehrere einfache mathematische Operationen an den eingehenden Datenströmen gleichzeitig auszuführen. Die Sprache OpenCL organisiert diese parallel laufenden Berechnungen und trägt bei bestimmten Aufgabenklassen zu einer enormen Beschleunigung der Verarbeitung bei.


9. Dienste für Händler und Entwickler

Ein untrennbarer Bestandteil der Handelsplattform MetaTrader 5 ist die MQL5.Community. In Ergänzung der Webseite, auf der Händler und Entwickler Informationen erhalten und Fragen rund um MetaTrader 5 erörtern können, bietet die MQL5.Community ihren Mitgliedern zahlreiche einzigartige Dienste.

Die MQL5.Community verfügt über ihr eigenes geschütztes System zur Zahlungsabwicklung, das bei allen Zahlungsvorgänge bezüglich der Dienstangebot der Gemeinschaft zum Einsatz kommt. Das Guthaben kann bequem über die bekannten Dienste WebMoney und PayPal sowie über Kredit- und Lastschrift- oder Debitkarten aufgefüllt werden. Abhebungen erfolgen auf ein Konto bei WebMoney oder PayPal. Alle Überweisungen werden über eine sichere verschlüsselte SSL-Verbindung abgewickelt.

9.1. Freie Mitarbeit. Der Dienst Freie Mitarbeit hilft Händlern wie Programmierern. Wenn ein Händler eine Idee für den Handel umsetzen möchte, er jedoch nicht in MQL5 programmieren kann, kann er sich hier stets an professionelle Entwickler wenden. Andererseits bietet sich hier auch für Entwickler eine ausgezeichnete Gelegenheit, aus ihren Kenntnissen Kapital zu schlagen.

Der Dienst bietet Händlern eine übersichtliche Benutzeroberfläche zur Veröffentlichung von Ausschreibungen und zur Auswahl des günstigsten Angebotes oder zur Aufgabe einer Bestellung bei einem bestimmten Entwickler. Die Abwicklung des Auftrags ist in mehrere Etappen jeweils mit Bestätigung unterteilt, wodurch Missverständnisse und Meinungsverschiedenheiten zwischen Auftraggeber und Auftragnehmer vermieden werden sollen.

Der Dienst „Freie Mitarbeit“

In Streitfragen können beide Vertragsparteien ein Schiedsverfahren anstrengen, dessen Durchführung dem Programmentwickler, der MetaQuotes Software Corp., obliegt.

In den zwei Jahren, seit der Einführung des Dienstes wurden etwa 1.300 Auftragsarbeiten ausgeführt.

9.2. Der Markt. Bei dem Dienst Markt handelt es sich um einen offenen und sicheren Platz zum Kauf und Verkauf von MQL5-Anwendungen. Auf den Markt kann online über die Webseite der MQL5.Community oder unmittelbar über das Programm auf dem Ausgabegerät des Anwenders zugegriffen werden. Alle angebotenen Anwendungen verfügen über eine zusätzliche Diebstahlsicherung. Beim Herunterladen wird die betreffende Anwendung mit einer Anbindung an die Einrichtung des Zielcomputers verschlüsselt.

9.3. Der MQL5-Speicher. Der MQL5-Speicher für Quellcodes dient zur versionierten Dateispeicherung sowie zur bequemen Steuerung all Ihrer Vorhaben unmittelbar aus dem MetaEditor. Dank dem MQL5-Speicher haben Sie unter Verwendung Ihres Kontos in der MQL5.Community von jedem Computer aus Zugriff auf Ihre Quellcodes. Bei der Arbeit auf mehreren Rechnern ermöglicht der Speicher die einfache Synchronisierung der Quellcodes, sodass Sie stets mit der aktuellen Version arbeiten.

9.4. Die MQL5-Cloud. Das Netzwerk der MQL5-Cloud ermöglicht die Organisation des Austauschs von Rechenkapazitäten zwischen allen, die sie benötigen und denen, die freie Ressourcen auf ihren Rechnern zur Verfügung stellen können. Durch die MQL5-Cloud kann jeder Händler die Rechenleistung tausender Programminstanzen auf der ganzen Welt nutzen. Die Optimierung, die bei Verwendung nur eines einzelnen Computers einige Jahre in Anspruch genommen hätte, kann jetzt in wenigen Stunden erledigt werden.

9.5. Signale. MetaTrader 5-Handelssignale ist ein Dienst, der es Händlern ermöglicht, die Handelsoperationen eines Signalanbieters zu kopieren. Man kann ein Abonnement abschließen und der Handelsstrategie eines erfahrenen Börsenhändlers folgen. Das Vorgehen ist absolut sicher, jeder Signalanbieter ist in das öffentliche Überwachungssystem eingetragen, in dem ausführliche Angaben zu seinen Handelsaktivitäten einsehbar sind.

MetaTrader 5-Handelssignale

Eine Übersicht über die verfügbaren Handelssignale findet sich sowohl auf der Webseite der MQL5.Community als auch in dem Programm auf dem Ausgabegerät des Anwenders. Abonnements können unter Verwendung eines MQL5.Community Kontos mit Zahlungsfunktion abgeschlossen und mühelos im Profil oder in dem Bereich „Meine Signale“ verwaltet werden.

In der MetaTrader 5-Version auf dem Ausgabegerät kann das Abonnement im Fenster Werkzeuge unter der Registerkarte  Signaleabgeschlossen werden.

Handelssignale unmittelbar in MetaTrader 5

Um ein Signal zu abonnieren, bedarf es keiner Vereinbarung mit dem jeweiligen Anbieter, die gesamte Abwicklung verläuft systemimmanent. Wobei für die Nutzung des Signals keinerlei Gebühren erhoben werden. Nach Abschluss des Abonnements werden die Handelsoperationen des Anbieters quasi unverzüglich in das Konto des Abonnenten kopiert.

Wenn Sie ein erfolgreicher Händler sind und mit Ihren Kenntnissen und Erfahrungen auf dem Börsenparkett Geld verdienen möchten, können Sie sich über die Webseite der MQL5.Community als Anbieter bei dem Dienst „Signale“ anmelden. Ihr Handelskonto wird dann mit dem Überwachungssystem verbunden, in dem auch die ausführlichen Angaben zu ihm angezeigt werden. Das Konto wird in der allgemeinen Übersicht über die verfügbaren Handelssignale auf der Webseite der MQL5.Community sowie unmittelbar in den Arbeitsplatzversionen des Programms angezeigt.

Die Signalüberwachung

Wenn Handelssignale entgeltlich zur Verfügung gestellt werden, wird die Abonnementsgebühr vom Händler auf das interne Rechnungskonto des Anbieters bei der MQL5.Community überwiesen.


9.6. Virtuelles Hosting. Hierbei handelt es sich um einen Dienst zum ununterbrochenen Betrieb der Programminstanz des Anwenders für den automatischen Handel oder das Kopieren von Signalen. Anders als bei der gewöhnlichen VDS- oder VPS-Anmietung von Dritten können Sie hier den Server auswählen, der am wenigsten weit von Ihrem Makler entfernt ist, um die Zeitverluste bei der Auftragserteilung von dem Ausgabegerät an den Handelsserver zu verringern.

Die Anmietung eines virtuellen Ausgabegerätes erfolgt unmittelbar über die Handelsplattform, während die Bezahlung über Ihr Konto bei der MQL5.Community abgewickelt wird.

Anmietung eines virtuellen Ausgabegerätes unmittelbar von der Handelsplattform

Die Anmietung erfolgt in einigen einfachen Schritten, bei denen lediglich der geeignetste Server und der passende Tarif gewählt werden müssen. Danach muss die erforderliche Handelsumgebung auf das virtuelle Ausgabegerät übertragen werden: die Auswahl der Kürzel, Indikatoren und Expert-Systeme sowie die FTP- und E-Mail-Einstellungen und die Einstellungen für die Expert-Systeme und die Signale.

Durch Abruf des Protokolls kann die Arbeit des virtuellen Ausgabegerätes überwacht werden. Ebenfalls einsehbar sind ausführliche Angaben zur Auslastung des Prozessors sowie zum Umfang des belegten Speicherplatzes.

Überwachung des virtuellen Ausgabegerätes


Fazit

In diesem Beitrag haben wir versucht, alle wesentlichen Eigenschaften der Plattform MetaTrader 5 aufzuzeigen. Natürlich ist der Funktionsumfang der Handelsplattform nicht darauf beschränkt. MetaTrader 5 bietet ein breites Spektrum von Instrumenten, die für Händler unerlässlich sind, um auf den Finanzmärkten erfolgreich zu handeln. Zudem sei darauf hingewiesen, dass die Verbesserung der Handelsplattform ständig weitergeht und ihre Möglichkeiten Tag für Tag zunehmen. Wir halten Schritt mit der Entwicklung und verfolgen die Entwicklung der gesamten Branche und tauschen uns mit führenden Börsenmaklern und Maklergesellschaften aus und natürlich auch mit Händlern wie Ihnen.


Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalartikel: https://www.mql5.com/ru/articles/384

Veranschaulichung einer Strategie im Prüfprogramm von MetaTrader 5 Veranschaulichung einer Strategie im Prüfprogramm von MetaTrader 5
Jeder kennt den Spruch: „Ein Bild sagt mehr als tausend Worte.“ Man kann zig Bücher über Paris oder Venedig lesen, aber die geistigen Vorstellungen vermitteln einem nie dasselbe Gefühl wie ein Spaziergang durch die abendlichen Straßen. Der Vorteil der Veranschaulichung oder der grafischen Darstellung lässt sich auf jeden beliebigen Lebensbereich übertragen, auch auf die Arbeit an den Finanzmärkten, zum Beispiel in Form der Analyse der Kurse anhand von Indikatoren auf Diagrammen sowie natürlich in Form der grafischen Darstellung der Überprüfung von Strategien. Dieser Beitrag beinhaltet Beschreibungen aller grafischen Darstellungsmöglichkeiten des Strategieprüfprogramms von MetaTrader 5.
In 6 Schritten zum eigenen automatischen Handelssystem! In 6 Schritten zum eigenen automatischen Handelssystem!
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!
Gewinnbringende Algorithmen mit Trailing Stops Gewinnbringende Algorithmen mit Trailing Stops
Ziel dieses Artikels ist die Untersuchung der Einträglichkeit von Algorithmen mit unterschiedlichen Geschäftsein- und Ausstiegen anhand von automatisch nachgezogenen Verlustgrenzen (Trailing Stops). Die verwendeten Einstiegsarten sind zufälliger (random entry) und gegenläufiger Einstieg (reverse entry) und die verwendeten Stop-Grenzen die nachgezogene Verlust- (Trailing Stop) und die nachgezogene Gewinngrenze (Trailing Take). In dem Beitrag werden gewinnbringende Algorithmen mit einer Jahresertragsrate von etwa 30 % vorgestellt.
Elementare Handelssysteme unter Verwendung von Semaphorindikatoren Elementare Handelssysteme unter Verwendung von Semaphorindikatoren
Wenn wir ein beliebiges vielschichtiges Handelssystem gründlich untersuchen, werden wir feststellen, dass es auf einem Satz einfacher Handelssignale beruht. Deshalb ist es gar nicht erforderlich, das sich Entwickler gleich zu Beginn ihrer Tätigkeit sofort an der Programmierung komplexer Algorithmen versuchen. In diesem Beitrag wird ein Beispiel für ein Handelssystem vorgestellt, das sich zum Abschluss von Geschäften Indikatoren des Typs Semaphor bedient.