Was ist neu im MetaTrader 5

Die Aktualisierungen der Plattformen für den Desktop, Mobile und Web

2 Juni 2022
MetaTrader 5 build 3320: Verbesserungen und Korrekturen

Terminal

  1. Erweiterte Tooltips für Handelsobjekte, die auf den Charts angezeigt werden:
    • Die Deals, mit denen aus dem Markt ausgestiegen wurde, zeigen jetzt Gewinne an.
    • Bei Deals, die als Folge einer Take Profit- oder Stop Loss-Aktivierung ausgeführt wurden, wird die entsprechende Anzeige eingeblendet.

    Ähnliche Tooltips sind für die Verbindungslinien zwischen Ein- und Ausstiegs-Deals verfügbar.

    Erweiterte Tooltips für Handelsobjekte


  2. Verbesserte grafische Systemleistung.
  3. Die Protokollierung von Operationen mit offenen Aufträgen und Positionen wurde hinzugefügt. Wenn ein solcher Befehl ausgeführt wird, wird dem Journal ein entsprechender Protokolleintrag hinzugefügt, z. B.: "Massenschließung von XXX Positionen gestartet".
  4. Festgelegte Massenschließung von gegenüberliegenden Positionen.
  5. Die Aktualisierung von Chart-Objekten, die den Handelsverlauf anzeigen, wurde korrigiert. Der Fehler trat beim Ändern des Diagrammsymbols auf.

MQL5

  1. Arbeiten an Matrix- und Vektor-Funktionen sind im Gange: Unterstützung für 'float' und 'complex' wird implementiert.
  2. Der Operator "!" (LNOT) für einen Zeiger prüft dessen Gültigkeit durch einen impliziten Aufruf von CheckPointer. Der Operator "==" sollte für eine schnelle Prüfung auf NULL verwendet werden. Zum Beispiel: ptr==NULL oder ptr!=NULL.

MetaTester

  1. Die Anzeige von Deal-Objekten in Testdiagrammen wurde korrigiert.
  2. Die Leistung des grafischen Systems wurde verbessert.

MetaEditor

  • Aktualisierte UI-Übersetzungen.

Fehler in den Absturz-Logs behoben.

20 Mai 2022
MetaTrader 5 build 3300: Schnelle Kompilierung und verbesserte Code-Navigation im MetaEditor

Terminal

  1. Es wurde die Möglichkeit hinzugefügt, die Größe des grafischen Objekts "Rechteck" durch Ziehen an einer seiner vier Ecken zu ändern.


  2. Schnelleres GUI-Rendering.
  3. Verbesserte Unterstützung für IPv6-Adressen.
  4. Es wurde die Höhenberechnung für das untere Datumsfeld und die Breitenberechnung für das Preisfeld auf der rechten Seite beim ersten Start der Plattform korrigiert.

MQL5

  1. Funktion für die Arbeit mit Matrizen und Vektoren hinzugefügt — RegressionMetric. Sie setzt die Metrik für die Regressionsauswertung.
     double vector.RegressionError(const enum lr_error);
     double matrix.RegressionError(const enum lr_error);
     vector matrix.RegressionError(const enum lr_error,const int axis);
    Die folgenden Variablen können als Metriken verwendet werden:
    enum REGRESSION_ERROR
      {
       REGRESSION_MAE,     // Mittlerer absoluter Fehler
       REGRESSION_MSE,     // Mittlerer quadratischer Fehler
       REGRESSION_RMSE,    // Wurzel des mittleren quadratischen Fehlers
       REGRESSION_R2,      // R-Quadrat
       REGRESSION_MAPE,    // Mittlerer absoluter Fehler in Prozent
       REGRESSION_MSPE,    // Mittlerer quadratischer Fehler in Prozent
       REGRESSION_RMSLE    // Logarithmus der Wurzel des mittleren quadratischen Fehlers
      };
  2. Es wurde die Möglichkeit hinzugefügt, Arrays mit einer Datengröße größer als INT_MAX zu schreiben (Arrays von Strukturen).

MetaEditor

  1. Verbesserungen der Tab-Leiste:
    • Die Leiste wird nicht ausgeblendet, auch wenn nur ein Fenster geöffnet ist. Somit sind die Befehle des Tab-Kontextmenüs für den Nutzer immer sichtbar.
    • Die Schaltfläche "X" zum Schließen wurde zu jedem Tab hinzugefügt. Darüber hinaus können Registerkarten mit der mittleren Maustaste oder über das Kontextmenü geschlossen werden.


  2. Befehl zur schnellen Programmkompilierung hinzugefügt. Dieser Modus überspringt die Code-Optimierung, was die Erstellung einer ausführbaren EX5-Datei erheblich beschleunigt. Verwenden Sie diesen Modus während der aktiven Entwicklungsphase, wenn Sie den geschriebenen Code schnell überprüfen wollen. Schalten Sie während der endgültigen Programmkompilierung den maximalen Optimierungsmodus ein, um die Leistung zu verbessern.


    Der Parameter "Maximale Optimierung" in den Projekteinstellungen erfüllt die gleiche Funktion.

    Alle kompilierungsrelevanten Operationen sind unter dem Menü "Erstellen" verfügbar.

  3. Verbesserungen in der Codeverwaltung:
    • Es wurden getrennte Befehle für das Springen zu Definitionen und zu Deklarationen implementiert. Zuvor hatte das Menü einen Befehl, der ein Auswahl-Untermenü öffnete. Die neuen Befehle ermöglichen einen schnelleren Wechsel zu den benötigten Codeteilen.
    • Erkennung von Schlüsselwörtern durch die Tabulatortaste, zusätzlich zu "Eingabe".




  4. Es wurde die Möglichkeit hinzugefügt, automatisch lokale Variablen in der Beobachtungsliste des Debuggers anzuzeigen. Die Anzeige kann durch den Befehl "Lokal" im Kontextmenü aktiviert werden. Wenn die Debugger-Operation durch den Code fortschreitet, werden die Variablen des aktuellen Bereichs automatisch in der Liste angezeigt.


  5. Verbesserungen der Debugger-Überwachungsliste für Vektoren und Matrizen.
  6. Fixierte Pfade in Projektdateien. Ein Fehler konnte dazu führen, dass Dateien aus Projekten verschwanden.

Tester

  1. Verbessertes Beendigen der Tester-Agenten beim Herunterfahren der Plattform.
  2. Der fünfte MQL5 Cloud Network Knoten wurde hinzugefügt. Er befindet sich in Hongkong. Der neue Knoten beschleunigt die Optimierung von Robotern über das Netzwerk in den nächstgelegenen Regionen.

Fehler in den Absturz-Logs behoben
29 April 2022
MetaTrader 5 build 3280: Verbesserungen und Korrekturen aufgrund von Nutzer-Feedbacks

Terminal

  1. Das Füllen der Standard-Trailing-Stop-Levels im Kontextmenü von offenen Aufträgen und Positionen wurde korrigiert.



  2. Aktualisierte Übersetzungen der Nutzeroberfläche.

Fehler in den Absturz-Logs behoben.
21 April 2022
MetaTrader 5 build 3270: Verbesserungen und Korrekturen

Terminal

  1. Verbesserungen des integrierten Chats.
    • Aktualisiertes Design. Nachrichten werden jetzt ohne umlaufende Blasen angezeigt, um die Anzeige und die Platznutzung zu optimieren. Avatare und Datumstrenner wurden hinzugefügt.
    • Die Befehle Kopieren und Löschen wurden zum Nachrichtenmenü hinzugefügt.
    • Fehlerkorrekturen und Stabilitätsverbesserungen.



  2. Korrektur beim Auftrag zur Mehrfachschließung von Positionen. Auf Konten mit Hedging-Position konnte ein Fehler auftreten.
  3. Die Abrechnung bestimmter Geschäftsarten bei der Erstellung der Positionshistorie wurde korrigiert.

