Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Backtest fuer Dax Index CFD mit Metatrader

Geschrieben

@all,

 

vorab - ich hab keine Metatrader-Kenntnisse. Ein Metatrader-Entwickler bastelt gerade an einer Schnittstelle zw. MT4 und meinem Zen Trading System fuer den Dax Index. Technisch funktiert die Anbindung der DLL auch schon. Jedoch hat auch dieser sich bislang nur mit dem FX-Bereich beschaeftigt und aktuell hapert es noch an den richtigen Einstellungen fuer einen Backtest des reinen HS-Setups eines solchen Dax Index Systems (ohne RM, MM, Transaktionskosten wie Spreads oder Slippage).

 

Gewuenscht ist der Einfachheit halber ein Test des Handels eines CFD Kontrakts (1 CFD = 1 EUR).

 

 

Bislang wurden Standardeinstellungen verwendet. Der StrategyTester spricht von Lot = 0.01, Slippage = 3...?)

 

Das ist das aktuelle Ergebnis:

 

Tag 1 Long bei 7001.5

Tag 2 Short bei 6982 => also -19.5 Dax-Punkte, der ST gibt als Verlust jedoch -62.00 aus

Tag 3 Long bei 6947.5 => also +34.5 Dax-Punkte, der ST gibt als Gewinn jedoch +109.69 aus

 

 

Ziel waere es im ST Report bei -19.5 Dax-Punkten einen Verlust von -19.5 Euro darzustellen etc. etc.

 

Kann jemand weiterhelfen, welche Einstellungen im MT da noetig waren?

 

ciao,

zentrader

Featured Replies

Geschrieben

Was für einen Tickwert, Tickgröße und Kontraktgröße gibt denn der Broker vor ?

Und wird das Konto auch in geführt ?

 

zen.01.png

Geschrieben

Tag 1 Long bei 7001.5

Tag 2 Short bei 6982 => also -19.5 Dax-Punkte, der ST gibt als Verlust jedoch -62.00 aus

Tag 3 Long bei 6947.5 => also +34.5 Dax-Punkte, der ST gibt als Gewinn jedoch +109.69 aus

Das Ganze sieht mir eher nach 0.1 Lot FDAX bei einem in USD geführten Konto aus.

 

Probier mal folgendes:

- Konto (auch im Tester) auf EUR einstellen

- Lotsize auf 0.04 stellen. Falls der Broker keine Mikrolot anbietet, nimm 0.4. Dann hast Du 10 EUR / Punkt.

 

Wenn Du magst, schaue ich mir das Ganze mal per Teamviewer bei Dir an.

Geschrieben

Hi,

 

Tickvalue usw. gibt der Broker vor, die kannst Du nicht ändern. Du kannst aber mit der Marketinfo Funktion alle verwendeten Werte auslesen und dann ggf. in deine gewünschten Grössen umrechnen und Dir an anderer Stelle anzeigen lassen (ST, Bildschirm, Datei).

Schau doch mal in die MQL Hilfe unter Marketinfo.

Geschrieben
  • Autor

@all,

 

super, danke fuer all die Tips.

 

Min. Lot ist in der besagten MT4-Umgebung offensichtlich 0,1 = 2,5 CFD Kontrakte. Die EUR/USD-Umstellung koennte dann den restl. Differenzbetrag in meinem Beispiel oben ausmachen...

 

Wie gesagt - ich selbst kenne MT nur vom "hoeren/sagen". Wollte eigentlich bis MT/MQL5 warten, bis ich mich ernsthaft damit beschaeftige. Aber vielleicht macht es ja Sinn, sich doch noch mit MT4 zu befassen...

 

ciao,

zentrader

Geschrieben
  • Autor

... nachdem die Sache mit den Lots bereinigt war, hat die EUR/USD-Umstellung nun zum gewuenschten Ergebnis gefuehrt. Danke nochmals.

 

Einzige kleine Sache, die noch stoert ist der Spread. Trotz Einstellung "0" macht MT z.B. automatisch 1,5 Punkte fuer einen Trade. Die Frage ist: macht MT immer 1.5 Punkte (beim Dax) oder ist dies willkuerlich? Am besten waere es, wenn man dies verlaesslich (zwischen 0 und n) irgendwo fuer einen wiederholbaren Test einstellen koennte.

 

ciao,

zentrader

Geschrieben

Einzige kleine Sache, die noch stoert ist der Spread. Trotz Einstellung "0" macht MT z.B. automatisch 1,5 Punkte fuer einen Trade. Die Frage ist: macht MT immer 1.5 Punkte (beim Dax) oder ist dies willkuerlich?

Das ist zwar nicht willkürlich, leider wohl auch nicht änderbar. Ist meines Wissens nach irgendwo vom Broker in den Symboleigenschaften hinterlegt.

Geschrieben

MT nimmt immer den aktuellen Livespread. Könntest den aber speichern und MT dann offline starten, dann hast einen festen Spread.

 

 

Geschrieben

MT nimmt immer den aktuellen Livespread. Könntest den aber speichern und MT dann offline starten, dann hast einen festen Spread.

Das ist unter dem folgenden Link in Kapitel 11 und 12 beschrieben:

http://www.metatrader-experts.de/wissen-ueber-metatrader-mql-programmierung-handelssysteme-und-trading/mt4tool/backtest-und-daten.html

 

...
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. Das 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.
...

Geschrieben

MT nimmt immer den aktuellen Livespread. Könntest den aber speichern und MT dann offline starten, dann hast einen festen Spread.

Oder so. Da meine Testumgebung eh nur im offline Modus gestartet wird, wusste ich zumindest, dass ich am Spread nix drehen kann :wink:.

Geschrieben

Am besten waere es, wenn man dies verlaesslich (zwischen 0 und n) irgendwo fuer einen wiederholbaren Test einstellen koennte.

Du kannst den Spread auch einstellen. Da wird's aber recht kompliziert. Funktioniert nur, wenn du dir deine Backtesttickdaten selbst generierts.

Wie das geht ist hier nachzulesen.

Das Prinzip ist folgendes:

*Die Tickdaten liegen im CSV-Format vor

*Über ein Script werden die Daten aus dem CSV-Format in ein fxt-File umgewandelt. Dieses liest MT4 für seinen Backtest ein und beinhaltet auch den Spread

-Der gewünschte Spread kann über das Skript eingestellt werden.

 

Wie aber schon gesagt, das macht man nicht einfach mal so nebenher...

Geschrieben
  • Autor

Vielen Dank!

 

Man sieht, dass MT wohl primaer als Handelsumgebung mit ein wenig Backtest-Zugabe konzipiert wurde. Aber Dank Eurer Tipps wird sich ein Weg finden...

Geschrieben

Es ist glaube ich noch nicht erwähnt worden, wenn der gewünschte Spread zu den Handelszeiten vorhanden ist, MT schnell schließen und die Datei im MT4-Verzeichnis symbols.sel irgendwo sichern. Dort sind die Spreads drin. Dann kann man jederzeit MT4 offline starten (Netzwerkverbindung/Internet trennen für den Startzeitpunkt, sollte man sich nicht vorher bei MT ausgeloggt haben!) und hat den gewünschten Spread.

So kann man sich auch bestimmte symbols.sel - Dateien sammeln und so mit mehreren Spreadhöhen das ganze durchspielen.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.