Installation von vollständigen und korrekten Daten für MetaTrader
Der Download historischer Kursdaten in MetaTrader scheint auf den ersten Blick sehr simpel. F2 drücken und Daten runter laden ...
In der Praxis gibt es aber immer wieder große Probleme, die zu zahlreichen Fehlern führen. Dabei wird es von den Systementwicklern oftmals gar nicht gemerkt, dass die Daten falsch sind, denn MetaTrader ist bei solchen Fehlern sehr resistent.
Das Resultat sind unvollständige, falsche und/oder nicht reproduzierbare Backtests. Für die Entwicklung der meisten Handelssysteme sind absolut fehlerfreie Daten jedoch obligatorisch.
Wir werden immer wieder gefragt, warum ein Backtest eines Handelssystems innerhalb weniger Minuten zu unterschiedlichen Ergebnissen führen kann.
Wenn Sie zum Beispiel das System Magic-Champ-II mit fehlerhaften Daten testen, werden Sie ganz andere Ergebnisse erzielen als auf unserer Webseite dargestellt. Das Besondere an diesem System ist beispielsweise, dass es zwar im 5min Chart läuft und tradet, aber Daten aus den Zeitebenen 5min/15min/30min/60min/240min benötigt! In allen Zeitebenen finden Berechnungen hinsichtlich verschiedener Entry und Exit Bedingungen statt. Fehlt auch nur ein einziger Timeframe, oder ist dieser unvollständig, so wird der Backtest dieses Expert-Advisors nicht mehr korrekt sein.
Zahlreiche Fragen rund um die korrekten Einstellungen in MetaTrader und die richtige Vorgehensweise zur Herstellung einer vollständigen Datenhistorie für korrekte Backtests und auch Optimierungen, werden in der nachfolgenden Anleitung beantwortet.
Grundsätzlich gilt:
Wenn Sie Daten vom Server laden, ist es vollkommen egal bei welchem Broker Ihr MetaTrader Account registriert ist. Die Daten werden immer vom Server der Metaquotes Software Corp. geladen. Ob Sie den Backtest also mit FXCM, FxPro oder Alpari durchführen ist irrelevant. Die Daten werden immer die gleichen sein. Das Einzige, was sich unterscheiden wird, ist evtl. der Spread und natürlich die zeitliche Platzierung der Kurse. Unterschiedliche Broker haben ihre Server in unterschiedlichen Zeitzonen stehen, wodurch es erstens zu einer Verschiebung um einige Stunden kommen kann und zweitens werden die Kerzen ab der 4h Kerze evtl. unterschiedlich aussehen. Dies kann natürlich zu anderen Trading-Signalen führen.
Es werden KEINE Tickdaten herunter geladen. Die kleinste Zeiteinheit ist 1min. Es werden also Open/High/Low/Close aus dem 1min Timeframe geladen. Außerdem wird noch das Volumen übermittelt. Wenn Sie einen Backtest durchführen, wird aus dem 1min Daten und dem Volumen eine Tickzahl errechnet, die so hätte auftreten können. Es ist aber nur ein mathematisches Näherungsverfahren, es handelt sich nicht um die tatsächlich aufgetretenen Ticks in der Vergangenheit!
1. Schließen Sie alle Chartfenster in MetaTrader und anschließend MetaTrader selbst!
2. Löschen Sie die vorhandenen Download-Daten des gewünschten Währungspaares.

3. Löschen Sie die Daten, die MetaTrader bereits zu diesem Währungspaar angelegt hat. Achten Sie darauf, dass Sie ALLE Zeitebenen löschen.

4. Starten Sie MetaTrader neu und stellen Sie unter Optionen die Anzahl der Balken in der Historie und auch im Chart (wenn Sie möchten) auf den Maximalwert. MetaTrader wird anschließend automatisch die Anzahl auf das interne Maximum von 2147483647 begrenzen.

5. Öffnen Sie den Chart des entsprechenden Währungspaares, für das Sie die Daten laden möchten.
6. Aktivieren Sie nacheinander ALLE Zeitebenen für dieses Währungspaar. Entweder indem Sie mit der rechten Maustaste in den Chart klicken und jeweils die Periodizität ändern, oder Sie aktivieren die notwendige Toolbar. Dieser Punkt ist wichtig, denn hier legt MetaTrader im Hintergrund die entsprechende Datenstruktur für die Zeitebenen an.

7. Aktivieren Sie das Download-Menü.

8. Laden Sie die Daten des Währungspaares runter, indem Sie die übergeordnete Ebene aktivieren und auf Download klicken. Nicht in den Unterebenen downloaden!

9. Wenn der Download abgeschlossen ist, müssen Sie nur noch in aufsteigender Reihenfolge durch die Zeitebenen klicken.

10. Die Historie sollte nun mit allen, bei Metaquotes Software Corp. vorhandenen Daten, gefüllt sein.

11. Für reproduzierbare Backtests müssen Sie nun noch den Spread "einfrieren".
Sie werden sich fragen: Warum? Ganz einfach, bei jedem Backtest, den Sie durchführen wird MetaTrader genau den Spread verwenden, der im Moment des Starts des Backtests (als Sie den Button Start gedrückt haben) gerade im Markt vorhanden war. Wenn Sie nun beispielsweise einen ECN-Broker mit flexiblem Spread haben, wird Ihr Backtest (von ein und demselben Handelssystem) unter Umständen einmal mit 0.5Pkt Spread durchgeführt und 10min später mit 2,5Pkt Spread!
Die sehr unterschiedlichen Resultate sind damit vorprogrammiert. Dass gleiche gilt im Übrigen für eine Optimierung, denn auch hier wird immer der gerade aktuelle Spread verwendet.

12. Sie müssen sich ausloggen, damit keine neuen Daten mehr geladen werden und dementsprechend auch kein Update des Spreads durchgeführt wird. Löschen Sie Ihr Passwort und loggen sich neu ein. Dadurch wird der Server Sie nicht mehr "akzeptieren" und die Connection wird getrennt.

13. Die Verbindung zum Broker ist gekappt. Sie können nun mit vollständigen Daten und fixem Spread korrekte und reproduzierbare Backtests durchführen.

Fazit: Für den Fall, das man regelmäßig Backtests benötigt, ist es sehr sinnvoll, sich einen separaten Demo-Account anzulegen. In diesen Account lädt man dann in bestimmten Abständen die neuesten Daten ein, die ganze restliche Zeit ist dieser Account aber nicht mit dem Broker verbunden.



