Die neue MetaTrader 5-Plattform Build 3300: Schnelle Kompilierung und verbesserte Code-Navigation im MetaEditor

 

Das MetaTrader 5 Plattform-Update wird am Freitag, den 20. Mai 2022, veröffentlicht.

In der neuen Version haben wir mehrere Verbesserungen in MetaEditor implementiert. Die Kompilierung unterstützt jetzt zwei Modi: langsame Kompilierung mit Code-Optimierung und schnelle Kompilierung ohne Optimierung. Die letztere Option kann für schnelle Code-Validierungen während der Entwicklung nützlich sein.

Zu den weiteren Verbesserungen des Code-Editors gehören ein neuer Befehl zum Springen zu Methodendeklarationen und die Option der automatischen Ersetzung auf der "Tab"-Taste.

 Die neue MetaTrader 5-Plattform Build 3300: Schnelle Kompilierung und verbesserte Code-Navigation im MetaEditor

Darüber hinaus haben wir MQL5-Debugging-Prozesse durch die automatische Anzeige von lokalen Variablen in der Beobachtungsliste erleichtert.

Diese Änderungen sowie weitere neue Funktionen der aktualisierten MetaTrader 5-Plattformversion werden im Folgenden ausführlich beschrieben:


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


    Ändern Sie das Rechteck durch Ziehen an einer seiner Ecken


  2. Terminal: Schnelleres GUI-Rendering.
  3. Terminal: Verbesserte Unterstützung für IPv6-Adressen.
  4. Terminal: 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.
  5. MQL5: 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
      };
  6. MQL5: Es wurde die Möglichkeit hinzugefügt, Arrays mit einer Datengröße größer als INT_MAX zu schreiben (Arrays von Strukturen).
  7. MetaEditor: 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.

    Verbesserungen der Tab-Leiste


  8. MetaEditor: 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.


    Verwenden Sie die nicht optimierte Kompilierung für eine schnelle Codeüberprüfung


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

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

  9. MetaEditor: 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".


    Sprung zur Methodendeklaration


  10. MetaEditor: 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.


    Anzeige lokaler Variablen in der Beobachtungsliste List

  11. MetaEditor: Verbesserungen der Debugger-Überwachungsliste für Vektoren und Matrizen.
  12. MetaEditor: Fixierte Pfade in Projektdateien. Ein Fehler konnte dazu führen, dass Dateien aus Projekten verschwanden.
  13. Tester: Verbessertes Beendigen der Tester-Agenten beim Herunterfahren der Plattform.
  14. Tester: 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.
  15. Fehler in den Absturz-Logs behoben.


Die Aktualisierung wird über das Live-Update-System verfügbar sein.

 

Guten Abend,
erst mal vielen Dank an das Team um den MT5. Das Entwickeln unter dieser Oberfläche macht viel Spaß und meistens tut sie auch das, was ich programmiere.
Trotzdem fürchte ich neue Versionen.

Dieses mal bei Build 3300 folgender Effekt:
Ich habe bei meinem Broker am Samstag ein neues Demokonto in Betrieb genommen.
Wie immer habe ich zu spät gemerkt, dass ich noch Mt5 erlauben muss, dass mein Experte Trades zu diesem Konto starten darf.
War aber Sa, So eh nicht relevant, da ich keine Backtests gemacht habe.

Heute wieder: Häkchen gesetzt, raus aus dem laufendem Experten, neu gestartet ... und der Server erlaubt meinem Experten immer noch keine Trades.

[AutoTrading disabled by server]     Nichts zu machen.  Häkchen mehrmals gesetzt und wieder rausgenommen ... Keine Veränderung.

Die QuickTrade Buttons funktionieren, aber Trades aus meinem Experten können nicht mehr gestartet (und durch QuickButtons gestartete natürlich auch nicht mehr beendet werden).
Ich benutze    #include <Trade\Trade.mqh>    mit PositionOpen, PositionClose.
Mt5 weist den Open mit Fehler 4756 ab.

Ist diese Klasse evtl. "genauer" geworden, müssen vielleicht Parameter gesetzt werden, die bisher nicht beachtet wurden?

Journal-Meldung hierzu:

2022.05.23 22:36:08.259 Trades '5710633': failed market buy 0.01 UsaTecJun22 sl: 12028.75 tp: 12054.75 [AutoTrading disabled by server]

Vielen Dank für eine Idee!
Werner


 

Hallo,

es gibt zwei Häkchen zu setzen, um den Handel zu erlauben: im Terminal und beim EA selbst (bei mir sind sie übereinander):


 
Carl Schreiber #:

Hallo,

es gibt zwei Häkchen zu setzen, um den Handel zu erlauben: im Terminal und beim EA selbst (bei mir sind sie übereinander):


