MetaTrader 5 Build 3180: Vektoren und Matrizen in MQL5 und verbesserte Nutzerfreundlichkeit

Wir laden alle Händler ein, an den Tests teilzunehmen, um die aktualisierten Funktionen der Plattform zu bewerten und Entwicklern bei der Fehlerbehebung zu helfen

28 Januar 2022

Terminal

  1. Wir laden alle Händler ein, an den Tests teilzunehmen, um die aktualisierten Funktionen der Plattform zu bewerten und Entwicklern bei der Fehlerbehebung zu helfen.

    Diese beiden Aktionen ändern das Chart eines Finanzinstruments in das des ausgewählten Instruments. Zuvor ließen sie das Chart-Fenster nicht aktiv werden. Dementsprechend konnten einige weitere Aktionen, wie das Aufrufen eines Handelsdialogs (F9) oder das Ändern der Skala (+/-) über Hotkeys, fälschlicherweise auf einen anderen Chart aktiv werden. Jetzt wird der Chart, dessen Symbol durch Ziehen verändert wurde, sofort für die weitere Arbeit ausgewählt.

  2. Beim Doppelklick auf einen Handelsvorgang in der Kontohistorie wird nun ein neues Auftragsfenster geöffnet. Ein Finanzinstrument aus dem Vorgang, auf den der Nutzer geklickt hat, wird sofort in den Dialog eingefügt, was einen schnelleren Handel ermöglicht. Ein ähnlicher Befehl wurde dem Kontextmenü hinzugefügt.




  3. Beim Öffnen neuer Charts werden nun auch die realen oder Tick-Volumina angezeigt. Diese Daten sind wichtig für die Analyse des Marktes. Allerdings sind sich nicht alle Händler der Verfügbarkeit dieser Daten auf der Plattform bewusst.

    Echte Handelsvolumina haben eine höhere Priorität. Wenn sie von einem Broker zur Verfügung gestellt werden, ist ihre Anzeige im Chart aktiviert. Andernfalls wird die Anzeige von Tick-Volumen aktiviert.

    Der Mechanismus wird nur verwendet, wenn der Chart mit der Standardvorlage default.tpl geöffnet wird. Volumina werden beim erneuten Öffnen eines Charts nicht mehr aktiviert, wenn ein Nutzer sie manuell in den Chart-Einstellungen deaktiviert hat. Nutzerdefinierte Vorlagen sind davon nicht betroffen.

  4. Die Anzeige der Nutzeroberfläche wurde optimiert und stark beschleunigt.
  5. Die Druckfunktion für Charts, die über das Menü "Datei" aufgerufen wird, wurde verbessert:
    • Fehler beim Speichern der Druckeinstellungen behoben.
    • Verbessertes Erscheinungsbild der gedruckten Seite: Vergrößerte Gitternetzlinien, Entfernung des Programmnamens, aktualisierte Schriftart der Kopfzeile
    • Vergrößerung des Druckdialogs zur korrekten Darstellung der Nutzeroberfläche

  6. Die Funktion des Volumenfelds im Schnellhandelspanel des Charts wurde korrigiert. Vor der Korrektur wurde der Wert auf den vorherigen Wert zurückgesetzt, nachdem ein neuer Wert eingegeben und die Tabulatortaste gedrückt wurde.
  7. Die Anzeige des Handelsverlaufs im Chart wurde korrigiert. Zuvor wurden die Operationen des vorherigen Kontos nicht aus den Charts entfernt, wenn zwischen den Konten gewechselt wurde.
  8. Die Zahlung für MQL5.com über PayPal wurde korrigiert.
  9. Das Einfrieren der Plattform bei der Anzeige eines Options-Volatilitäts-Charts wurde behoben.
  10. Die Überprüfung der Telefonnummer im Fenster für die Registrierung eines Echtgeldkontos wurde korrigiert. In einigen Fällen erlaubte die Plattform einem Nutzer nicht, mit der nächsten Registrierungsphase fortzufahren, nachdem eine korrekte Nummer eingegeben wurde.
  11. Die Überprüfung der Rechte beim Beitritt zu einem Gruppenchat mit MQL5.com-Mitgliedern wurde korrigiert. Zuvor konnte ein neu hinzugekommener Nutzer Nachrichten nur lesen, aber nicht schreiben.
  12. Der Text für im Chart fehlende Daten wurde geändert. Jetzt wird "Waiting for update" durch den Symbolnamen, Zeitrahmen und das Symbol ersetzt.
  13. Verbesserte Unterstützung für negative Preise, die in Build 2450 hinzugefügt wurden. Nullwerte können nun auch für die entsprechenden Market Watch Symbole angezeigt werden.
  14. Die Anzeige von Produktlogos im Market bei der Arbeit unter Wine wurde korrigiert.

