von MT4 nach MT5

EA Programmieren anfangen mit MQL4 oder MQL5?

Bei meinem letzten JFD-Webinar am 2.10.2018 wurde ich nach einer Empfehlung gefragt, ob man besser auf MT4 oder gleich auf MT5 das Programmieren von Expert Advisors lernen sollte. Hier meine Antwort.

Die Programmiersprache MQL4 für den MetaTrader 4 ist sehr viel einfacher als die Programmiersprache MQL5 für den MetaTrader 5. Damit eignet sie sich schlicht und ergreifend besser für Programmier-Einsteiger.

Die beiden Sprachen sind weiter voneinander entfernt als es deren Namensgebung erwarten lässt. EAs für MT5 zu programmieren kann man dan als zweiten Schritt lernen, wenn man den Einstieg ins Programmieren durch MT4 EAs geschafft hat.

Ich vergleiche das gerne mit Spanisch und Portugiesisch. Beide Sprachen sind eng miteinander verwandt. Spanisch ist aber viel leichter zu lernen, unter anderem weil die Aussprache sehr nah am geschriebenen Wort liegt. Das kommt dem deutschen Muttersprachler sehr entgegen. Portugiesisch hingegen hat zusätzlich ganz andere Ausspracheregeln, so dass dies zu einem höheren Schwierigkeitsgrad für das Erlernen dieser schönen Sprache führt.

Wenn Sie sich die einfachere Sprache zuerst aneignen, erhalten Sie zunächst das Verständnis für Vokabular und Grammatik. Noch wichtiger: Sie generieren in sich selbst die Fähigkeit, eine Sprache zu lernen. Das erleichtert den nächsten Schritt, eine weitere Sprache zu lernen.

Weil das EA-programmieren in MT5 deutlich schwieriger ist, halte ich es für Programmierneulinge für die überlegene Strategie, zunächst mit MQL4 zu beginnen.

“Wird nicht MT5 den MT4 irgendwann komplett ersetzen?” höre ich als Einwurf immer wieder. Das kann gut sein, wird aber sicherlich sich noch über Jahre hinziehen. Die Firma MetaQuotes, die beide Versionen des MetaTraders entwickelt, hat meines Erachtens sogar ein großes Interesse daran, entweder MT4 langfristig beizubehalten oder aber die Masse an MT4-Programmen für MT5 kompatibel zu machen. Warum?

Über deren Website mql5.com, die deren offizielle Plattform für MT4 und MT5 ist, gibt es tausende von EAs, Indikatoren und Signale für MT4 zu kaufen oder mieten. Die Anzahl der für MT5 verfügbaren Programme ist deutlich niedriger. An jedem Kauf, an jeder Miete und an jedem Abonnement verdient MetaQuotes mit ca. 20% mit.

Würden Sie eine solche Einkommensquelle einfach so abschalten? Wahrscheinlich nicht. Daher werden EAs und Co für MT4 in meiner idealen Welt voll kompatibel werden für MT5. Hinweise dafür gibt es schon:

Im Juni 2018 wurde seitens MetaQuotes bekannt gegeben, dass die in MQL4 verfügbaren Funktionen zum Kursdetail-Abruf (z.B. iTime, iOpen, iHigh, iLow, iClose, iVolume etc.) nun auch in MQL5 verwendet werden können. Das erleichtert das “Übersetzen” von MT4 EAs in MT5 EAs ungemein.

Außerdem seien laut Christian Kämmerer von JFD Brokers noch immer sieben mal mehr Lizenzen für MT4 im Umlauf als für MT5, wie er während unseres gemeinsamen Webinars vom 2.10.2018 erwähnte. Das bedeutet, dass der Umstellungsprozess noch eine ganze Weile dauern wird.