Vielen Dank Carl!
Die Sache hat sich gerade geklärt- Der Broker hat mir den Hahn abgedreht, weil ich zu viel getestet und zu wenig auf dem Echtkonto veranstaltet habe.
Bin selber gespannt, unter welchen Bedingungen ich bei ihm weitermachen kann - sonst soll er mir den Kontostand auszahlen ...

 
werner111053 #:

Vielen Dank Carl!
Die Sache hat sich gerade geklärt- Der Broker hat mir den Hahn abgedreht, weil ich zu viel getestet und zu wenig auf dem Echtkonto veranstaltet habe.
Bin selber gespannt, unter welchen Bedingungen ich bei ihm weitermachen kann - sonst soll er mir den Kontostand auszahlen ...

Kannst Du nicht eine Demokonto bei MQ verwenden?
 
Carl Schreiber #:
Kannst Du nicht eine Demokonto bei MQ verwenden?

Bin noch mit dem Broker im Dialog, ansonsten- klar, danke- guter Hinweis.
Habe ich noch nie gebraucht, da ich sofort mit "Active Trades" begonnen habe und die Leute dort eigentlich sehr in Ordnung sind.

Bin gespannt.

 
Vor ein paar Minuten erschien das MT5-Update-Fenster für meinen 3302(?) MT5 im portablen Modus auf 3310 und ich drückte ok für das Update - aber der portable Modus wird nicht unterstützt :(

  1. Ein neuer Ordner wurde erstellt: ...\AppData\Roaming\MetaQuotes\Terminal\BCDEABB7FE91819D147F14B92E0D9730
  2. 60MB kopiert
  3. im portablen Ordner startete das Terminal nicht :(
  4. Alle meine Setups waren weg !!
  5. Wenn ich einen Shotcut mit "C:\Users\cas\Documents\MT5\T5\terminal64.exe /portable" starte, passiert nichts
  6. Wenn ich das Terminal in Documents\MT5\T5\ starte, ist der MT5 Ordner: C:\Users\cas\AppData\Roaming\MetaQuotes\Terminal\BCDEABB7FE91819D147F14B92E0D9730 :(
  7. Kein Setup mehr :(
  8. Für einige Zeit gab es eine Datei portable.txt - jetzt ist sie weg :(
    ....


Nach der "Re-Installation" von b.3300 (Kopieren von Editor, Terminal & Tester) in meinem portablen Ordner startet es ohne Schaden und mit allen Einstellungen.

Vielen Dank an Andrey Khatimlianskii https://www.mql5.com/de/users/komposter:
https://drive.google.com/drive/folders/1YSUVehcElTpLxCLPMsdlDfFu4Y61yrcc
 
Carl Schreiber #:
Vor ein paar Minuten erschien das MT5-Update-Fenster für meinen 3302(?) MT5 im portablen Modus auf 3310 und ich drückte ok für das Update - aber der portable Modus wird nicht unterstützt :(

  1. Ein neuer Ordner wurde erstellt: ...\AppData\Roaming\MetaQuotes\Terminal\BCDEABB7FE91819D147F14B92E0D9730
  2. 60MB kopiert
  3. im portablen Ordner startete das Terminal nicht :(
  4. Alle meine Setups waren weg !!
  5. Wenn ich einen Shotcut mit "C:\Users\cas\Documents\MT5\T5\terminal64.exe /portable" starte, passiert nichts
  6. Wenn ich das Terminal in Documents\MT5\T5\ starte, ist der MT5 Ordner: C:\Users\cas\AppData\Roaming\MetaQuotes\Terminal\BCDEABB7FE91819D147F14B92E0D9730 :(
  7. Kein Setup mehr :(
  8. Für einige Zeit gab es eine Datei portable.txt - jetzt ist sie weg :(
    ....


Nach der "Re-Installation" von b.3300 (Kopieren von Editor, Terminal & Tester) in meinem portablen Ordner startet es ohne Schaden und mit allen Einstellungen.

Vielen Dank an Andrey Khatimlianskii https://www.mql5.com/de/users/komposter:
https://drive.google.com/drive/folders/1YSUVehcElTpLxCLPMsdlDfFu4Y61yrcc

Neues Update auf 3311 und alles funktioniert wieder perfekt!

Danke.

 
Carl Schreiber #:

Neues Update auf 3311 und alles funktioniert wieder perfekt!

Danke.

Hallo Carl,
Mein Problem war mit 3302 gefixed. 
Nehme an, es war eine Änderung in der Includedatei "Trade.mqh" oder ähnliches, die das Starten eines Trades unter meinem Broker verhinderte.
Nun bin ich auf 3311 gespannt (bibber) :-)
Grüße
Werner

Grund der Beschwerde: