MetaTrader 5 Build 1375: Time & Sales und Zugang zu Ticks beim Testen

Was ist neu im MetaTrader 5

15 Juli 2016

Terminal

  1. Der Markttiefe wurde die Funktion Time & Sales hinzugefügt.




    Was ist Time & Sales?
    Die Funktion Time & Sales zeigt eine Liste aller Trades in der Echtzeit an, die an der Börse ausgeführt werden. Zu jedem Trade werden Zeit der Ausführung, Richtung (Kauf oder Verkauf), Preis und Volumen angegeben. Für eine bessere visuelle Analyse ist jede Traderichtung mit einer bestimmten Farbe markiert: blau - Kauf, pink - Verkauf, grün - unbestimmte Richtung. Das Tradevolumen wird zusätzlich als Histogramm dargestellt.

    Wie Time & Sales hilft, den Markt zu verstehen
    Time & Sales ermöglicht es Ihnen, Märkte genauer zu analysieren. Nach der Traderichtung kann der Trader erfahren, wer die Ausführung des Trades initiiert hat: Käufer oder Verkäufer. Das Volumen von Trades hilft das Verhalten von Marktteilnehmern zu verstehen: ob es um große oder kleine Player geht, wie aktiv sie sind usw. Die Geschwindigkeit der Ausführung und das Volumen von Trades an bestimmten Preis Levels erlauben es Ihnen, die Bedeutung dieser Levels einzuschätzen.

    Wie die Daten von Time & Sales verwendet werden
    Neben der Möglichkeit, die Tabelle visuell zu analysieren, können Sie Daten von Trades in eine CSV-Datei exportieren. Dann können Sie diese mithilfe von jedem anderen Programm weiter studieren, z.B. MS Excel. Alle Daten werden durch ein Komma voneinander getrennt:
    Time,Bid,Ask,Last,Volume,Type
    2016.07.06 16:05:04.305,89360,89370,89370,4,Buy
    2016.07.06 16:05:04.422,89360,89370,89370,2,Buy
    2016.07.06 16:05:04.422,89360,89370,89370,10,Buy
    2016.07.06 16:05:04.669,89360,89370,89370,1,Buy
    2016.07.06 16:05:05.968,89360,89370,89360,7,Sell
    Um die Daten in eine Datei zu speichern, rufen Sie das Kontextmenü auf:



    Um die Richtung von Trades genau feststellen zu können, muss die Plattform des Brokers auf die Version 1375 aktualisiert werden.
  2. Die Zeit zwischen dem Eingehen eines eines Ticks/einer Veränderung der Markttiefe und dem Aufruf von OnTick und OnCalculate wurde wesentlich reduziert. Das Gleiche gilt für die Zeit zwischen dem Eingehen eines Ereignisses über die Änderung des Handelsstatus und dem Aufruf von OnTrade und OnTradeTransaction. Auf diese Weise werden nun MQL5-Programme schneller auf Marktereignisse reagieren.
  3.  Handelsanfragen werden nun unter Verwendung von einer erweiterten Authentifizierung mithilfe von SSL-Zertifikaten schneller gesendet.
  4.  Die Übersetzung der Benutzeroberfläche in Persisch aktualisiert.
  5. Die Anzeige von Befehlen für das Setzen von SL/TP im Kontextmenü des Charts im Hedge-Modus wurde korrigiert.