MQL5

  1. Wir erweitern die Unterstützung für Vektoren und Matrizen. Die neuen Funktionen erweitern die Möglichkeiten für Entwickler von Lösungen auf Basis neuronaler Netze erheblich.

    Mehrere Funktionen sind derzeit einsatzbereit:
    • Eye — konstruiert eine Matrix mit Einsen auf einer bestimmten Diagonale und Nullen an den anderen Stellen.
    • Identity — konstruiert eine Matrix mit einer bestimmten Größe mit Einsen auf der Hauptdiagonale und Nullen an den anderer Stelle.
    • Ones — konstruiert eine Matrix mit einer bestimmten Größe, die mit Einsen gefüllt ist.
    • Zeroes — konstruiert eine Matrix mit einer bestimmten Größe, die mit Nullen gefüllt ist.
    • Full — konstruiert eine Matrix mit einer bestimmten Größe, die mit anzugebenden Werten gefüllt ist.
    • Copy — konstruiert eine Kopie einer Matrix oder eines Vektors.
    • Diag — extrahiert eine Diagonale aus einer Matrix und füllt die angegebene Diagonale mit Werten aus einem Vektor.
    • Tri — konstruiert eine Matrix mit Einsen auf der angegebenen Diagonale und darunter, und Nullen an den anderen Stellen.
    • Row — gibt eine Matrixzeile als Vektor zurück und füllt die angegebene Zeile mit Werten aus dem Vektor.
    • Col — gibt eine Matrixspalte als Vektor zurück und füllt die angegebene Spalte mit Werten aus dem Vektor.
    • Rows — gibt die Anzahl der Zeilen in einer Matrix zurück.
    • Cols — gibt die Anzahl der Spalten in einer Matrix zurück.
    • Transpose — transponiert eine Matrix.
    • * — Produkt von Matrizen, Vektoren und Skalaren — Punktprodukt.
    • Power — erhöht eine Matrix auf die Potenz.
    • Kron — Kronecker-Produkt.
    • Cholesky — Cholesky-Zerlegung.
    • QR — QR-Faktorisierung einer Matrix.
    • SVD — Singulärzerlegung.
    • LU — LU-Zerlegung einer Matrix.
    • LUP — LUP-Zerlegung einer Matrix.
    • Norm — Berechnung der Matrixnorm.
    • Cond — berechnet die Bedingungszahl einer Matrix.
    • Spectrum — Berechnen des Spektrums einer Matrix.
    • Det — berechnet die Determinante einer Matrix.
    • Rang — berechnet den Rang einer Matrix.
    • SLogDet — berechnet das Vorzeichen und den Basislogarithmus der Determinante einer Matrix.
    • Trace — berechnet die Spur einer Matrix.
    • Solve — löst ein System linearer Gleichungen.
    • LstSq — löst ein System linearer Gleichungen mit der Methode der kleinsten Quadrate.
    • Inv — berechnet die Inverse einer Matrix.
    • PInv — Berechnung der Pseudo-Inverse einer Matrix nach der Moore-Penrose-Methode.
    • Compare — vergleicht zwei Matrizen mit Hilfe von Epsilon.

    Für weitere Details lesen Sie bitte die entsprechende MQL5 Dokumentation.

  2. Fehler beim Umgang mit Dateien und Datenbanken im Zusammenhang mit der Pfadlängenbegrenzung behoben. Insbesondere die Funktion DatabaseOpen erlaubte es, eine Pfadangabe größer als die zulässige Länge zu setzen, was zu einer fehlerhaften Datenbankerstellung führte. Jetzt gibt die Funktion den Fehlercode ERR_TOO_LONG_FILE_NAME korrekt zurück.
  3. Die Kontrolle der const Variablen wurde korrigiert. Zuvor hatte der Compiler den Fehler "Konstante Variable kann nicht als Referenz übergeben werden" gelegentlich nicht ausgeworfen.
  4. Fehlerhafte Compiler-Warnungen über die Verwendung einer nicht initialisierten Variable behoben.
  5. Die Funktion ChartWindowOnDropped für Indikatoren wurde korrigiert. Zuvor gab sie immer Null zurück.
  6. Die Unterstützung von Python 3.10 zum Modul Python Integration wurde hinzugefügt.

VPS

  1. Die Darstellung des VPS-Elements im Navigator wurde korrigiert. Zuvor konnte es gelegentlich verschwinden, wenn zwischen Konten gewechselt wurde.

MetaEditor

  1. Das Entpacken von komplexen Ausdrücken im Beobachtungsfenster des Debuggers wurde korrigiert.

Tester

  1. Der Export von Testberichten in Dateien wurde korrigiert. Einige Werte konnten falsch gerundet werden, wenn eine Währung mit einer Genauigkeit von 0 Dezimalstellen als Einzahlungswährung verwendet wurde. Zum Beispiel: JPY.