MetaTrader 5 Build 3260: Mehrfachoperationen, Matrix- und Vektorfunktionen und Chat-Verbesserungen

Der neue Befehl "Bulk Operations" wurde dem Kontextmenü der Registerkarte "Handel" hinzugefügt. Die Liste der verfügbaren Befehle wird automatisch erstellt, abhängig von der ausgewählten Operation und dem Kontotyp

15 April 2022

Terminal

  1. Befehle für die Massenschließung von Positionen und die Stornierung von schwebenden Aufträgen hinzugefügt.

    Der neue Befehl "Bulk Operations" wurde dem Kontextmenü der Registerkarte "Handel" hinzugefügt. Die Liste der verfügbaren Befehle wird automatisch erstellt, abhängig von der ausgewählten Operation und dem Kontotyp.



    Die folgenden Befehle sind immer im Menü verfügbar:
    • Beim Schließen aller Positionen auf Hedging-Konten versucht das System, Positionen durch entgegengesetzte Positionen zu schließen (Close By), und schließt dann die restlichen Positionen nach einem regulären Verfahren.
    • Schließen aller Positionen im Gewinn oder im Verlust
    • Alle schwebenden Aufträge löschen
    • Löschen aller schwebenden Aufträge bestimmter Typen: Limit, Stop, Stop-Limit

    Wenn Sie eine Position auswählen, erscheinen zusätzliche Befehle im Menü:
    • Alle Positionen dieses Symbols schließen
    • Alle Positionen derselben Richtung schließen (auf Hedging-Konten)
    • Alle entgegengesetzten Positionen desselben Symbols schließen (auf Hedging-Konten)
    • Positionen umkehren (auf Netting-Konten)

    Wenn Sie einen schwebenden Auftrag auswählen, erscheinen zusätzliche Befehle im Menü:
    • Alle schwebenden Aufträge desselben Symbols löschen
    • Alle schwebenden Aufträge desselben Typs für dasselbe Symbol löschen

    Diese Befehle sind nur verfügbar, wenn Sie den Ein-Klick Handel in den Plattformeinstellungen aktiviert haben: Extras \ Optionen \ Handel.
  2. Verbesserte interne Chat-Funktionen:
    • Es wurde die Möglichkeit hinzugefügt, auf Nachrichten zu antworten. Der Quelltext der Nachricht wird in der Antwort zitiert.
    • Es wurde die Möglichkeit hinzugefügt, Nachrichten mit verschiedenen Inhaltstypen zu erstellen, wie z.B. Bilder mit Text und Text mit Anhängen, um nur einige zu nennen.
    • Die Anzeige des Trennzeichens zwischen gelesenen und ungelesenen Nachrichten wurde korrigiert.
    • Fehlerkorrekturen und Stabilitätsverbesserungen.



  3. Optimierte und beschleunigte Ausführung des Grafiksystems des Terminals. Das Rendering der Oberfläche benötigt nun weniger Ressourcen.
  4. Korrektur der Berechnung der täglichen Preisänderungen für Futures. Wenn der Broker einen Clearing-Preis zur Verfügung stellt, wird dieser Preis für die Berechnungen verwendet:
    ((Letzter - Clearing-Preis)/Clearing-Preis)*100
    Eine detaillierte Beschreibung aller Berechnungsarten finden Sie in der Dokumentation.

  5. Fehler bei Kauf von MQL5-Angeboten behoben:
    • Zahlungssysteme konnten unter bestimmten Bedingungen Fehler für erfolgreiche Operationen zurückgeben.
    • Bei Zwischenschritten der Produktvermietung im Markt konnte ein falscher Preis angezeigt werden.

  6. Die Funktion der Schaltfläche "Start" auf der Seite für gekaufte/heruntergeladene Marktprodukte wurde korrigiert. Die Schaltfläche startet die Anwendung nun korrekt auf dem ersten geöffneten Chart.
  7. Die Abrechnung bestimmter Geschäftsarten bei der Erstellung der Positionshistorie wurde korrigiert.