Fehler in den Absturz-Logs behoben.
15 April 2022
MetaTrader 5 Build 3260: Mehrfachoperationen, Matrix- und Vektorfunktionen und Chat-Verbesserungen

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.
11 Februar 2022
MetaTrader 5 Plattform Build 3210: Neue Matrix-Methoden und Kontrolle über Indikator-Minimum/Maximum-Werte

    MQL5

    1. Min, Max, ArgMin, ArgMax und Summenfunktionen für Vektoren und Matrizen hinzugefügt. Verwenden Sie die Funktionen, um die minimalen und maximalen Werte, relevante Indizes und die Summe zu ermitteln.
    2. Unterstützung für Flat-Methoden für die Matrix wurde hinzugefügt. Mit diesen Methoden kann ein Matrizenelement über einen Index anstelle von zwei Indizes angesprochen werden.
      double matrix::Flat(ulong index) const;      // getter
      void matrix::Flat(ulong index,double value); // setter

      Pseudocode zur Berechnung der Adresse eines Matrixelements:

      ulong row=index / mat.Cols();
      ulong col=index % mat.Cols();
      
      mat[row,col]

      Für die "Matrix mat(3,3)" zum Beispiel kann der Zugriff auf die Elemente wie folgt geschrieben werden:

        lesen:        'x=mat.Flat(4)', das 'x=mat[1][1]' entspricht
        schreiben: 'mat.Flat(5, 42)', das 'mat[1][2]=42' entspricht

      Wenn die Funktion mit einem ungültigen Matrixindex aufgerufen wird, wird der kritische Ausführungsfehler OutOfRange ausgeworfen.

    3. Verbesserte Formatierung von Fließkommazahlen in den Eingabeparametern von MQL5-Programmen. Beim Lesen einiger reeller Zahlen wurden Zahlen mit vielen Nullen in den Eingabeparametern ersetzt, z.B. wurde 0.4 als 0.400000000002 dargestellt.
    4. Es wurden Fehler in der Math-Bibliothek Math.mqh behoben. Die Funktion MathSample aus dieser Bibliothek wurde überarbeitet, um dem traditionellen Verhalten ähnlicher mathematischer Bibliotheken beim Sampling mit Backtracking zu entsprechen.
    5. Der CopyTicks/CopyTicksRange-Fehler wurde behoben, der dazu führen konnte, dass beim Überschreiten von Mitternacht veraltete Daten zurückgegeben wurden, wenn keine Ticks für das Finanzinstrument bereitgestellt wurden.
    6. Es wurden die neuen Werte INDICATOR_FIXED_MINIMUM und INDICATOR_FIXED_MAXIMUM in die Enumeration ENUM_CUSTOMIND_PROPERTY_INTEGER aufgenommen.
      Mit Hilfe dieser Eigenschaften können Sie die minimalen und maximalen Indikatorwerte mit der Funktion IndicatorSetInteger fixieren oder wieder aufheben. Beim Aufruf von IndicatorSetInteger(INDICATOR_FIXED_MINIMUM/INDICATOR_FIXED_MAXIMUM, true) wird der aktuelle Minimal- oder Maximalwert verwendet.



    Tester

    1. Überarbeiteter Algorithmus zur Berechnung der Sharpe Ratio, um der traditionellen Formel zu entsprechen, bei der der Wert einem Einjahresintervall entspricht. Der vorherige Algorithmus basierte auf der Variabilität der erzielten PnL und ignorierte Kapitalschwankungen gegenüber offenen Positionen. Jetzt werden die Kapitalschwankungen in die Berechnung einbezogen, während die Sharpe Ratio auf klassische Weise interpretiert wird:
      • Sharpe Ratio < 0              Die Strategie ist unrentabel und nicht geeignet. Schlecht.
      • 0 < Sharpe Ratio  < 1,0   Das Risiko zahlt sich nicht aus. Solche Strategien können in Betracht gezogen werden, wenn es keine Alternativen gibt. Unbestimmt.
      • Sharpe Ratio ≥ 1,0          Wenn die Sharpe Ratio größer als eins ist. Dies kann bedeuten, dass sich das Risiko auszahlt und dass das Portfolio/die Strategie Ergebnisse vorweisen kann. Gut.
      • Sharpe Ratio ≥ 3,0          Ein hoher Wert bedeutet, dass die Wahrscheinlichkeit, bei jedem einzelnen Geschäft einen Verlust zu erleiden, sehr gering ist. Sehr gut.

    Terminal

    1. Optimierter Speicherverbrauch des Terminals.
    2. Verbesserter Plattformbetrieb mit einem Netzwerk-Subsystem, um die Leistung zu steigern und Netzwerkverzögerungen zu reduzieren.
    3. Die Anzeige der Nullebene des Gitters in den Indikatoren wurde entfernt, wenn das Raster-Rendering deaktiviert ist.


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

    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.
    22 Oktober 2021
    MetaTrader 5 Build 3091: Verbesserungen

    Terminal

    1. Das Öffnen einer leeren Seite beim Kauf von MQL5-Diensten wurde behoben. Die Operationsergebnisse werden dem Nutzer jetzt sofort angezeigt.
    2. Die übermäßige Komprimierung von Dokumentenbildern, die Nutzer bei der Anforderung von echten Konten hochladen, wurde behoben. Dies hat die Qualität der automatischen KYC-Prüfungen verbessert und das gesamte Kontoeröffnungsverfahren vereinfacht.
    3. Die Funktion der Grafiken, die nach Abschluss der Prüfung geöffnet werden, wurde korrigiert.

    MQL5

    1. Unterstützung für SQLite 3.36.0 hinzugefügt.

    MetaEditor

    1. Hintergrundhervorhebung für passende Klammern hinzugefügt. Die Option kann in den Allgemeinen Einstellungen von MetaEditor aktiviert werden.
    2. Der Debugger für MQL5 Programme wurde verbessert.

    Fehler in den Absturz-Logs behoben.
    21 Oktober 2021
    MetaTrader 5 build 3090: Verbesserungen und Korrekturen

    Terminal

    1. Es wurde ein Fehler behoben, der dazu führen konnte, dass nutzerdefinierte Symbole unter bestimmten Bedingungen verschwinden konnten.
    2. Verbesserte Menü- und Symbolleistensymbole.
    3. Drei neue Sprachen wurden zu MQL5.com hinzugefügt: Französisch, Italienisch und Türkisch.

      Damit ist die größte Gemeinschaft algorithmischer Händler, die MQL5.community, nun in 11 Sprachen verfügbar. Wir haben bereits die Website-Oberfläche, die Dokumentation und wichtige Forumsthemen lokalisiert. Artikel und Wirtschaftskalender in den neuen Sprachen werden ebenfalls bald verfügbar sein.

    4. Fehler in den Absturz-Logs behoben.

    MQL5

    1. Fehler in der Funktion StringConcatenate behoben.
    2. Das Setzen des Wertes _LastError beim Arbeiten mit der Funktion FileSave wurde korrigiert. Der Variable wurde unter bestimmten Bedingungen Null anstelle des Fehlerwertes für die Beschreibung zugewiesen.
    3. Der Datenimport aus Ressourcen in Arrays vom Typ double wurde korrigiert.

    MetaTester

    1. Es wurde ein Fehler behoben, der zum Einfrieren des Chartfensters während des visuellen Tests führte.
    Die Dokumentation wurde aktualisiert.
    14 Oktober 2021
    MetaTrader 5 build 3081: Verbesserungen der MQL5-Dienste und Design-Updates

    Terminal

    1. Verbesserte Navigation in den Diensten der MQL5.community.

      Die Bereiche Market, Signale und VPS wurden vom Hauptarbeitsbereich der Plattform in den Navigator verschoben. Die neue Positionierung bietet einen einfachen Zugang zu den gewünschten Produkten und ermöglicht eine effiziente Verwaltung der Käufe und der Abonnements. Die Abschnitte "Funktionsweise" wurden zu jedem Dienst hinzugefügt, um die grundlegenden Nutzungsinformationen bereitzustellen.


      Verbesserte Navigation in den Diensten der MQL5.community


    2. Alle Menü- und Symbolleistensymbole wurden komplett neu gestaltet. Die Oberfläche des Terminals wurde benutzerfreundlicher gestaltet:

      • Kleine Elemente wurden aus den Symbolen entfernt.
      • Die Anzahl der verwendeten Farben wurde reduziert, um Farbrauschen zu vermeiden.
      • Es werden weniger Farbverläufe verwendet, um die Lesbarkeit zu verbessern.
      • Es werden direktere Metaphern verwendet.


      Alle Menüs, Symbolleisten und Dialoge wurden auf der Plattform neu gestaltet


    3. Jetzt wurden auch die Kosten, die bei der Ausführung von Geschäften entstehen, angezeigt Die entsprechenden Informationen werden in der Handelshistorie angezeigt. Diese Funktion wird von NFA-regulierten Brokern genutzt.


      Die Kontohistorie zeigt nun auch die Kosten für Deals an>


      Wenn Ihr Broker die Kostenberechnung auf dem Server aktiviert, erscheint die neue Spalte Kosten in der Handelshistorie Ihres Kontos. Die Spalte zeigt die Ausführungskosten des Geschäfts im Verhältnis zum aktuellen Mid-Point-Kurs des Symbols (Mid-Point-Spread-Kosten).

    4. Start der Koreanischen Version von MQL5.com.

      Dies ist die achte Sprache, in der die MQL5.community, der größten Gemeinschaft von algorithmischen Händlern, verfügbar ist. Die Website-Oberfläche, Artikel, der Wirtschaftskalender und wichtige Forumsthemen existieren bereits auf Koreanisch. Die MQL5-Dokumentation wird in Kürze übersetzt werden.

    5. Das Laden von nutzerdefinierten Handelsinstrumenten wurde korrigiert. In einigen Fällen konnten neu erstellte Symboleinstellungen bestehende Symboleinstellungen überschreiben.
    6. Die Anzeige des Signalhandelsverlaufs im Chart wurde korrigiert. Zuvor aktivierte die entsprechende Option die Anzeige ganzen Handels aller Finanzinstrumente und nicht nur für die Chart-Symbole.
    7. Der Export der Gebührenspalte in den Handelsverlaufsbericht wurde hinzugefügt. Zuvor wurden die Werte nur in der Historie angezeigt, konnte aber nicht in einer Datei gespeichert werden.
    8. Optimierte und beschleunigte Funktion der Ein-Klick-Handelsfenster in der Marktübersicht und in den Charts.
    9. Die Funktion des Feldes Margin Raten für nutzerdefinierte Handelsinstrumente wurde korrigiert. Die Werte konnten unter bestimmten Bedingungen auf Null zurückgesetzt werden.
    10. Wir setzen die Implementierung des Abonnementservice fort, über den Händler zusätzliche Handelsdienstleistungen von Brokern kaufen können. Es wurden Fehler im Fenster für Kursabonnements behoben.
    11. Die Darstellung des analytischen Objekts Trendlinie wurde korrigiert. Zuvor konnte die Linie beim Skalieren oder bei der Größenänderung des Chart-Fensters verschwinden.
    12. Die Anzeige des analytischen Objekts "Rechteck" wurde korrigiert. Das Objekt konnte verschwinden, wenn einer der Ankerpunkte außerhalb des Sichtbarkeitsbereichs des Charts lag.
    13. Korrekturen und Geschwindigkeitsverbesserungen in Bezug auf den Betrieb von integrierten MQL5.community Charts.
    14. Die Rundung des Parameters Wert in der Liste der offenen Positionen wurde korrigiert. Die Nachkommastellen konnten in früheren Versionen ausgeblendet werden.
    15. Die Überprüfung des Mobiltelefons während der Kontoeröffnung wurde korrigiert. Bei einigen chinesischen Betreibern konnten Telefonnummern als falsch erkannt werden.
    16. Unterstützung für MQL5-Kontopasswörter mit mehr als 32 Zeichen wurde hinzugefügt.
    17. Der Export von Zertifikaten bei der Arbeit in Wine wurde korrigiert. Diese Option wird für Konten mit erweiterter Authentifizierung verwendet, wenn solche Konten von Desktop auf Mobile migriert werden.
    18. Die Schaltflächen zum Öffnen von MQL5-Diensten im unteren Bereich des Toolbox-Fensters wurden korrigiert. Die Schaltflächen waren inaktiv, wenn das Fenster abgedockt war.
    19. Begrenzung der Größe des Menüs "Datei \ Neues Chart" hinzugefügt Jetzt kann das Menü nicht mehr als 128 Untermenüs mit Symbolgruppen enthalten, die jeweils nicht mehr als 32 Symbole enthalten. Diese Begrenzung beschleunigt die Arbeitsweise des Terminals und verhindert das Einfrieren, wenn eine große Anzahl von Handelssymbolen (2.000 oder mehr) zur Marktübersicht hinzugefügt wird.

    MQL5

    1. Wir erweitern die Unterstützung für Vektoren und Matrizen. Die neuen Funktionen werden die Möglichkeiten für Entwickler von Lösungen auf der Basis neuronaler Netze erheblich erweitern.
    2. Hinzufügen der Werte DEAL_SL und DEAL_TP in der Aufzählung ENUM_DEAL_PROPERTY_DOUBLE — die Stop-Loss- und Take-Profit-Ebenen eines Geschäfts.

      Die relevanten Werte für Einstiegs- und Umkehrgeschäfte werden in Übereinstimmung mit den Stop-Loss/Take-Profit der Orders gesetzt, die diese Geschäfte initiiert haben. Für Exit-Geschäfte werden die Stop-Loss/Take-Profit-Werte der entsprechenden Positionen zum Zeitpunkt der Positionsschließung verwendet.

    3. In der Enumeration ENUM_MQL_INFO_INTEGER wurde der Wert MQL_HANDLES_USED hinzugefügt — die Anzahl der aktiven Klassenobjekte (Handles) in einem MQL-Programm. Dazu gehören sowohl dynamische (über new erzeugte) als auch nicht-dynamische Objekte, globale/lokale Variablen oder Klassenmitglieder. Je mehr Handles ein Programm verwendet, desto mehr Ressourcen verbraucht es.

    4. Neue Methoden für die Arbeit mit der Struktur MqlCalendarValue hinzugefügt, die ein wirtschaftliches Kalenderereignis beschreibt:

      • HasActualValue(void) — gibt true zurück, wenn der aktuelle Wert gesetzt ist, andernfalls wird false zurückgegeben.
      • HasForecastValue(void) — gibt true zurück, wenn der Prognosewert gesetzt ist, andernfalls wird false zurückgegeben.
      • HasPreviousValue(void) — gibt true zurück, wenn der vorherige Wert gesetzt ist, andernfalls wird false zurückgegeben.
      • HasRevisedValue(void) — gibt true zurück, wenn der revidierte Wert gesetzt ist, andernfalls wird false zurückgegeben.
      • GetActualValue(void) — gibt den aktuellen Wert eines Ereignisses zurück (double) oder nan, wenn der entsprechende Wert nicht gesetzt ist.
      • GetForecastValue(void) — gibt den prognostizierten Wert eines Ereignisses zurück (double) oder nan, wenn der entsprechende Wert nicht gesetzt ist.
      • GetPreviousValue(void) — gibt den vorherigen Wert eines Ereignisses (double) oder nan zurück, wenn der entsprechende Wert nicht gesetzt ist.
      • GetRevisedValue(void) — gibt den revidierten Wert eines Ereignisses (double) oder nan zurück, wenn der relevante Wert nicht gesetzt ist.

    5. Das Debugging der MQL5-Programme, die Bibliotheken in Form von EX5-Dateien verwenden, wurde korrigiert.
    6. Beschleunigtes Kompilieren von Programmen, die große Arrays enthalten, die durch eine Sequenz initialisiert werden.
    7. Korrigierte Ausführung der CopyTicksRange Funktion mit nutzerdefinierten Handelssymboldaten. Die Funktion konnte Daten außerhalb des angeforderten Zeitraums zurückgeben.
    8. Die Überprüfung der Verfügbarkeit aller Vorlagen-Parameter während der Spezialisierung durch Parameter wurde korrigiert. Code-Kompilierung mit Debug-Vorlagen konnte unter bestimmten Bedingungen einen "Code-Generierungsfehler" verursachen.

    Signals

    1. Es wurde die Möglichkeit hinzugefügt, Signal-Abonnements automatisch zu erneuern.

      Ihr Abonnement wird nicht abrupt enden, da das System es automatisch für einen weiteren Monat über die Zahlungsmethode verlängert, die Sie zuvor für den ursprünglichen Kauf des Abonnements verwendet haben.


      Aktivieren Sie die automatische Verlängerung für Ihr Signal-Abonnement


      Wenn Sie Ihre vorherige Zahlung mit einer Karte getätigt haben und die Verlängerungszahlung fehlschlägt, versucht das System, eine Zahlung von Ihrem MQL5-Kontostand vorzunehmen.

      Machen Sie sich keine Sorgen über Änderungen der Abonnementpreise. Wenn der Preis steigt, wird die automatische Erneuerung beendet. Sie erhalten dann eine entsprechende Benachrichtigung per E-Mail.

      Sie können die automatische Verlängerung jederzeit über den Bereich Meine Abonnements auf MQL5.com aktivieren oder deaktivieren.


      Verwalten Sie automatische Verlängerungen über den Bereich Meine Abonnements auf MQL5.com


    2. Die Darstellung im Fenster der Signale wurde korrigiert. Jetzt erkennt das System korrekt die Kompatibilität der Signale mit dem aktuellen Konto.

    Market

    1. Hinzufügen der Produktsuche nach dem Namen des Autors und dem Login im Market-Schaufenster. Zuvor unterstützte der Dienst nur die Suche nach Produktname und -beschreibung.

    VPS

    1. Die Option zur automatischen Abonnementverlängerung wurde verbessert.

      Zuvor konnte die Zahlung für die Erneuerung nur aus dem MQL5-Kontostand erfolgen. Der Nutzer musste sicherstellen, dass der entsprechende Betrag auf seinem Konto verfügbar ist.

      Jetzt ist es nicht mehr nötig, das MQL5-Konto aufzuladen. Das System erneuert das Abonnement mit der gleichen Zahlungsmethode, die Sie für das ursprüngliche Abonnement verwendet haben. Wenn Sie für den VPS mit einer Karte bezahlt haben und die Option der automatischen Verlängerung aktiviert haben, wird das System dieselbe Zahlungsmethode für den neuen Abonnementzeitraum verwenden. Wenn die Zahlung fehlschlägt, wird das System versuchen, eine Zahlung von Ihrem MQL5-Kontostand vorzunehmen.


      Verwendung von Kreditkarten und anderen Zahlungsmitteln für die automatische Erneuerung


      Mit dieser neuen Option können Sie sicher sein, dass Ihre Expert Advisors und Signal-Abonnements nicht durch das Ende der VPS-Periode beendet werden. Außerdem müssen Sie Ihr Guthaben nicht mehr manuell überprüfen und aufladen.
      Diese Option wird nur für neue Abonnements verwendet. Zahlungen für die Erneuerung bestehender Abonnements werden vom MQL5-Kontostand vorgenommen.

    Tester

    1. Fehler beim visuellen Testen behoben. Unter bestimmten Bedingungen konnten Charts die in Expert Advisors verwendeten Indikatoren nicht anzeigen.

    MetaEditor

    1. Das Springen zur Funktions- oder Variablendeklaration mit Alt+G wurde behoben. Die Aktion konnte fehlschlagen, wenn die Deklaration unterhalb der Aufrufzeile lag.
    2. Anzeige des Objekttyps für Referenzen auf Klassenobjekte im Debugger hinzugefügt.
    3. Es wurde die Möglichkeit hinzugefügt, eine Union in der Liste der überwachten Ausdrücke anzuzeigen.

    MetaTrader 5 iPhone/iPad, MetaTrader 5 Android

    1. Beim Start der Anwendung wird nun ein Haftungsausschluss angezeigt. Bitte lesen Sie ihn sorgfältig durch. Zusätzlich können einige Broker beim ersten Start der Anwendung automatisch ein Demokonto einrichten. In diesem Fall werden Ihnen die entsprechenden Bedingungen angezeigt.


      In MetaTrader 5 für iPhone/iPad wurden Haftungsausschlüsse hinzugefügt

    2. Es wurde die Möglichkeit hinzugefügt, ein Konto mit der Überwachung im Signal-Service direkt von der mobilen Anwendung aus zu verbinden. Dies kann durch Auswahl von "Kontoüberwachung" aus dem Menü erfolgen. Der Einfachheit halber werden die Kontonummer und der Name des Brokers automatisch in das Registrierungsfenster eingefügt. Zusätzlich sollten Sie den Signalnamen und ein Anlegerpasswort angeben.

      Verbinden Sie Ihr Konto mit der Überwachung, um auf erweiterte Handelsstatistiken zuzugreifen, um die Ergebnisse mit anderen Händlern zu teilen oder um mit dem Verkauf Ihrer Signale zu beginnen.

    3. Unterstützt werden jetzt auch Huawei AppGallery und HMS Services für mobile Endgeräte mit Android OS. Besitzer von Huawei-Smartphones können die App aus dem entsprechenden Store installieren und Push-Benachrichtigungen nutzen.

    Die Dokumentation wurde aktualisiert.

    18 Juni 2021
    MetaTrader 5 build 2980: Push-Benachrichtigungen und Handelsoperationen

    Terminal

    1. Es wurde die Möglichkeit hinzugefügt, Push-Benachrichtigungen direkt vom Server zu empfangen. Sie werden über ausgeführte Handelsoperationen benachrichtigt, auch wenn Ihr Terminal nicht läuft.



      In früheren Versionen konnten Benachrichtigungen nur auf einem mobilen Gerät vom Desktop-Terminal des Händlers übermittelt werden. Bei der Ausführung einer Handelsoperation sendete das Terminal die entsprechende Benachrichtigung an die in den Einstellungen angegebene MetaQuotes-ID. Benachrichtigungen konnten nur von einem laufenden Terminal gesendet werden. Diese Beschränkung wurde aufgehoben. Wenn ein Take-Profit auf dem Server ausgelöst wird, während Ihr Computer ausgeschaltet ist, erhalten Sie jetzt eine Benachrichtigung über die geschlossene Position direkt vom Server.

      Um Benachrichtigungen vom Server zu erhalten, sollten Sie:
      • ein Echt-Geldkonto haben, da die Benachrichtigungen vom Server für Demokonten nicht funktionieren,
      • MetaTrader 5 für iOS oder Android auf Ihrem Smartphone installiert haben,
      • Ihre MetaQuotes ID, die Sie im mobilen Terminal den Bereich "Nachrichten" finden, in den Einstellungen des Desktop-Terminals eingegeben haben,
      • die Server-Benachrichtigungen in den Einstellungen des Desktop-Terminals aktiviert haben.

      Die Verfügbarkeit von Server-Benachrichtigungen sollte von Ihrem Broker bereitgestellt werden.

      Es werden drei Benachrichtigungstypen unterstützt: Aufträge, Deals und Überweisungen. Wenn Sie die Option aktivieren, werden die verfügbaren Benachrichtigungstypen im Terminalprotokoll angezeigt:
      '1222': abonniert für Deals, Orders, Salden-Benachrichtigungen vom Handelsserver.

    2. Aktualisierte Präsentation der MetaTrader VPS. Der VPS-Bereich ist komfortabler geworden:
      • Die Oberfläche passt sich an jede Bildschirmbreite an.
      • Die Darstellung nimmt vertikal weniger Platz ein, um in den Arbeitsbereich zu passen.
      • Die notwendigen Informationen erscheinen nur dann, wenn sie benötigt werden. Zahlungsdetails erscheinen erst, nachdem Sie eine Zahlungsmethode ausgewählt haben.



      Im Panel "Strategy Tester" wurden Befehle zum schnellen Umschalten auf MQL5-Dienste und zum Fenster "Toolbox" hinzugefügt. Die Befehle werden nur im Bereich Übersicht angezeigt, während in anderen Registerkarten das Panel zur Verwaltung der Tests verwendet wird.




    3. Speichern von Fensterzuständen für MQL5-Dienste hinzugefügt. Wenn Sie das Fenster des Market offen lassen, bevor Sie das Terminal schließen, ist das entsprechende Fenster auch beim nächsten Start des Terminals offen.
    4. Die periodische Synchronisation des MQL5-Kontostandes wurde korrigiert. Das Kopieren von Signalen konnte unter bestimmten Bedingungen aufgrund eines Fehlers fehlschlagen.
    5. Korrigierte Anzeige einer Auswahl von empfohlenen Market-Produkten.
    6. Korrigiertes Signal-Kontextmenü im Navigator. Sie können das Menü verwenden, um das Signal anzuzeigen, bei dem Sie abonniert sind, oder um ein Signal abzubestellen.

    MQL5

    1. Der Implementationsfehler des Operators "-" bei komplexen Zahlen in der Standardbibliothek (Datei MQL5\Include\Math\Alglib\complex.mqh) wurde behoben.
    2. Sie können jetzt beliebige Ausdrücke in Initialisierungssequenzen verwenden, nicht nur konstante Ausdrücke. Dies verbessert die Nutzerfreundlichkeit und die Kompatibilität mit C++.
      struct POINT
        {
         int x,y;
        };
      
      int GetYFunc(y)
        {
         return(y * y);
        }
      
      void SomeFunction(int x1,int x2,int y)
        {
         POINT pt={ x1+x2, GetYFunc(y) };
         ProcessPoint(pt);
        };
    3. Es wurde ein Fehler behoben, der beim Kompilieren einer union mit großen Datenarrays auftrat.
    4. Die Ausführung der Funktion StringToCharArray wurde korrigiert. Sie wandelt jetzt die gesamte übergebene Zeichenkette in ein Char-Array um, anstatt beim ersten abschließenden Nullzeichen aufzuhören.
    5. Es wurde eine Kontrolle für das explizite Vorhandensein eines Konstruktoraufrufs für Klassen/Strukturen hinzugefügt, wenn deren Elternklasse keinen Standardkonstruktor hat.

    MetaEditor

    1. Es wurde die Anzeige einer Aufrufstelle für Inline-Funktionen im Bericht des Profiler hinzugefügt.
      Im folgenden Beispiel wird der Aufruf von func(); jetzt wie folgt hervorgehoben:



      Die Funktion func selbst ist nicht hervorgehoben, da ihr vollständiger Code sich in OnStart befindet.

    2. Es wurde die Möglichkeit hinzugefügt, leere Projekte zu erstellen. Dies ist eine nützliche Funktion für nicht standardmäßige Entwicklungsprojekte mit spezifischen Dateistrukturen, für die die Standardvorlagen nicht geeignet sind.



      In diesem Fall wird eine leere Einstellungsdatei "mqproj" erstellt. Die Quellcode-Dateien sollten manuell erstellt werden.

    3. Schnelleres Starten von MetaEditor implementiert.
    4. Die Datenanzeige in der Liste der beobachteten Ausdrücke während des Debugging wurde korrigiert. Die Liste konnte unter bestimmten Bedingungen falsche Variablenwerte anzeigen.
    5. Das automatische Hinzufügen der Erweiterung ".py" zu Python-Skriptdateien, die mit dem MQL-Assistenten erstellt wurden, wurde korrigiert.
    Die Dokumentation wurde aktualisiert.


    21 Mai 2021
    MetaTrader 5 Build 2940: Platzierung der Angebote der MQL5 Dienste im Hauptarbeitsbereich und ein aktualisiertes Design

    Terminal

    1. Handelsdienste, einschließlich Market, Signale und Virtuelles Hosting werden jetzt übersichtlich im Hauptarbeitsbereich der Plattform angezeigt.
      In früheren Versionen befanden sich die Einkaufsbereiche für MQL5 Services im kleinen Toolbox-Fenster unterhalb des Hauptfensters. Die neue Platzierung ermöglicht die Anzeige der voll ausgestatteten Auslage mit komfortablen Kaufoptionen. Unnötige Registerkarten aus dem unteren Bereich wurden entfernt, um so mehr Platz für andere Plattformfunktionen zu schaffen.




      Der Zugriff auf zusätzliche Dienste beeinträchtigt nicht die Hauptfunktionen, wie den Handel und die Chart-Analyse.
      • Die Registerkarten der Dienste befinden sich am Ende des Balkens, nach allen Registerkarten der Charts.
      • Nicht verwendete Servicefenster können geschlossen werden. Um sie wieder zu öffnen, verwenden Sie den Navigator, die Symbolleiste oder das Menü "Dienste".

      Außerdem haben wir die Dienste komplett neu gestaltet. Das Design ist eleganter und leichter geworden. Die Signale enthalten zusätzliche Daten, die bisher nur über die Auslage auf der Website der MQL5.community verfügbar waren: ein Polardiagramm mit den wichtigsten Merkmalen, Zuverlässigkeits- und Aktivitätsmetriken und andere Variablen.




    2. Hinzugefügt wurde die Unterstützung für IPv6-Adressen.
      IPv4, das in jedem Netzwerk verwendet wird, wurde vor mehr als 30 Jahren geschaffen. Es enthält IP-Adressen von 32 Bit, die als vier durch Punkte getrennte 8-Bit-Zahlen dargestellt werden. Dieser Algorithmus erzeugt mehr als vier Milliarden eindeutige IP-Adressen. Die schnell wachsende Zahl von Benutzern und Geräten hat jedoch die Erschöpfung des Pools an verfügbaren Adressen beschleunigt.

      Um das Erschöpfungsproblem zu vermeiden, bieten einige Produkte zusätzliche Unterstützung für den modernen IPv6-Standard. Dieses Protokoll verwendet eine 128-Bit-Adresse, dargestellt als x:x:x:x:x:x:x:x, wobei jedes x ein hexadezimaler Wert aus sechs 16-Bit-Adressbestandteilen ist. Theoretisch erlaubt dieses Format 5 x 10 ^ 28 eindeutige Adressen. Neben einem umfangreichen Adressraum hat dieses Protokoll weitere Vorteile gegenüber der älteren Version. Weitere Details entnehmen Sie bitte entsprechenden Fachartikeln.

      Die MetaTrader 5 Plattform ist vollständig IPv6-fähig. Wenn Ihr Broker oder Provider auf das neue Protokoll umsteigt, wird die Unterstützung des Protokolls nahtlos in der Plattform aktiviert, ohne dass zusätzliche Maßnahmen Ihrerseits erforderlich sind.

    3. Wir setzen die Implementierung der Task-Manager-Funktionalität fort, die in Build 2815 bereits vorgestellt wurde. Wir haben eine explizite Anzeige für Charts hinzugefügt, auf denen MQL-Programm-Debugging oder Profiling läuft.




    4. Implementiert wurde ein schnelleres Starten der Plattform auf Rechnern mit Wine für macOS und Linux. Allgemeine Optimierung und Fehlerkorrekturen:
      • Verbesserte Darstellung von Menüs, Symbolleisten und Dialogfeldern.
      • Fehlerbereinigung bei der Darstellung der Bereiche "Market", "Signale" und "VPS". Insbesondere wurde das Laden von Produktlogos in der "Markt"-Anzeige behoben.
      • Aktualisiertes DMG-Paket für die einfache Installation von MetaTrader 5 auf macOS-Rechnern. Mit diesem Paket kann die Plattform ähnlich wie jede andere Anwendung installiert werden: ziehen Sie das Plattform-Symbol auf Programme und warten Sie, bis die Installation abgeschlossen ist.
        Das Paket enthält zusätzliche Komponenten, die einen stabileren und schnelleren Betrieb ermöglichen. Allen Nutzern des Pakets wird dringend empfohlen, MetaTrader 5 neu zu installieren, indem sie die neueste Version von https://download.mql5.com/cdn/web/metaquotes.software.corp/mt5/MetaTrader5.dmg
        herunterladen.
      Wenn Sie CrossOver verwenden, installieren Sie bitte MetaTrader 5 komplett neu, um die aktuelle 64-Bit-Plattformversion zu erhalten.
    5. Das Tastaturkürzel "Strg+F9" wurde korrigiert. Sie aktiviert die Registerkarte "Handel" in der Toolbox.

    MQL5

    1. Wir schränken weiterhin die Verbreitung älterer Technologien ein, einschließlich der 32-Bit-Komponenten.
      • 32-Bit-Terminals dürfen keine Programme mehr aus dem Markt herunterladen.
      • 32-Bit-Terminals können sich nicht mit dem Hosting-Service verbinden.
      • Die 32-Bit-Version von MetaEditor unterstützt keinen zusätzlichen Dateischutz über MQL5 Cloud Protector.
      • MQL5-Programme, die unter alten MetaEditor-Versionen (vor 5 Jahren oder mehr veröffentlicht) kompiliert wurden, können in der neuen Terminalversion nicht ausgeführt werden.

      Die Unterstützung für die 32-Bit-Plattformversion wurde vor einem Jahr, nach der Veröffentlichung von Build 2361, eingestellt. Wir empfehlen dringend, auf die 64-Bit-Version von MetaTrader 5 umzusteigen, um alle Funktionen der Plattform ohne Einschränkung nutzen zu können.
      Außerdem empfehlen wir allen Verkäufern, die bisher 32-Bit Produktversionen auf den Markt hochgeladen haben, diese mit dem neuesten 64-Bit MetaEditor neu zu kompilieren und die neuen Versionen hochzuladen. Die Möglichkeit, 32-Bit-MQL5-Programme in Terminals laufen zu lassen, wird in Kürze komplett deaktiviert werden.
    2. Hinzugefügt wurde die Unterstützung der Operationen mit komplexen Zahlen.
      Der neuen integrierte Typ "complex" wurde hinzugefügt.
      struct complex
        {
         double             real;   // reeler Teile
         double             imag;   // imaginärer Teil
        };
      Der Typ "complex" kann als Parameter für MQL5-Funktionen per Wert übergeben werden (im Gegensatz zu normalen Strukturen, die nur per Referenz übergeben werden). Bei Funktionen, die aus DLLs importiert werden, muss der Typ "complex" ausschließlich als Referenz übergeben werden.

      Das Suffix 'i' wird verwendet, um komplexe Konstanten zu kennzeichnen:
      complex square(complex c)
        {
         return(c*c);
        }
        
      void OnStart()
        {
         Print(square(1+2i));  // Die Übergaben einer Konstanten als Parameter
        }
      
      // ausgegeben wird "(-3,4)", die komplexe Zahl in Textform
      Für komplexe Zahlen sind derzeit nur einfache Operationen verfügbar: =, +, -, *, /, +=, -=, *=, /=, ==,!=.

      Später wird die Unterstützung weiterer mathematischer Funktionen hinzukommen, die die Berechnung von Absolutwert, Sinus, Cosinus und anderen ermöglichen.

    3. Neuer Fehlercode TRADE_RETCODE_HEDGE_PROHIBITED — das Öffnen einer Position oder das Platzieren einer Pending Order ist nicht erlaubt, wenn Hedge-Positionen verboten sind. Der Fehler wird zurückgegeben, wenn ein Nutzer versucht, eine Handelsoperation auszuführen, wenn das Hedging für das Konto deaktiviert ist und bereits eine entgegengesetzte Order oder Position für dasselbe Symbol existiert.

    MetaEditor

    1. Fehler im Falle eines Abbruchs von Debugging und Profiling im nicht-visuellen Modus wurde korrigiert.
    2. Das Profiling von Indikatoren mit realen Daten wurde korrigiert. Dieses Profiling konnte unter bestimmten Bedingungen nicht gestartet werden.

    VPS

    1. Die Umgebung der Migration auf einen VPS wurde korrigiert. Bei Expert Advisors, die Indikatoren als Ressourcen enthalten, konnte ein Fehler auftreten.

    Signale

    1. Korrigiert wurde die Prüfung des Handelsmodus von kopierten Signale. Der Symbolhandel kann von der Brokerseite eingeschränkt werden, d.h. der Broker kann Bedingungen für "nur long", "nur short" oder "nur close" setzen. In früheren Versionen erforderte die Synchronisation volle Handelsbedingungen, so dass das Kopieren nicht in allen anderen Fällen erlaubt war. Nach dem Update werden teilweise eingeschränkte Bedingungen als "Handel" betrachtet. Diese Fähigkeit wird besonders für Kunden von Börsenmaklern nützlich sein, die Signale kopieren möchten.

    Tester

    1. Prüfungen der Handelssitzung während des Testens korrigiert. Die Ausführung von Handelsoperationen konnte während des Testens unter bestimmten Bedingungen fehlschlagen. In diesem Fall wurde der Fehler "Markt geschlossen" zurückgegeben, auch wenn die Operation innerhalb einer Handelssitzung initiiert worden war.
    Aktualisierte Dokumentation.


    2 April 2021
    MetaTrader 5 build 2875: Verbesserungen und Korrekturen

    Terminal

    1. Es wurde ein Fehler behoben, der dazu führte, dass aktualisierte MQL5-Standardprogramme in das Stammdatenverzeichnis des Terminals statt in das MQL5-Unterverzeichnis kopiert wurden. Aufgrund dieses Fehlers konnten zusätzliche "Experts", "Images", "Include" und andere Ordner unter dem Datenverzeichnis angelegt werden.

      Nach dem Plattform-Update werden diese Ordner überprüft und automatisch gelöscht.

    Terminal

    1. Es wurde ein Fehler behoben, der dazu führte, dass sich Nutzer nicht in den integrierten MQL5.community-Chat einloggen konnten.
    2. Tester: Die Optimierung von Expert Advisors über das MQL5 Cloud Network wurde korrigiert. Die Optimierung konnte unter bestimmten Bedingungen nicht starten.

    MetaEditor

    1. Fehler und Abstürze beim Debuggen und Profilieren von MQL5-Programmen behoben.
    Aktualisierte Dokumentation.
    26 März 2021
    MetaTrader 5 build 2860: Verbesserungen für Wine und SQL-Integrationserweiterungen

    Terminal

    1. Es wurde die Möglichkeit hinzugefügt, zusätzliche MQL5.community-Dienste zu aktivieren/deaktivieren. Wenn Sie z. B. nicht an MQL5-Programmierartikeln oder den Diensten der Signale für die Copy-Trading-Funktionen interessiert sind, können Sie den entsprechenden Bereich deaktivieren, um Ressourcen und Terminal-Arbeitsbereich zu optimieren.



      Standardmäßig sind alle Dienste aktiviert.

    2. Wir haben den Terminalbetrieb unter Wine auf macOS und Linux deutlich optimiert:
      • Abgedockte Dienstfenster (Navigator, Toolbox) können jetzt nicht mehr über die Terminalgrenzen hinaus gezogen werden. Zuvor konnte dies zu Schwierigkeiten beim Zurückziehen von Fenstern in das Terminal führen.
      • Die Größenänderung des Fensterinhalts von Diensten beim Ändern der Fenstergröße wurde behoben.
      • Die Anzeige von Leistungsmetriken im Task-Manager wurde korrigiert.
      • Verbesserte Anzeige von Symbolen in der Symbolleiste.
      • Zähler für ungelesene Nachrichten in Chats korrigiert.
      • Korrigierte Anzeige von Chartsystembefehlen: Ausblenden, Erweitern und Schließen.
      • Korrigierte Log-Anzeige.
      • Die Darstellung der Tooltips in den Charts wurde korrigiert.
      • Die Druckbefehle für die Charts wurde korrigiert.
      • Korrigierte Anzeige des oberen Menüs bei Verwendung von Linux-Skins.
      • Korrigiert wurde die Suche in GitHub, MSDN und Stack Overflow im MetaEditor.

      Wir empfehlen allen Nutzern, Wine auf die letzte stabile Version zu aktualisieren. Dies wird die Leistung und Zuverlässigkeit der Plattform erhöhen.
    3. Unterstützung für Aufträge der Art "Market To Limit" beim Handel auf BORSA Istanbul wurde hinzugefügt. Ein solcher Auftrag wird zunächst als Markt-Order ausgeführt. Wenn die Liquidität nicht ausreicht, wird das verbleibende Volumen als Limit-Order mit dem Preis des letzten Geschäfts in das Orderbuch aufgenommen.
    4. Die Anzeige des Volatilitäts-Charts wurde korrigiert. Der Chart wird jetzt entsprechend dem auf dem Optionsboard gewählten Verfallsdatum aufgebaut.
    5. Das Hinzufügen von Handelsinstrumenten zur Markttiefe über die Schnellsuchleiste wurde korrigiert. Wenn der Symbolname ein Leerzeichen enthält, wird dieses Symbol nicht zur Liste hinzugefügt.


    MQL5

    1. Erweiterte Möglichkeiten für die Arbeit mit SQL-Datenbanken. Abfragen unterstützen jetzt eine Vielzahl von statistischen und mathematischen Funktionen.

      Statistikfunktionen
      • mode
      • median (50. Perzentil)
      • percentile_25
      • percentile_75
      • percentile_90
      • percentile_95
      • percentile_99
      • stddev oder stddev_samp — Standardabweichung der Stichprobe
      • stddev_pop — Standardabweichung der Grundgesamtheit
      • variance or var_samp — Varianz der Stichprobe
      • var_pop — Varianz der Grundgesamtheit

      Mathematische Funktionen

      Beispiel
      select
        count(*) as book_count,
        cast(avg(parent) as integer) as mean,
        cast(median(parent) as integer) as median,
        mode(parent) as mode,
        percentile_90(parent) as p90,
        percentile_95(parent) as p95,
        percentile_99(parent) as p99
      from moz_bookmarks;
    2. Neue Makros wurden integriert:
      • __COUNTER__ — erhöht sich um Eins bei jedem Aufruf. Bei Verwendung in Vorlagen (templates) und Makros werden separate Zähler bereitgestellt.
      • __RANDOM__ — erzeugt eine zufällige ulong-Zahl; sie ist ein Analogon der Funktion MathRand.

    3. Die Bedienung von synchronen Chart-Abfragen in Fällen, in denen das Chart-Symbol nicht vorhanden ist, wurde korrigiert. Jetzt geben die Funktionen einen entsprechenden Fehler zurück, anstatt unendlich lange auf ein Ergebnis zu warten. Durch das Umschalten zwischen Handelskonten mit unterschiedlichen Sets von Handelsinstrumenten konnte ein Problem durch ein nicht existierendes Symbol entstehen.
    4. Optimierte und beschleunigte Funktionen von CopyTicks*.

    MetaEditor

    1. Geänderte Reihenfolge beim Profiling und Debugging anhand historischer Daten.

      Profiling läuft jetzt immer im nicht-visuellen Modus. Das Standard-Debugging läuft ebenfalls im nicht-visuellen Modus. Die entsprechende Option kann manuell in den MetaEditor-Einstellungen aktiviert werden:




    2. Hinzugefügt wurde die Möglichkeit des Profiling von Diensten. Der Prozess ist ähnlich dem für andere MQL5-Programme
    3. Die Anzeige von Funktionsnamen im Profiler-Bericht wurde korrigiert. Unter bestimmten Bedingungen konnten die Namen als <unknown> angegeben werden.

    Die Dokumentation wurde aktualisiert.

    26 Februar 2021
    MetaTrader 5 build 2815: Zugriff auf die Markttiefe von Python, überarbeiteter Debugger und Verbesserungen des Profilers

    Terminal

    1. Es wurde die Möglichkeit hinzugefügt, über die Python API auf Daten der Markttiefe (Depth of Market) zuzugreifen.
      Drei neue Funktionen ermöglichen die schnelle Abfrage von Daten für statistische Berechnungen und Aufgaben des maschinellen Lernens, die mit einer Fülle von Out-of-the-Box-Python-Bibliotheken implementiert werden können.
      • market_book_add — abonniert das MetaTrader 5-Terminal, um Ereignisse in Bezug auf Änderungen der Markttiefe für das angegebene Symbol zu erhalten.
      • market_book_get — gibt ein Tupel von BookInfo zurück, das die Depth of Market-Datensätze für das angegebene Symbol enthält.
      • market_book_release — bricht das MetaTrader 5 Terminal-Abonnement für Ereignisse ab, die mit Änderungen der Depth of Market für das angegebene Symbol zusammenhängen.

    2. Die maximale Länge von Push-Nachrichten wurde von 256 auf 1024 Zeichen erhöht. Jetzt können Sie mehr Informationen aus Ihren MQL5-Programmen auf mobilen Geräten senden.
    3. Es wurde eine vorläufige Version des Task-Managers hinzugefügt, der durch Drücken der F2-Taste aufgerufen werden kann.
      Der Task-Manager ermöglicht die Überwachung der von der Plattform verbrauchten Ressourcen. Sie können den von den Charts verbrauchten Speicher, die von den Expert Advisors genutzten CPU-Ressourcen und andere Leistungsmetriken anzeigen. Wenn die Leistung Ihrer Plattform nachlässt, können Sie das Problem leicht erkennen und beheben.



    4. Erweiterter Abonnementsdienst. Es wurde eine spezielle Anzeige für Symbole mit verzögerten Kursen hinzugefügt:
      • Symbole in der Marktübersicht werden mit einem Uhrensymbol gekennzeichnet, und der Verzögerungswert wird im Tooltip angezeigt
      • Die Benachrichtigung über die Datenverzögerung wird in Charts angezeigt



    5. Die Anzeige der Abonnementsliste wurde korrigiert, wenn keine Verbindung zum Handelskonto besteht.
    6. Links in E-Mails und Newslettern wurden korrigiert. Alle Links werden jetzt im Standardbrowser geöffnet. Zuvor wurden Links nur im Internet Explorer geöffnet.
    7. Korrigierte Verbindungen der Funktion WebRequest zu Hosts mit IPv6-Adressen und Cloudflare-Schutz.
    8. Verbesserte Funktionsweise und Reaktionsfähigkeit des VPS-Dienstes.
    9. Verbesserter Betrieb unter Wine und MacOS/Crossover, einschließlich der Version für macOS Big Sur mit dem M1-Prozessor.

    MQL5

    1. Fehler in der Funktion ArrayPrint behoben. Die Funktion konnte gelegentlich beim Drucken von Arrays versagen.
    2. Optimierte Dateioperationen, die von File* Funktionen ausgeführt werden. Lese- und Schreiboperationen von Dateien laufen jetzt viel schneller.
    3. Die Einschränkung, dass die Größe für die zweite, dritte und vierte Dimension eines dynamischen Arrays angegeben werden muss, wenn das Array als Funktionsparameter verwendet wird, wurde entfernt. Dies erhöht die Wiederverwendung von Code und die Flexibilität.
      void func(int &arr[ ][ ][ ][ ])
        {
        }
    4.  Die Bedienung der Funktion ArrayBsearch wurde korrigiert. Die Funktion konnte bei einer binären Suche einen falschen Index des gefundenen Elements zurückgeben.

    MetaEditor

    1. Im überarbeiteten Debugger sind weitere neue Funktionen verfügbar.
      • Arrays werden jetzt im Beobachtungsfenster entsprechend der mit ArraySetAsSeries eingestellten Sortierung angezeigt.
      • Unterstützung für lokale statische Variablen wurde hinzugefügt.
      • Die Anzeige des angegebenen Array-Elementwertes wurde korrigiert.
      • Korrigierte Behandlung von 'statischen' Klassenfeldern.
      • Weitere Verbesserungen für eine genauere und zuverlässigere Fehlersuche.

    2. Option "Optimierungen bei der Profilerstellung aktivieren" hinzugefügt.
      Der Code-Optimierungsmodus kann deaktiviert werden, um mehr Details in den Profiling-Bericht aufzunehmen. Die Codegeschwindigkeit ohne Optimierung kann um ein Vielfaches langsamer sein, aber dieser Modus bietet eine breitere Codeabdeckung. Bitte beachten Sie, dass mit der Optimierung Code-Engpässe unpräzise sein können.
      Ein milderer Profiling-Modus kann durch Deaktivieren von "Optimierung in der Profilerstellung aktivieren" (Enable inlining in profiling) eingestellt werden.


      Die Option zur Optimierungsverwaltung wurde auch zu den Projekteinstellungen hinzugefügt.
      • Wenn die Optimierung im Projekt deaktiviert ist, dann wird die neue Option ignoriert, und somit wird die Optimierung für die Profilerstellung (einschließlich Inlining-Operationen) immer deaktiviert sein.
      • Wenn die Optimierung im Projekt aktiviert ist, dann wird die neue Option bei der Kompilierung des Profils berücksichtigt.

    3. Logging für Debugging- und Profiling-Prozesse wurde hinzugefügt. Umgebungseinstellungen werden beim Start des Vorgangs protokolliert; die Statistik der gesammelten Daten wird beim Stoppen des Vorgangs protokolliert.
      MQL5 profiler    Start von 'ExpertMACD.ex5' mit Historie und den Parametern:
      MQL5 profiler       Symbol: 'EURUSD'
      MQL5 profiler       Period: 'H1'
      MQL5 profiler       Datum von: '2021.01.01'
      MQL5 profiler       Datum bis: '2021.02.22'
      MQL5 profiler       Tick-Modus: 'jeder Tick'
      MQL5 profiler       Ausführungsverzögerung: 0 ms
      MQL5 profiler       Einlage: 10000
      MQL5 profiler       Währung: 'USD'
      MQL5 profiler       Hebel: 1:100
      MQL5 profiler       Gewinn in Pips: NO
      MQL5 profiler    Profildaten erhalten (4640 bytes)
      MQL5 profiler    758 Messungen insgesamt, 0/0 Fehler, 470 kb Stapelspeicher analysiert
      MQL5 profiler    7782 Funktionsrahmen insgesamt gefunden (1929 mql5 Code, 342 integriert, 1403 andere, 4108 System)

    Tester

    1. Die Angabe von Nicht-Handelszeiten in den erweiterten Testeinstellungen wurde korrigiert.

    Aktualisierte Dokumentation.
    15 Januar 2021
    MetaTrader 5 Plattform-Build 2755: Popup-Preise-Fenster und Debugger-Verbesserungen

    Terminal

    1. Überarbeitetes Fenster der Popup-Preise, das die Anzeige von Preisen für Finanzsymbole auf jeder Bildschirmgröße ermöglicht.

      Das Fenster unterstützt jetzt die mehrspaltige Darstellung, was eine effiziente Nutzung des Platzes auf dem Bildschirm ermöglicht. Um den Anzeigemodus umzuschalten, verwenden Sie den Dialog für die Fenstereigenschaften.


      Die weiteren Verbesserungen in diesem Fenster sind wie folgt
      • Das Menü zur Spaltenauswahl wurde hinzugefügt. Das Menü verfügt über die gleichen Symboleigenschaften, die auch in der Marktübersicht verfügbar sind.
      • Optimierter Betrieb mit einer großen Anzahl von Finanzinstrumenten. Die Leistung des Fensters ist jetzt für 10 und für 1000 Instrumente gleich hoch.
      • Anzeige von kurzen Instrumenteninformationen in einem Tooltip hinzugefügt.
      • Die Anwendung der Farbeinstellungen für die Anzeige von steigenden und fallenden Kursen wurde korrigiert.

    2. Anzeige von Transaktionen im Tick-Chart der synthetischen Markttiefe hinzugefügt.

      Synthetische Markttiefe wird für die Symbole verwendet, für die keine Preise der Ebene 2 bereitgestellt werden. In diesem Fall werden die Ebenen automatisch in Abständen, die einem Preisänderungsschritt entsprechen, ausgehend von den besten Preisen für Bid und Ask aufgebaut. Wenn nun für ein Symbol die Daten des letzten Geschäftspreises und des Volumens vorliegen, werden die entsprechenden Daten im Tick-Chart angezeigt. Die Informationen werden als Kreise angezeigt:
      • Rote Kreise zeigen Verkaufstransaktionen an.
      • Blaue Kreise zeigen Kauftransaktionen an.
      • Grüne Kreise erscheinen, wenn die Richtung der Transaktion undefiniert ist.

      Je größer der Kreis ist, desto größer ist das Volumen der Transaktion.



    3. Die Berechnung der griechischen Parameter in der Optionsleiste wurde korrigiert. Es konnte ein Fehler auftreten, wenn der Basiswert der Option einen Last-Deal-Preis von Null hatte.
    4. Wir setzen die Implementierung des neuen Dienstes "Abonnements" fort, der die Bereitstellung von zusätzlichen Handelsdiensten ermöglicht. Kürzlich haben wir die Anzeige von abhängigen Abonnements festgelegt. Solche Abonnements werden für gebündelte Dienste verwendet.
    5. Verbessertes Verhalten der Plattform auf Wine.

    MQL5

    1. Erweitert wurden die Ereignisse der ChartEvent mit dem Loslassen der rechten und mittleren Maustaste. Dieses Ereignis kann beim Erstellen von grafischen Panels verwendet werden. Um die Ereignisse zu aktivieren, deaktivieren Sie das Kontextmenü des Charts über die Eigenschaft CHART_CONTEXT_MENU.
    2. Es wurde ein Fehler behoben, der einen erheblichen Fehler der Wartezeit der Sleep-Funktion verursachte.

    MetaEditor

    1. Wir haben das globale Update des Debuggers eingeleitet. Das Fenster der beobachteten Ausdrücke wurde deutlich verbessert. Es ermöglicht jetzt die Anzeige des Inhalts von Arrays und Objekten als Dropdown-Listen sowie von Zeigerwerten.



      Um ein Array oder Objekt anzuzeigen, machen Sie im Beobachtungsfenster auf ihnen einen Doppelklick.

    2. Das Einfrieren beim Öffnen einiger Projekte wurde behoben.

    Die Dokumentation wurde aktualisiert.
    26 November 2020
    MetaTrader 5 Build 2715: Allgemeine Verbesserungen

    Terminal

    1. Korrigiert wurde das Einfrieren der Plattform bei Verwendung der Optionentafel. Das Einfrieren könnte durch eine Null-Tick-Größe verursacht werden, die in den Einstellungen des Handelsgeschäftes angegeben ist.
    2. Behoben wurde ein UI-Anzeigefehler auf HiDPI-Bildschirm.

    MQL5

    1. Korrektur der Umwandlung von Zeichenkette in Zeit durch die Funktion StringToTime. Ein Fehler konnte auftreten, wenn die Zeit in der Form "yyyyymmdd [hhmiss]" angegeben wurde.
    2. Die Operation des impliziten Kopieroperators für Objekte, die dynamische Arrays enthalten, wurde korrigiert. Die Operation reduziert jetzt die Größe des Zielobjekts auf die Größe des kopierten Objekts.
      struct MyStruct
      {
        string Array[];
      };
      
      void OnStart()
      {
        MyStruct a1,a2;
        ArrayResize(a1.Array,3);
        ArrayResize(a2.Array,1);
        a1=a2;
      }
      Früher war die Array-Größe von "a1" nach dem Funktionsaufruf gleich 3. Jetzt ist die Größe 1.

    MetaTester

    1. Aktualisierter Algorithmus zur Berechnung des Ratings der Testagenten für MQL5 Cloud Network. Das Rating wird jetzt genauer bestimmt und weniger häufig geändert.

    Die Dokumentation wurde aktualisiert.
    12 November 2020
    MetaTrader 5 build 2690: Verbesserungen des MetaEditors

    Terminal

    1. Korrigiert wurde die Anzeige der Funktion synthetische Markttiefe. Zuvor konnte diese Funktion für einige Symbole nicht verfügbar sein.

      Synthetische Markttiefe wird für die Symbole verwendet, für die keine Preise der Ebene 2 bereitgestellt werden. In diesem Fall werden die Ebenen automatisch in Abständen, die einem Preisänderungsschritt entsprechen, ausgehend von den besten Preisen für Bid und Ask aufgebaut. Dies ist ein praktisches Werkzeug, um Aufträge schnell und mit maximaler Klarheit zu platzieren, zu ändern und zu löschen.



    MQL5

    1. Optimierter und stark beschleunigter Zugriff auf Last, dem letzten Preis, aus MQL5-Programmen mit der Funktion SymbolInfoTick.
    2. Korrektur des Rücksetzens des Indikators Ichimoku Kinko Hyo aus der Dialogbox.



    3. Korrektur der Funktionen Copy*, die bei einer nicht vorhandenen Historie des Handelsinstruments einfrieren konnte.
    4. Weitere Verbesserungen innerhalb des Gesamtupdates des Code-Profilers. Zusätzlich zu den vorgestellten Neuerungen von build 2650 wurden folgende Verbesserungen umgesetzt:
      • Eine verbesserte Datenpräsentation
      • Kürzere Spaltennamen werden jetzt im Bericht verwendet
      • Die Fähigkeit, Profilberichte in einer Datei zu speichern
      • Hinzugefügt wurde die Anzeige eines Tooltips mit einer Zeilennummer für Funktionen im Bericht.



    MetaEditor

    1. Hinzugefügt wurde die Möglichkeit, die Kontrolle der Zwischenablage zu deaktivieren und ihren Verlauf zu löschen.

      Die Funktion zur Kontrolle der Zwischenablage verbessert die Verwendbarkeit des Quellcodes, indem sie einen schnellen Zugriff auf kürzlich verwendete Daten ermöglicht. Drücken Sie Alt+V an einer beliebigen Quellcodeposition, wählen Sie eine der früher kopierten Zeilen aus dem Menü aus, und die Zeile wird an der ausgewählten Position eingefügt.

      Verwenden Sie die entsprechenden Symbolleistenbefehle oder Editoreinstellungen, um die Kontrolle zu aktivieren/deaktivieren.




    2. Korrektur der Berechnung beobachteter Ausdrücke beim Debuggen eines Programms.

    MetaTester

    1. Der Handel ist jetzt für Expert Advisors, die im Strategie-Tester im Modus Frame-Erhalt laufen, verboten.
    2. Korrektur des Imports der Optimierungsergebnisse im Strategietester. Ein Fehler konnte die Werte der Zeitrahmen falsch importieren.

    Die Dokumentation wurde aktualisiert.
    9 Oktober 2020
    Die neue MetaTrader 5 Plattform build 2650: Verbesserungen beim Laden von Hintergrundcharts und des MQL5-Code-Profilers

    Terminal

    1. Die Registerkarte Optionen bietet eine neue Einstellung mit dem Titel "Chartdaten für offene Positionen und Orders vorab laden".

      Um Datenverkehr zu sparen, lädt die Handelsplattform die Historie der Symbolpreise nur dann herunter, wenn die entsprechenden Daten angefordert werden, z.B. beim Öffnen des Preischarts oder beim Start von Tests. Bei aktiv verwendeten Symbolen ist dies jedoch nicht immer sinnvoll. Wenn Sie die neue Option aktivieren, werden die Charts der Symbole, für die Sie offene Positionen oder Pending Orders haben, im Hintergrundmodus aktualisiert, sobald Sie die Plattform starten. Auf diese Weise müssen Sie nach der Chart-Eröffnung nicht auf das Herunterladen der Daten warten, und die relevanten Daten stehen sofort zur Analyse zur Verfügung.




    2. Korrektur der Generierung von Tagesbars nach Wochenenden.
    3. Korrektur der Aktualisierung von Charts. Nach dem zusätzlichen Herunterladen von aktualisierten Preisdaten konnte es gelegentlich vorkommen, dass die Charts nicht aktualisiert wurden.
    4. Optimierte Aktualisierung des Caches der Konto-Handelshistorie. Die Optimierung ermöglicht die Reduzierung von Datenverzögerungen bei der Verwendung der Funktionen History*.
    5. Korrektur der Darstellung der Kommentarspalte bei Anzeige Handelshistorie als Positionen.
    6. Die Anzeige der Schaltfläche SignalAbonnementserneuerung wurde korrigiert.

    MQL5

    1. Weitere Verbesserungen innerhalb des Gesamtupdates des Code-Profilers. Die folgenden Funktionen wurden zusätzlich zu den in build 2615 vorgestellten Neuerungen implementiert:

      Neue Parameter wurden hinzugefügt
      Wir haben bereits früher die Anwendung der Beispielmethode für den neuen Profiler angekündigt. Der Profiler macht Pausen in der MQL-Programmoperation (~1000 Mal pro Sekunde) und sammelt Statistiken darüber, wie viele Pausen in bestimmten Codesegmenten durchgeführt wurden. Dazu gehört auch die Analyse von Aufrufstapeln, um den Anteil jeder Funktion an der gesamten Code-Operationszeit zu bestimmen. Nach dem Profiling erhalten die Nutzer Statistiken darüber, wie oft die Operation angehalten wurde und wie oft jede der Funktionen im Aufrufstapel erschien:

      • Gesamt-CPU [Einheit,%] — wie oft die Funktion im Aufrufstapel erschien.
      • Eigen-CPU [Einheit,%] — die Anzahl der "Pausen", die direkt innerhalb der angegebenen Funktion aufgetreten sind. Diese Variable ist entscheidend für die Erkennung von Engpässen: Laut Statistik treten Pausen häufiger auf, wenn mehr Prozessorzeit benötigt wird.


      Hinzugefügt wurde die Möglichkeit, die Funktion Inlining während des Profiling zu deaktivieren
      Bei der Kompilierung von MQL-Programmen werden Funktionen inlined, d.h. der Funktionscode wird direkt der Funktionsaufrufseite hinzugefügt. Dies ermöglicht eine erhebliche Beschleunigung. Allerdings erschwert dieses Verfahren das Profiling von Funktionen. Um einen Bericht "rein" über die Funktionen zu erhalten, können Sie Inlining in den Einstellungen des MetaEditors deaktivieren:




      Aktualisierter Berichtsentwurf
      Wir haben den Bericht über das Profiling und die Darstellung der Informationen über das Profiling im Quellcodefenster neu gestaltet. Das modernisierte Design wird den Nutzern von Visual Studio vertrauter sein.




    2. Korrektur der Funktion CopyTicksRange. Die Funktion konnte manchmal unvollständige Daten zurückgeben.
    3. Neuer Fehlercode TRADE_RETCODE_HEDGE_PROHIBITED — Eröffnung einer Position oder Platzierung einer Pending Order ist nicht erlaubt, da Hedge-Positionen nicht möglich sind. Der Fehler wird zurückgegeben, wenn ein Nutzer versucht, eine Handelsoperation auszuführen, falls das Hedging für das Konto deaktiviert ist und der Nutzer bereits eine entgegengesetzte Order oder Position für dasselbe Symbol hat.
    4. Die Möglichkeit zum Aufruf von MessageBox beim Debuggen von Indikatoren wurde entfernt. MessageBox kann nicht von Indikatoren aus aufgerufen werden, da sie die Thread-Ausführung für die gesamte Zeit aussetzt, während sie auf die Antwort des Benutzers wartet.
    5. Optimierte und signifikant beschleunigte Aufnahme von Handelsinstrumenten in den Market Watch mit der Funktion SymbolSelect.
    6. Korrektur der Funktion ArrayInsert für Array mit fixer Größe. Jetzt entspricht das Verhalten der Beschreibung in der Dokumentation: Beim Einfügen von Elementen ändert sich die Größe des Ziel-Arrays nicht und die Elemente rechts von der Einfügeposition werden nach rechts verschoben (die letzten 'count'-Elemente werden "fallengelassen"), während die Elemente von der Quelle auf den freigewordenen Platz kopiert werden.

    Tester

    1. Korrektur der Arbeit mit nutzerdefinierten Handelsbedingungen-Einstellungen während des Testens; der Einstellungsdialog wurde überarbeitet.

      • Die Berechnung der nutzerdefinierten Provisionen wurde korrigiert. Um Provisionen zu aktivieren, reicht es jetzt aus, den Symbolnamen statt des gesamten Pfades anzugeben.
      • Neu arrangierte Registerkarten für einen effizienteren Betrieb.
      • Das Dialogfeld und die Option zur Aktivierung nutzerdefinierter Einstellungen wurden umbenannt.
      • Optimierte Spaltenbreite in den Einstelltabellen.
      • Wenn die Option "Nutzerdefinierte Einstellungen verwenden" deaktiviert ist, sind alle anderen Einstellungen im Dialogfeld deaktiviert. Zuvor blieben die Einstellungen editierbar, und Nutzer könnten fälschlicherweise annehmen, dass die Einstellungen während des Testens angewendet werden.




    2. Ein gelegentlicher Fehler im Zusammenhang mit dem Empfang von Orders aus der Handelsgeschichte per Ticket wurde behoben.

    MetaEditor

    1. Es wurden Voreinstellungen für das Farbschema des Code-Editierfensters hinzugefügt: hell (Standard), dunkel und blau. Sie können den Editor anpassen, ohne die Editor-Ansicht manuell konfigurieren zu müssen.

      Zusätzlich ist es jetzt möglich, die Randfarbe für die Tooltips der Funktion anzupassen.



       
    2. Alle Symbole in den Symbolleisten wurden aktualisiert, um HiDPI-Monitore zu unterstützen.

    Die Dokumentation wurde aktualisiert.

    17 September 2020
    MetaTrader 5 Build 2615: Grundlegende Analyse und komplexe Kriterien im Strategietester

    Terminal

    1. Erweiterte Möglichkeiten für eine Fundamentalanalyse.
      Neue Handelsinstrument-Eigenschaften hinzugefügt, die eine genauere Kategorisierung der Symbole ermöglichen:
      • Sektor — der Wirtschaftssektor, zu dem der Vermögenswert gehört, wie z.B. Energie, Finanzen, Gesundheitswesen und andere.
      • Industrie — der Industriezweig, zu dem der Vermögenswert gehört, wie z.B. Sportbekleidung, Zubehör, Automobilherstellung, Gaststättengewerbe und andere.
      • Land — das Land des Unternehmens, dessen Aktien an der Börse gehandelt werden.
      Basierend auf diesen Eigenschaften wurde in Market Watch ein separates System implementiert, das effiziente Operationen mit Symbolen ermöglicht. Wählen Sie eine Kategorie aus dem Menü aus, und alle verfügbaren Instrumente werden einer Liste für eine eingehende Analyse hinzugefügt:



      Relevante Eigenschaften wurden den Vertragsspezifikationen hinzugefügt:



      Zudem können Fundamentaldaten zu Handelssymbolen nun direkt von der Plattform aus geöffnet werden. Links zu den größten Aggregatoren wurden dem Kontextmenü von Market Watch hinzugefügt:



      Die Verfügbarkeit von erweiterten Daten wird vom Broker kontrolliert. Wir haben jedoch die Standardverfügbarkeit der erweiterten Informationen für die maximale Anzahl von Instrumenten sichergestellt. Sobald die Broker ihre Server auf die neue Version aktualisieren, erscheinen die entsprechenden Länder-, Branchen- und Industriedaten in Ihren Plattformen.
    2.  Verbesserte Darstellung der Signale und des Marktes. Die Schaltflächen für Miete und Abonnement wurden auf der linken Seite hinzugefügt:



      Weitere Verbesserungen betreffen die Bereichsgestaltung. Dazu gehören hellere Tastenfarben, größere MQL5-Anmeldeschaltflächen und andere Verbesserungen.

    3. Die potentiellen Gewinn-/Verlustberechnung für Stop-Loss- und Take-Profit-Chartebenen wurden korrigiert.



    4. Fehler bei der Berechnung von synthetische Instrumente behoben. Die Fehler konnten gelegentlich zu einem Einfrieren der Plattform beim Start führen.
    5. Die Darstellung der Werte des integrierten Fraktalindikators im Datenfenster wurde korrigiert.
    6. Alle Icons in den Symbolleisten der Plattform wurden aktualisiert, um HiDPI-Monitore zu unterstützen.
    7. Positionsvolumenanpassung für kopierte Handelssignale wurde korrigiert. Der Anpassungsvorgang konnte manchmal aufgrund falsch angewandter Stopp-Level fehlschlagen, was den Fehler "ungültige Stopps" verursachte.
    8. Optimierte Neuerstellung der Kurshistorie nach relevanten Änderungen auf dem Server.
    9. Korrektur der Darstellung von Tooltips auf Handelsebene in Charts. In einigen Fällen wurden Tooltips in Charts angezeigt, auch wenn die Anzeige der Handelsebenen deaktiviert war.
    10. Korrektur der Option "Auf Charts anzeigen \ Automatisches Update" im Kontextmenü von Orders und Positionen im Abschnitt "Werkzeuge\Handel". Wenn diese Option jetzt nicht angekreuzt ist, wird die Anzeige der Handelshistorie für alle offenen Charts deaktiviert.

    MQL5

    1. Die Funktion MathClassify wurde hinzugefügt. Sie bestimmt den Typ einer reellen Zahl und gibt ein Ergebnis als Wert aus der neuen Enumeration ENUM_FP_CLASS zurück.
      ENUM_FP_CLASS  MathClassify(
         double  value      // reelle Zahl
         );
      Die Enumeration verfügt über folgende Werte:
      • FP_SUBNORMAL — eine anormale Zahl, die näher Null ist, als die kleinst mögliche normale Zahl DBL_MIN 2.2250738585072014e-308
      • FP_NORMAL — ein normale Zahl im Bereich von 2.2250738585072014e-308 bis 1.7976931348623158e+308
      • FP_ZERO — eine positive oder negative Null
      • FP_INFINITE — eine Zahl, die nicht durch einen entsprechenden Typ dargestellt werden kann, Minus- oder Plus-Unendlich
      • FP_NAN — keine Zahl

      Verwenden Sie Folgendes, um die Gültigkeit einer Zahl zu prüfen:
      if(MathClassify(value)>FP_ZERO)
        {
         Print("Der Wert ist keine gültige Zahle");
        }
    2. Es wurden Symboleigenschaften hinzugefügt, die mit den Funktionen SymbolInfoString abgefragt werden können:
      • SYMBOL_COUNTRY — das Land des Unternehmens, dessen Aktien an der Börse gehandelt werden.
      • SYMBOL_SECTOR_NAME — der Wirtschaftssektor, zu dem der Vermögenswert gehört, wie z.B. Energie, Finanzen, Gesundheitswesen und andere.
      • SYMBOL_INDUSTRY_NAME — die Industrie, zu der der Vermögenswert gehört, wie z.B. Sportbekleidung, Zubehör, Automobilherstellung, Gaststättengewerbe und andere.

      Die Eigenschaften werden in Textform zurückgegeben.

      Der Sektor und die Branche, zu der das Handelsinstrument gehört, kann als Wert einer Enumeration ermittelt werden. Dazu können die folgenden Eigenschaften mit der Funktion SymbolInfoInteger abgefragt werden:
      • SYMBOL_SECTOR
      • SYMBOL_INDUSTRY

      Für die Arbeit mit diesen Eigenschaften wurden die Enumerationen ENUM_SYMBOL_SECTOR und ENUM_SYMBOL_INDUSTRY hinzugefügt.

    3. Ein neuer Speicherverwaltungsmechanismus wurde in MQL5-Programme implementiert. Er ermöglicht eine bis zu 3-mal schnellere Speicherzuweisung und vermeidet potenzielle Speicherzugriffsfehler.
    4. Optimierte und beschleunigte Operationen mit der Konto-Tick-Historie über die Funktionen Historie*.
    5. Der Aufruf von WebRequest von der Funktion OnDeinit wurde korrigiert. In früheren Versionen konnte der Funktionsaufruf nicht implementiert werden, wenn ein Expert Advisor angehalten worden war.
    6. Die Funktionsaufrufe von WebRequest von den Diensten wurde korrigiert. In früheren Versionen konnte ein Funktionsaufruf nach einem Neustart des Dienstes fehlschlagen.
    7. Prüfung auf Unterstützung für Werte vom Typ double auf einem Gerät bei Verwendung von OpenCL hinzugefügt. Der Typ float kann aufgrund übermäßiger Rundung nicht in Finanzberechnungen verwendet werden. Daher verlangt die Plattform explizit eine Unterstützung von 'doubles' für die Berechnungen. Wenn der Typ double nicht unterstützt wird, wird eine entsprechende Meldung in das Plattformprotokoll geschrieben: Gerät '<name>' unterstützt den Typ 'double' nicht. Früher wurde in solchen Fällen nur eine allgemeine Fehlermeldung angezeigt.
    8. Erheblich beschleunigte Ausführung der Funktion AccountInfoDouble mit den Parametern ACCOUNT_EQUITY und ACCOUNT_BALANCE.
    9. Korrigiert wurde die Anwendung von Vorlagen auf ein Chart durch die Funktion ChartApplyTemplate.
    10. Korrigiert wurde der Funktionsaufruf ChartSetInteger mit dem Parameter CHART_BRING_TO_TOP.
    11. Der integrierten Bibliothek Alglib wurde eine neue Methode Conjugate hinzugefügt. Diese Methode ermöglicht die konjugierte Zahlenberechnung für komplexe Zahlen. Die Bibliothek befindet sich in MQL5\Include\Math\Alglib.
    12. Vollständig überarbeitet wurde der Code-Profiler. Der neue Profiler arbeitet mit einer höheren Genauigkeit und mit einer höheren Geschwindigkeit.
      • Die Analyse basiert jetzt auf dem Code, der ähnlich wie bei der Kompilierung der Release-Version eines Programms optimiert wird. Dies ermöglicht eine genauere Bestimmung der Code-Ausführungsgeschwindigkeit, da während der Programmausführung exakt derselbe Code verwendet wird.
      • Der neue Profiler verwendet die Profiling-Methode "Sampling". Diese leichtgewichtige und genaue Methode sammelt Statistiken zur Anwendungsleistung, indem sie Daten zum Aufrufstapel sammelt und die Leistung in regelmäßigen Abständen berechnet.
      • Im Gegensatz zu den vorherigen Versionen nimmt der neue Profiler keine Änderungen am analysierten Code vor. Die zuvor verwendete Instrumentationsmethode fügte dem Code bestimmte Konstrukte hinzu, die zur Messung der Funktionsgeschwindigkeit verwendet wurden. Dies könnte sich auf die endgültige Codegeschwindigkeit auswirken.

      Die Entwicklung des Profiler wird fortgesetzt. Weitere Verbesserungen werden in kommenden Plattformversionen verfügbar werden.

    Tester

    1. Optimierte Operationen mit dem MQL5-Cloud-Netzwerk. Das Laden von Expert Advisors auf Agenten wurde korrigiert.
    2. Ein neues Optimierungskriterium "Komplexes Kriterium max" hinzugefügt. Dies ist ein integrales und komplexes Maß für die Qualität eines Testdurchlaufs. Es misst mehrere Parameter:
      • Anzahl der Deals
      • Drawdown
      • Erholungsfaktor
      • Erwartetes Ergebnis
      • Sharpe Ratio

      Der höchste Wert eines Parameters (zum Beispiel des Gewinns) ist nicht immer die beste Option im Hinblick auf die komplexe Analyse. Das komplexe Kriterium wählt nach und nach die besten Durchläufe aus: Zunächst nach der Anzahl der Deals, dann nach dem Expected Payoff, dem Erholungsfaktor und so weiter. Die neue Option ermöglicht den Erhalt der besten Optimierungsdurchläufe in Abhängigkeit von allen Parametern. Außerdem können Sie den optimalen Durchlauf auf der Grundlage des gewünschten Parameters auswählen, wie z.B. den höchsten Gewinn.

      Wählen Sie das neue Kriterium in den Einstellungen des Strategietesters und starten Sie die Optimierung.



      Der Wert "Komplexes Kriterium max" wird in einem separaten Register "Ergebnis" in den Optimierungsergebnissen angezeigt. Die Durchläufe können nach dieser Spalte sortiert werden. Das neue Kriterium unterstützt farbige Kennzeichnungen, um die besten Durchläufe visuell hervorzuheben. Werte unter 20 werden rot hervorgehoben, und Werte über 80 werden dunkelgrün dargestellt.



    3. Korrektur der Berechnung der nutzerdefinierten Kommission im Strategietester.

    MetaEditor

    1. Wir haben die globale Überarbeitung Funktionen für das intelligente Code-Management (IntelliSense) initiiert.
      • Hinweise zeigen jetzt neben dem Namen auch die vollständige Funktionssignatur an.
      • Die Schriftart für die Hinweise wird jetzt gemäß den Einstellungen des MetaEditors eingestellt.
      Weitere Verbesserungen werden in kommenden Plattformversionen verfügbar werden.

    Aktualisierte Dokumentation.
    Zurück12345