Daher ist es meines Erachtens weiterhin sehr sinnvoll, die Programmiersprache MQL4 für MT4 zu lernen und somit die Chance wahrzunehmen, den einfacheren Weg in die Welt des EA-programmierens zu nehmen.

 Heute ist Anmeldeschluss für Oktober-Kurs

Heute ist Anmeldeschluss für Oktober-Kurs

Übrigens: heute ist Anmeldeschluss für die nächste Ausgabe für unseren MQL4-Intensivkurs - EA-programmieren lernen. Noch ein paar Plätze sind verfügbar, so dass Schnellentschlossene am 29. und 30. Oktober 2018 direkt von mir das EA-Programmieren für MT4 lernen können. Klicken Sie rechts auf die Grafik oder oben auf den Link, um sich vollständig zu informieren und anzumelden.

Ich würde mich freuen, Sie Ende Oktober in Stuttgart zu sehen.

Herzliche Grüße
Cristof Ensslin von mindful FX, Ihr EA-Programmierer

MQL4-Intensivkurs - EA-programmieren lernen

infomiert bleiben:

Datenschutz nach DSGVO. Sie können sich jederzeit aus unserem Email-Verteiler austragen. Powered by ConvertKit

MQL5-Intensivkurs - EA-programmieren lernen

infomiert bleiben:

Datenschutz nach DSGVO. Sie können sich jederzeit aus unserem Email-Verteiler austragen. Powered by ConvertKit

Soll die EA Programmierung auf Basis von MT4 oder MT5 aufgesetzt werden?

Die Firma MetaQuotes, die Ersteller von MetaTrader 4 (MT4) und MetaTrader 5 (MT5), pusht derzeit sehr stark den MT5 voran. Insbesondere auf deren Website mql5.com, die ein Forum und Marktplatz für beide Versionen darstellt und die für EAs und Indikatoren sowohl für MT4 als auch MT5 dient, sieht man teils sehr aggressive Eigen-Werbung für die neuere der beiden Trading-Plattformen.

Gleichzeitig fragen Sie sich vielleicht, wie auch einer meiner Kunden derletzt:

Soll die EA-Programmierung auf Basis von MT4 oder MT5 aufgesetzt werden? Wie lange wird es die Handelsplattform MT4 überhaupt noch geben?

Das sind sehr berechtigte Fragen, egal ob sie die EA-Programmierung selbst oder das Erlernen der MT4-Programmiersprache MQL4 betreffen. Danke hierfür. Es ist immer wieder wert, sich über diese Fragen ausführliche Gedanken zu machen. Immerhin steht teils viel Zeit- und Geldeinsatz auf dem Spiel.

Hier also meine aktuelle Meinung zur "Lage der Nation der EA-Trader".

Aktuell höre ich von Brokern, dass der MT5 sich nicht wirklich durchsetzt. Er hat zwar deutliche Vorteile (z.B. ist er für den Börsenhandel zugelassen) - wenn die Broker oder Trader ihn aber nicht verwenden wollen, bleibt's beim MT4. Es wird sicherlich noch Jahre dauern bis es den MT4 wirklich nicht mehr geben wird.

Mich erinnert das ein bisschen an einen Kampf der Giganten, den ich während meiner Kindheit mit erleben durfte.

In den 80er Jahren gab es den Kampf zwischen VHS und Beta-Tapes um die Vorherrschaft im Videokassetten-Markt. Beta war technisch um Längen voraus, dennoch hat sich VHS durchgesetzt. Warum? Weil VHS viel schneller viel mehr Nutzer gewinnen konnte. Weil es unter anderem darum ging, aufgezeichnete Videos mit anderen zu teilen, wählten Nutzer die Plattform, die unter Freunden beliebter war.

Ähnliches ist meines Erachtens bei MT4 zu beobachten. Für MT4 gibt es schon so viel mehr Code, EAs, Indikatoren etc. Dieser Netzwerkeffekt ist nicht zu unterschätzen, auch wenn MT5 technisch besser ist.

