Wünsche für MT5 - Seite 113

 

Was in MQL fehlt, ist eine Funktion, die die Anzahl der geänderten Balken für ein bestimmtes Symbol/Zeitleiste ausgibt. Jedes Mal muss ich die gesamte Historie überprüfen und mit der vorherigen Historie vergleichen, um Änderungen zu finden. Das ist sehr unvernünftig, erfordert Speicherverschwendung, um die gesamte Historie in einem Array zu speichern, plus die Kosten für das Abrufen und Vergleichen der gleichen Historie.Vor allem mit MT5, wo die vorherige Historie regelmäßig aus dem Speicher gelöscht wird und dann von der Festplatte heruntergeladen werden muss. Und ich werde nicht einmal über die Komplizierung des Codes sprechen. So viele lächerliche Schwierigkeiten, anstatt einfach Metatrader zu fragen, der genau weiß, ob die Historie geändert wurde oder nicht.

Die Indikatoren haben einen ähnlichen Mechanismus (Parameter prev_calculated), aber nur für das Symbol und den Zeitraum, auf dem der Indikator läuft. Und verschiedene Symbole können an den Berechnungen teilnehmen. Daher brauchen wir eine Funktion, die die Anzahl der aktualisierten Balken (oder die Zeit, von der die aktualisierten Balken ausgehen) für jedes Symbol zurückgibt.

 
Meine Herren Entwickler, planen Sie eine normale Syntaxhervorhebung in MetaEditor? D.h. Typen/Klassen mit einer Farbe, Variablen mit einer anderen, Funktionen mit einer anderen, Makros mit der vierten, usw. Im Allgemeinen wie in normalen IDEs. Ansonsten werden nur die Standard-MQL-Tools hervorgehoben. Das Ergebnis ist, dass bei aktiver Verwendung von OOP der gesamte Code zu einem soliden schwarzen Text wird (Operatoren nicht mitgerechnet). Sie werden die Namen der Klassen, Objekte und Funktionen nicht sofort erkennen können. Es ist sehr schwer zu lesen. Ich ertappe mich oft bei dem Gedanken, dass es viel schöner ist, die Standardprimitive zu verwenden, um den Code übersichtlicher zu gestalten (damit er nicht wie eine schwarze Masse aussieht). Und so sollte es nicht sein.
 
meat:
Meine Herren Entwickler, planen Sie eine normale Syntaxhervorhebung in MetaEditor? D.h. Typen/Klassen in einer Farbe, Variablen in einer anderen, Funktionen in der dritten, Makros in der vierten, usw. Im Allgemeinen wie in normalen IDEs. Ansonsten werden nur die Standard-MQL-Tools hervorgehoben. Das Ergebnis ist, dass bei aktiver Verwendung von OOP der gesamte Code zu einem durchgehenden schwarzen Text wird (ohne Operatoren zu zählen). Sie werden die Namen der Klassen, Objekte und Funktionen nicht sofort erkennen können. Es ist sehr schwer zu lesen. Ich ertappe mich oft bei dem Gedanken, dass es viel besser ist, Standardprimitive zu verwenden, um den Code übersichtlicher zu gestalten (damit er nicht wie eine schwarze Masse aussieht). Aber so sollte es nicht sein.
In anderen Compilern öffnen!!!
 

Schade, dass keiner der Entwickler in diesem Thread antwortet. Ich frage mich, ob sie überhaupt hierher schauen... Auch im Service-Desk bleiben alle Vorschläge meist unbeantwortet (nur Bugs werden beantwortet). Nicht gut.

Aber lassen Sie uns weitermachen.

Von Zeit zu Zeit stehe ich vor dem Problem, dass es nicht möglich ist, den laufenden Expert Advisor/Indikator eindeutig zu identifizieren. Zum Beispiel erstellt und verwendet ein Expert Advisor eine Datei (oder eine globale Variable), die speziell für diesen EA (oder besser gesagt, für diese Instanz) verwendet wird.Und andere EAs sollten diese Datei / globale Variable nicht verwenden, sie haben ihre eigenen. Wie sollte der EA also seine Datei / Variable nach dem Neustart des Terminals oder nach der Neuinitialisierung der Parameter finden?

Wenn die Datei nach dem Namen des EA/Symbols/Zeitrahmens benannt ist, wird jede andere Instanz dieses EAs auf einem ähnlichen Chart diese Datei öffnen. Wenn die Datei nach dem Fenster-Handle benannt ist, wird das Handle nach einem Neuladen nicht mehr gültig sein.

Kurz gesagt, wir brauchen eine eindeutige ID für den EA/Indikator, die sich beim Neuladen nicht ändern würde. Es kann z.B. der Zeitpunkt der Bindung des EAs an das Diagramm sein. Ich schlage vor, diesen Parameter zu MQLInfoInteger hinzuzufügen.

 

Im MetaEditor wollen wir einen Schritt zurückgehen können.

Das heißt, der Aufruf der Funktion "Funktion_B" aus der Funktion "Funktion_A":

bool Function_A(void)
  {
   Function_B()
   return(true);
  }

Nach Anklicken des Textes"Funktion_B" und anschließendem Klicken auf die mittlere Taste oder Alt+G - wird auf die Funktion_B umgeschaltet. Nach der Überprüfung des Codes ist es notwendig, zum Ort des Aufrufs zurückzukehren - zur Funktion_A. Es gibt jedoch keine solche Funktion. Und das wollen wir auch.

 
Karputov Vladimir:

Im MetaEditor wollen wir einen Schritt zurückgehen können.

Das heißt, der Aufruf der Funktion "Funktion_B" aus der Funktion "Funktion_A":

Nach Anklicken des Textes"Function_B" und anschließendem Klicken auf die mittlere Taste oder Alt+G - wird die Function_B eingeschaltet. Nach der Überprüfung des Codes ist es notwendig, zum Ort des Aufrufs zurückzukehren - zur Funktion_A. Es gibt jedoch keine solche Funktion. Aber wir würden es gerne.

Ja, das wäre praktisch. Schreiben Sie auch an den Servicedesk.

Wir haben schnellen Zugriff auf die Definition(Alt+G). Wir brauchen einen schnellen Wechsel von der Definition zum Hintergrund.

 
Karputov Vladimir:

Im MetaEditor wollen wir einen Schritt zurückgehen können.

Das heißt, der Aufruf der Funktion "Funktion_B" aus der Funktion "Funktion_A":

Nach Anklicken des Textes"Function_B" und anschließendem Klicken auf die mittlere Taste oder Alt+G - wird die Function_B eingeschaltet. Nach der Überprüfung des Codes ist es notwendig, zum Ort des Aufrufs zurückzukehren - zur Funktion_A. Es gibt jedoch keine solche Funktion. Und das wollen wir auch.

Schritt vorwärts Strg+-, Schritt rückwärts Strg+Umschalt+-
 
Vitalie Postolache:
Schritt vorwärts Strg+-, Schritt rückwärts Strg+Umschalt+-
Das stimmt nicht. Das funktioniert nicht.
 
Karputov Vladimir:
Das stimmt nicht. Das funktioniert nicht.

Seltsam, bei mir funktioniert es. Beim Funktionsaufruf Alt+G gedrückt und zur Funktionsdefinition gesprungen, dann Strg+- gedrückt und zurückgesprungen.

Ich habe die Kombinationen oben verwechselt, es ist genau umgekehrt: Schritt vorwärts Strg+Umschalt+-, Schritt rückwärts Strg+-, sorry.

 
Karputov Vladimir:
Das stimmt nicht. Das funktioniert nicht.
Ich habe es versucht. Das funktioniert bei mir. )