MQL5

  1. Neue Funktionen für die Arbeit mit Matrizen und Vektoren hinzugefügt:
    • Median — gibt den Median der Matrix- oder Vektorelemente zurück
    • Quantile — gibt das q-te Quantil der Matrix/Vektor-Elemente oder der Elemente entlang der angegebenen Achse zurück
    • Percentile — gibt das q-te Perzentil der Matrix-/Vektorelemente oder der Elemente entlang der angegebenen Achse zurück
    • Std — Berechnet die Standardabweichung der Matrix- oder Vektorelemente
    • Var — berechnet die Varianz der Matrix- oder Vektorelemente
    • CorrCoef — berechnet den Korrelationskoeffizienten der Matrix/des Vektors
    • Correlate — berechnet die Kreuzkorrelation von zwei Vektoren
    • Convolve — gibt die diskrete, lineare Faltung von zwei Vektoren zurück
    • Cov — Berechnet die Kovarianzmatrix

  2. Wir haben begonnen, integrierte Methoden für numerische Arrays hinzuzufügen. Die neuen Methoden verbessern die Nutzerfreundlichkeit, erhöhen die Kompaktheit des Codes und verbessern die Kompatibilität des Codes mit anderen Sprachen.

    Die folgenden drei Methoden sind bereits verfügbar:
    • ArgSort — sortiert Arrays nach der angegebenen Dimension; die letzte Methode wird standardmäßig verwendet (axis=-1).
    • Range — gibt die Anzahl der Elemente in der angegebenen Array-Dimension zurück. Analog zu ArrayRange.
    • Size — gibt die Anzahl der Array-Elemente zurück. Analog zu ArraySize.

    Beispiel:
    void OnStart()
      {
       int arr[4][5]=
         {
            {22, 34, 11, 20,  1},
            {10, 36,  2, 12,  5},
            {33, 37, 25, 13,  4},
            {14,  9, 26, 21, 59}
         };
       ulong indexes[4][5];
    //--- Sort the array
       arr.ArgSort(indexes,-1,0);
       Print("indexes");  
       ArrayPrint(indexes);
      }
    
    // Result log:
    // indexes
    //     [,0][,1][,2][,3][,4]
    // [0,]   4   2   3   0   1
    // [1,]   2   4   0   3   1
    // [2,]   4   3   2   0   1
    // [3,]   1   0   3   2   4

  3. Wir haben begonnen, integrierte Methoden für Zeichenketten hinzuzufügen.
    Die folgenden Methoden sind derzeit verfügbar:

    • BufferSize — gibt die Puffergröße zurück, die für die Zeichenkette reserviert ist.
    • Compare — vergleicht zwei Zeichenketten und gibt das Vergleichsergebnis als Ganzzahl zurück.
    • Length — gibt die Anzahl der Zeichen in einer Zeichenkette zurück.
    • Find — sucht nach einer Teilzeichenkette in einer Zeichenkette.
    • Upper — wandelt eine Zeichenfolge in Großbuchstaben um.
    • Lower — wandelt eine Zeichenfolge in Kleinbuchstaben um.
    • Replace — ersetzt eine Teilzeichenkette.
    • Reserve — kehrt den Zugriff auf den Zeichenpuffer um.

    Alle Methoden sind analog zu den String-Funktionen.

    Beispiel:
    void OnStart()
      {
       string test="some string";
       PrintFormat("String length is %d",test.Length());
      }
    
    // Result log:
    // String length is 11
  4. Der Wert SYMBOL_SUBSCRIPTION_DELAY wurde in die Enumeration ENUM_SYMBOL_INFO_INTEGER für die Verzögerung bei der Lieferung von Symbolkursen hinzugefügt.

    Sie wird nur für Abonnement-basierte Handelssymbole verwendet. Die Verzögerung gilt normalerweise für Daten, die im Testmodus bereitgestellt werden.

    Die Eigenschaft kann nur für in der Marktübersicht ausgewählte Symbole angefordert werden. Ansonsten wird er Fehler ERR_MARKET_NOT_SELECTED (4302) zurückgegeben.

  5. Die Eigenschaft ACCOUNT_HEDGE_ALLOWED wurde in die Enumeration ENUM_ACCOUNT_INFO_INTEGER aufgenommen — sie ermöglicht die Eröffnung von gegenläufigen Positionen und schwebenden Aufträgen. Die Eigenschaft wird nur für Hedging-Konten verwendet, um die aufsichtsrechtlichen Anforderungen zu erfüllen, wonach ein Konto keine gegenläufigen Positionen für dasselbe Symbol haben darf, während gleichgerichtete Positionen erlaubt sind.

    Wenn diese Option deaktiviert ist, dürfen Konten keine gegenläufigen Positionen und Aufträge für dasselbe Finanzinstrument haben. Wenn das Konto zum Beispiel eine Kaufposition hat, kann der Nutzer keine Verkaufsposition eröffnen oder einen schwebenden Verkaufsauftrag erteilen. Wenn der Nutzer versucht, eine solche Operation durchzuführen, wird der Fehler TRADE_RETCODE_HEDGE_PROHIBITED zurückgegeben.

  6. Neue Eigenschaften in der ENUM_SYMBOL_INFO_DOUBLE Enumeration:
    • SYMBOL_SWAP_SUNDAY
    • SYMBOL_SWAP_MONDAY
    • SYMBOL_SWAP_TUESDAY
    • SYMBOL_SWAP_WEDNESDAY
    • SYMBOL_SWAP_THURSDAY
    • SYMBOL_SWAP_FRIDAY
    • SYMBOL_SWAP_SATURDAY

    Verwenden Sie die Werte, um Swap-Berechnungssätze für bestimmte Wochentage zu erhalten. 1 — einfacher Swap, 3 — dreifacher Swap, 0 — kein Swap.

  7. Die Ausführung der Funktionen CopyTicks and CopyTicksRange wurde korrigiert. Ein Fehler konnte dazu führen, dass beim Überschreiten von Mitternacht veraltete Daten zurückgegeben wurden. Der Fehler trat auf, wenn keine Ticks für das Finanzinstrument bereitgestellt wurden.
  8. Fehler in den Absturz-Logs behoben.