Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
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 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.
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":
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.
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.
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+-
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.
Das stimmt nicht. Das funktioniert nicht.