Tester

  1. Jetzt kann die Tickhistorie beim Testen mithilfe der CopyTicks Funktion abgerufen werden. Bisher war die Funktion nicht im Strategietster verfügbar.

    • Im Modus "Jeder Tick" liefert die Funktion die Historie der generierten Ticks. Man kann bis zu 128.000 letzte Ticks abrufen.
    • Im Modus "Jeder Tick anhand realer Ticks" liefert die Funktion die Historie realer Ticks. Die Tiefe der angeforderten Daten hängt nur von der Verfügbarkeit dieser Daten ab. Es ist aber zu beachten, dass die letzten 128.000 Ticks im Strategietester zwischengespeichert werden, und relativ schnell abgerufen werden können. Eine tiefere Historie wird unmittelbar von der Festplatte abgerufen, aus diesem Grund wird die Ausführung mehr Zeit in Anspruch nehmen.
    • In den Modi "Nur Eröffnungspreise" und "1 Minute OHLC" funktioniert die Funktion nach wie vor nicht, denn die Tick-Historie wird in diesen Modi nicht generiert.

  2. Unterstützung für Millisekunden hinzugefügt. In den früheren Versionen diente eine Sekunde als Zeitquantum.

    • Nun sind die Funktionen EventSetMillisecondTimer und Sleep im Strategietester noch genauer geworden.
    • Die Genauigkeit beim Senden von Ticks während des Testens von Mehrwährungsexperten wurde verbessert. Wenn eine Sekunde mehrere Ticks enthielt (z.B. das Tickvolumen eines Minutenbalken war größer als 60), wurde bisher für alle Ticks eine und dieselbe Zeit gesetzt. Beim Testen von Experten, die mit einer Währung arbeiten, spielt dies keine Rolle, denn die Ticks werden dem Expert Advisor sequentiell übergeben. Aber beim Testen auf mehreren Währungspaaren ist es wichtig zu wissen, das Tick von welchem Paar zuerst eingegangen ist. Früher wurden die Ticks von jedem Symbol dem Expert Advisor sequentiell übergeben: zuerst alle Ticks pro Sekunde von einem Symbol, danach - von dem anderen. Nun werden sie unter Berücksichtigung von Millisekunden gesendet.

      Beim Testen unter Verwendung von realen Ticks werden Millisekunden den ursprünglichen Tickdaten entnommen. Bei der Generierung von Ticks werden Millisekunden entsprechend dem Tickvolumen gesetzt. Enthält zum Beispiel eine Sekunde drei Ticks, dann wird ihre Zeit in Millisekunden 000, 333 und 666 sein.

  3. Pending Orders und SL/TP Orders werden in den Modi "Nur Eröffnungspreise" und "1 Minute OHLC" zu einem angegebenen und nicht zum aktuellen Preis im Moment der Ausführung ausgeführt. Der Algorithmus der Ausführung zum Marktpreis, der in den präzisen Modi (alle Ticks und reale Ticks) verwendet wird, passt für die groben Modi nicht. In den letzteren Modi werden keine Zwischenticks generiert, und der angegebene Preis kann sich stark vom Marktpreis im Moment der Ausführung (Open oder OHLC) unterscheiden. Die Ausführung von Trades zu einem angegebenen Preis in den Modi "Nur Eröffnungspreise" und "1 Minute OHLC" liefert genauere Testergebnisse.

  4. Unterstützung für Forward-Tests im visuellen Modus hinzugefügt. Für Backtest und Forward-Test werden nun zwei separate Fenster des visuellen Testens geöffnet. Dies erlaubt es, die Ergebnisse des Expert Advisors in verschiedenen Perioden miteinander zu vergleichen.




    Das Fenster des Forward-Testens erscheint nur nach dem Abschluss des Testens in der Hauptperiode.

  5. Auf dem Chart des Testens wird nun statt des Margin Levels die Belastung der Einlage angezeigt, die als die Relation zwischen der Margin und dem Kapital (margin/equity) berechnet wird.


  6. Tester: Berechnung der Kommission als Zinssatz per annum beim Testen korrigiert.

  7. Tester: Neuberechnung und Anzeige des Kontostandes auf dem Chart korrigiert, der im Laufe des Testens erstellt wird.

MQL5

  1. Das Verhalten der Funktion OrderSend wurde beim Platzieren, Modifizieren und Löschen von Orders geändert. Die Änderungen betreffen nur die Orders, die an externe Handelssysteme gesendet werden. In den früheren Versionen wurde die Funktionssteuerung von OrderSend zurückgegeben, nachdem die Order auf dem Server des Brokers erfolgreich platziert (bearbeitet wurde). Nun wird die Steuerung nur dann zurückgegeben, wenn der Server des Brokers eine Benachrichtigung vom externen Handelssystem bekommt, dass die Order erfolgreich platziert wurde.

    Nun wird die Steuerung nur dann zurückgegeben, wenn der Server des Brokers eine Benachrichtigung vom externen Handelssystem bekommt, dass die Order erfolgreich platziert wurde.




  2. Der Struktur des Handelsergebnisses MqlTradeResult wurde das Feld retcode_external hinzugefügt - der Code eines Fehlers im externen Handelssystem. Das Hinzufügen und die Typen dieser Fehler hängen vom Broker und dem externen Handelssystem ab, an welches Transaktionen gesendet werden. Zum Beispiel werden sich die retcode_external Werte, die von der Moskauer Börse ausgefüllt wurden, von denen der DGCX unterscheiden.

  3. Der Aufzählung ENUM_CHART_PROPERTY_STRING wurden die Eigenschaften CHART_EXPERT_NAME und CHART_SCRIPT_NAME hinzugefügt. Nun kann man mithilfe der Funktion ChartGetString den Namen eines Expert Advisors bzw. eines Skripts feststellen, der einem durch den chart_id Parameter definierten Chart angefügt wurde.

Signals

  1. Es wurde ein Fehler behoben, wegen dessen die Close By Transaktionen in einigen Fällen nicht kopiert wurden.
  2. Die automatische Anpassung der Währungspaare, die RUB und RUR enthalten, wurde verbessert.

Market

  1. Die Sortierung nach der Produktkategorie wurde korrigiert.

MetaEditor

  1. Das Setzen des Fokusses auf Textfeld beim Öffnen des Dialogs der Ersetzung wurde korrigiert.
  2. Das Massenersetzen von Text wurde bei der Suche nach oben von der aktuellen Position korrigiert.


Die Dokumentation wurde aktualisiert.