Besonderheiten und Einschränkungen beim Testen von Handelstrategien in MetaTrader 4

MetaQuotes | 5 November, 2015

Einleitung

Dieser Artikel erläutert Besonderheiten und Einschränkungen beim Testen von Handelsstrategien in MetaTrader 4.

Besonderheiten des Strategietesters anhand Historie
  • Einige Funktionen werden ohne Ausgabe abgearbeitet/ ausgelassen

    Dazu gehören Sleep(), Alert(), SendMail(), SpeechText(), PlaySound(), MessageBox(), WindowFind(), WindowHandle() und WindowIsVisible()

  • Man darf nur auf dem Testsymbol handeln, kein Portfoliotest

    Versuche, auf einem fremden Symbol zu handeln, liefern Fehler

  • Die Größe und Schrittweite von Lots, Komission und Swaps werden den Einstellungen des laufenden Kontos entnommen.

    Vor dem Test muss geprüft werden, dass es mindestens ein aktiviertes Konto in der Liste des Navigator-Fenster im Terminal gibt.

  • Alle Swaps, margin requirements, expirations und GTC-Orders werden modelliert.

    Der Test wird unter den einem Handelsserver sehr ähnlichen Bedingungen durchgeführt. In den Währungspaaren können einige Ungenauigkeiten in der Einschätzung von margin requirements vorkommen, weil präzise Informationen über Wechselkurse in jedem Moment nicht vorhanden sind.

  • Der Nullbalken einer anderen Periode für dasselbe Symbol wird ungefähr modelliert.

    Open = korrektes Open, Close = korrektes Close, Low = min (Open,Close), High = max (Open,Close), Volume = endgültiges Volume (inkorrekt)

  • Für Trades wird der Modus Instant Execution nahc laufenden Preisen verwendet.
  • Orders bearbeiten, Öffnen/Schließen ohne Abweichung
  • Der Test endet nach StopOut
  • Wochen-, Monats- und и irreguläre Zeitrahmen werden nicht getestet
  • Die Einzahlungswährung kann man ändern, Wechselkurse werden aber gespeichert; genutzt werden die verfügbaren laufenden
  • Trades werden ohne Verzögerungen getätigt

    Es ist geplant, eine voreinstellbare Verzögerungin die Tradesbearbeitung hinzuzufügen

  • Die Kontohistorie ist verfügbar in vollem Umfang, in Wirklichkeit hängt dies von Einstellungen ab.
  • Wenn andere Symbole und Perioden genutzt werden, sollten sie vorher aus der vollständig verfügbaren Historie heruntergeladen werden
  • Im Modellierungsmodus "Jeder Tick" lädt der Tester alle notwendigen Zeitrahmen des Testsymbols selbst herunter.
  • Die Funktion MarketInfo generiert den Fehler ERR_FUNCTION_NOT_ALLOWED_IN_TESTING_MODE(4059), ausgegeben wird aber eine korrekte Information über laufende Preise des Testsymbols, die Dimension des Stoppniveaus, Punktgröße und Spreadgröße jedes Symbols, das im Fester der Kotierungen vorhanden ist.

Besonderheiten des Optimierers von Handelsstrategien.

  • Ins Journal wird nichts ausgegeben (einschließliche der Funktion Print() )

    Dies wurde getan, um Tests zu beschleunigen und den Speicherplatz zu sparen. Wenn volle Logs ausgegeben werden, können Journaldateien Hunderte Megabytes betragen.

  • Grafische Objekte werden nicht generiert

    Die Objekte werden deaktiviert, um den Testprozess zu beschleunigen.

  • Die Funktion "wertlose Ergebnisse überspringen" wird genutzt

    Negative Ergebnisse können ausgelassen werden, damit sie die Übersicht und die Ergebnisgrafik nicht überladen. Im Kontextmenü "Ergebnisse der Optimierung" -> "wertlose Ergebnisse überspringen" deaktivieren.