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
Der EA benötigt Zugriff auf einen Indikator. Sie können ihn auf mindestens drei Arten erhalten: IndicatorCreate(...) oder iCustome(...) oder, wenn es sich um einen Standardindikator handelt, zum Beispiel iMA(...).
Soweit ich weiß, müssen Sie bei der Verwendung einer beliebigen Variante das resultierende Handle explizit freigeben (IndicatorRelease).
Es geht um die Wahl der Art und Weise, wie der Indikator aufgerufen wird. Was sind die Vor- und Nachteile der einzelnen Methoden? Vorrangiges Interesse an der Schnelligkeit der Bearbeitung.
IndicatorCreate - für die Standardindikatoren, so dass sie im Falle des Handgelenks die Analoga des iMA-Aufrufs sind. iCustom - für "benutzerdefinierte" benutzerdefinierte Indikatoren. D.h. im Wesentlichen unterschiedliche Dinge.
Die Aufrufgeschwindigkeit von iMA und IndicatorCreate(IND_MA) sollte vergleichbar sein, aber ich habe es nicht überprüft.
Was IndicatorRelease betrifft, so ist es sinnvoll, es aufzurufen, wenn Sie nach der Berechnung nicht zu diesem Indikator zurückkehren müssen. Ich habe solche Situationen nicht - wenn ein Indikator benötigt wird (mit einem bestimmten Satz von Parametern), dann wird er für zusätzliche Berechnungen/Neuberechnungen benötigt, und wenn sich die Eingangsparameter des Skripts ändern, dann wird alles neu initialisiert und neue Handles werden erstellt.
In der Tat ist der Aufruf von IndicatorRelease in 99 % der Fälle ein logischer Fehler des Programmierers.
Die Erstellung eines Indikators ist eine der teuersten Operationen, die sehr tiefe Mechanismen ihrer Berechnung auslöst. Der Versuch, einen Indikator-Handle zu schließen, ist ebenfalls ein sehr kostspieliger Vorgang, wenn man sich die tatsächlichen Abläufe seiner Implementierung vor Augen führt. Das häufige Erstellen und Schließen von Indikatoren zeigt, dass der Entwickler das Wesen der Vorgänge überhaupt nicht versteht.
Es ist sehr leicht zu verstehen.
Tatsächlich ist der Aufruf von IndicatorRelease in 99 % der Fälle ein logischer Fehler des Programmierers.
Die Erstellung eines Indikators ist eine der teuersten Operationen, die sehr tiefgreifende Mechanismen zur Berechnung auslöst. Der Versuch, einen Indikator-Handle zu schließen, ist ebenfalls ein sehr kostspieliger Vorgang, wenn man die tatsächlichen zugrunde liegenden Prozesse seiner Implementierung bedenkt. Das häufige Erstellen und Schließen von Indikatoren zeigt, dass der Entwickler das Wesen der Vorgänge überhaupt nicht versteht.
Es ist sehr leicht zu verstehen.
Lassen Sie mich in das Gespräch eingreifen und sagen: die Mechanismen der m-Programm, Terminal, Forex (in der Tat, warum sind wir hier versammelt)
Der Grund, warum wir hier sind, sind einfache Wahrheiten, also was hindert uns daran, sie zu verstehen und den Rubel zu mähen - oder die Software, die wir verkaufen wollen,
Und wenn es keine Möglichkeit gibt, dies zu tun, müssen wir schweigen, bis ein "Wunder" geschieht!
Lassen Sie mich in das Gespräch eingreifen und sagen: die Mechanismen des Programms, das Terminal, Forex (im Grunde, was wir hier sind für)
Wir müssen sie verstehen und Rubel verwenden - oder Software, die wir verkaufen werden,
Wir sollten schweigen, bis ein "Wunder" geschieht!
Ein schönes Beispiel für unverständlichen Gedankenfluss. Es ist beneidenswert, dies tun zu können.
Sicherlich ein Jedi der Stufe 80, Meister Yoda meditiert leise am Rande :)
Und es steht außer Frage, dass sie "obdachlosen Kindern in Notlagen helfen" (ab 12 Stühlen).
Vor nicht allzu langer Zeit wurde mein Arbeitscode nicht mehr kompiliert.
Es ist die Schuld des Codes in der Standardbibliothek:
Offensichtlich wegen des Codes, der in meinem Code steht:Wie kann ich das "verdauen", damit mein Programm wieder funktioniert? Ich bin mir nicht sicher, was sich in der neuen Version von MQL geändert hat.
Dürfen importierte Funktionen nicht den gleichen Namen haben wie die eingebauten? Wie soll man mit dem Leben weitermachen?
Wie kann ich das "verdauen", damit mein Programm wieder funktioniert? Ich verstehe nicht ganz, was sich in der neuen Version von MQL geändert hat.
fügen Sie einfach einen Parameter in
fügen Sie einen einfachen Parameter in
Betrachten wir es als eine Funktion oder einen Auto-Bug.
Sie können sie herausnehmen und in eine separate Bibliothek packen, die Sie umbenennen.
Sie könnten auch versuchen, nach benannten Leerzeichen zu fragen, aber das ist wahrscheinlich nutzlos.