Dazu kommt, dass MQL5 (Programmiersprache für MT5) komplizierter zu verwenden ist als MQL4 (Sprache für MT4). Das bringt mit sich, dass die Programmierung eines EA's für MT5 ca. doppelt so viel kostet wie für MT4. Denn die Programmierung dauert in etwa doppelt so lange.

Eventuell suchen Sie den MT4 zum Download auf von MetaQuotes betriebenen Web-Seiten derzeit vergeblich. Keine Sorge: den MT4 erhalten Sie bei jedem MT4-Broker zum Download. Er kann dann auch für andere Broker verwendet werden, indem Sie einfach Ihre Kontonummer, Ihr Passwort und den Server des anderen Brokers eingeben.

Wenn Sie also noch auf der Suche nach dem MT4 sind, oder aber den meinen Vergleichen nach günstigsten (zumindest für EURUSD und DAX-Future-CFD) MT4-Broker ausprobieren wollen, testen Sie doch mal die von uns oft empfohlene direktbroker-fx (Partnerlink https://www.direktbroker-fx.de/demo-2/?ref=mindful), falls nicht schon geschehen.

Alternativ empfehlen wir seit diesem Jahr auch JFD Brokers, einen progressiven Broker mit bester Technologie für schnellste und besser als erwartete Deal-Ausführungen. Es gibt engste Spreads und niedrige Commissions in über 800 (!) Assets sowie keine Interessenskonflikte, da kein Handelsbuch vorhanden ist, sondern die Orders direkt 1:1 an Liquiditätsprovider weitergeleitet werden. JFD ist mindful FX Partner seit 2018. Partnerlink zum kostenlosen Demokonto: https://www.jfdbrokers.com/de/trading/konto/kontoeroffnung?ib=ensslin

Wenn alles nach mir ginge, würde meine Vision so aussehen, dass MetaQuotes den MT5 vollständig kompatibel zur Programmiersprache MQL4 macht. Das würde die technischen Vorteile des MetaTrader 5 und die leichtere Handhabbarkeit der MT4-Programmiersprache zu einem Dreamteam kombinieren. Wäre das nicht prima?

Ihnen wünsche ich allerbeste, gewinnbringende Trades
Cristof Ensslin von mindful FX, Ihr EA Programmierer

PS: es gibt neue Termine für unseren MQL4-Intensivkurs - EA-programmieren lernen im Mai 2018 in Stuttgart und Hannover - hier klicken, informieren und gleich anmelden!

MQL4 zu MQL5: Äquivalent zu IsTesting()

MQL4 und MQL5 sind unterschiedlicher als viele MetaTrader 4 und 5 Nutzer ahnen. Hier und heute eine noch relativ einfache "Übersetzung" von MT4-Code nach MT5-Code für Expert Advisors (EA's), Skripte und Indikatoren.

Die Funktion bool IsTesting() in MQL4 prüft, ob der EA (oder das Skript oder der Indikator) im Test- oder im Live-Betrieb läuft - unabhängig davon ob wir uns in einem Demo- oder Echtgeldkonto befinden. Die Funktion IsTesting() gibt den Wert TRUE zurück, wenn der EA im Strategietester läuft, FALSE dagegen, wenn sie in einem Chart durchlaufen wird.

In MQL5 ist diese Funktion nicht verfügbar. Was tun? Nicht verzagen, denn die "Übersetzung" ist nahe:

Wir können im MT5-Code die Funktion int MQLInfoInteger(int  property_id) mit Abfrage-Parameter MQL_TESTER nutzen. Also z.B.:

if ( MQLInfoInteger ( MQL_TESTER ) == 1 ) Print ( "EA im Testmodus" );
if ( MQLInfoInteger ( MQL_TESTER ) == 0 ) Print ( "EA im Livebetrieb" );

Viele Grüße,
Ihr EA Programmierer Cristof Ensslin mit dem Team von mindful FX