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
Danke Dabbler. Ich habe den vollständigen EA und Indikator angehängt. Ich habe die Anweisungen zu iCustom gelesen und verstehe alles bis auf den Teil mit den Parametern,
Was geht in den Parametern sind die Werte, die Sie für die externen Variablen in den Indikator verwenden möchten ... in diesem Fall diese ...
Schauen wir uns noch einmal die Hilfedatei an.
und sehen uns die Definition des ... Teils an.
Sie haben 9 externe Variablen und benötigen daher 9 Parameter in der richtigen Reihenfolge und mit dem richtigen Typ
Kinderleicht.
Dann fragen Sie: "Gibt es auch eine Möglichkeit, physisch zu sehen, welche Werte an den EA gesendet werden?"
Ja, natürlich.
Ja, außer dass Null ein Tippfehler ist.
Beginnen Sie mit dem Indikator und generieren Sie den Code.
#define SFX "SFX"
#define, da er konstant ist. Definieren Sie es einmal, damit es keine Tippfehler gibt.Vielen Dank für Ihre Antwort. also
ExtMapBuffer1[i+3] = lower_fractal_7b; could be used as calculated value when reversal fractal is called?
Ja. Die ganze Zeit. Ich spreche von Extern Values. Und ich nehme an, Sie sprechen von Puffern.
Ja, UBZEN,
Ich habe auch versucht, was Sie vorgeschlagen haben und es hat den Wert zurückgegeben, der in meinem Indikator angegeben ist....
Es ist einfach, leicht hinzuzufügen oder zu verwenden, ohne all diese langen Parameter.... besonders die mit Arrays.......
Ich könnte mich beim Kompilieren der Parameter verirren, aber nicht ihr............ die PRO'S hier
Vielen Dank.... Ich habe ein paar Tage lang nach dieser Antwort gesucht
Mit iCustom können Sie auf Ihre Indikatorpuffer zugreifen ... so einfach ist das.
Wenn Sie z.B. einen EA schreiben, dessen Strategie auf 2 Indikatoren basiert, könnten Sie den Indikatorcode in den EA einbauen. Das ist möglich, aber etwas umständlich, da Indikatorpuffer bei EAs nicht funktionieren, Sie müssten Arrays verwenden und sie "serienmäßig" behandeln ... die Alternative ist, die Indikatoren laufen zu lassen und auf ihre Puffer vom EA aus zuzugreifen ... genau das ermöglicht iCustom. Es sind keine Änderungen an den Indikatoren erforderlich ... der EA greift einfach auf die Puffer zu, die er bei den benötigten Shift-Werten benötigt. Im iCustom-Aufruf können auch alle externen Variablen übergeben werden, die zum Einrichten des Indikators benötigt werden.
Lieber RaptorUK (und andere, die vielleicht helfen können),
in dem zitierten Beitrag beschreiben Sie zwei Möglichkeiten, benutzerdefinierte Indikatorwerte in einem EA zu verwenden. Die erste ist mit iCustom, die ich bereits kenne. Die zweite ist eine, über die ich wirklich gerne mehr erfahren würde, weil ich versucht habe, den Code von benutzerdefinierten Indikatoren in den Körper des Hauptindikators zu internalisieren, aber ohne Erfolg. Wenn ich einen Indikator in eine Funktion umwandle und seinen aktuellsten Wert (den Wert in Element 0) zurückgeben lasse, erhalte ich immer den EMPTY_VALUE für eine Doppelvariable anstelle des berechneten Wertes selbst. Ich habe versucht, die iCustom-Funktion zu verwenden und die Verschiebung auf 0, den aktuellsten Wert, zu setzen. Wenn ich dies tue, beginnt das Terminal mit der Rückgabe von 0, verbunden mit dem Fehler STACK OVERFLOW in der Registerkarte Experten. Beim zweiten Ticken gibt es einen Wert zurück, aber nach jedem Paar gedruckter [0]-Werte gibt es einen weiteren STACK OVERFLOW-Fehler, der immer wieder auftritt. Da iCustom bei der ersten Initialisierung den Wert 0 und STACK OVERFLOW zurückgibt (und erst danach beginnt, korrekte Werte zu liefern), kann ich icustom nicht in meinem EA verwenden, da es icustom jedes Mal, wenn Start() aktiviert wird, für ein anderes Symbol aufruft und dafür mehrere benutzerdefinierte Indikatoren aufruft. Dies bewirkt, dass der EA zum Absturz bringt. Ich verstehe nicht, warum ich einen STACK OVERFLOW Fehler erhalte, wenn ich möchte, dass icustom den letzten Wert [0] zurückgibt, aber ich würde es gerne wissen. Ich ziehe es jedoch vor, den Code aller Indikatoren, die aufgerufen werden, zu internalisieren, indem ich sie in Funktionen innerhalb des Hauptindikators umwandle. Sie sagten etwas über die Verwendung von Arrays und deren Handhabung in einer "as series fashion". Könnten Sie das bitte näher erläutern?
Ich habe eine mq4-Datei des klassischen Indikators ADX.mq4 hinzugefügt. Darin wird der Wert des ADX zweimal gedruckt. Einmal durch Icustom und zum anderen durch den ADX-Code, der in eine Funktion innerhalb des ADX umgewandelt wurde. Icustom(ADX) gibt einen Wert zurück, aber ADX(Symbol,Zeitrahmen) nicht. Er gibt immer wieder den gleichen EMPTY_VALUE von 247456457457 oder so ähnlich zurück. Bitte erklären Sie mir, warum dies geschieht und wie ich dies sowohl in einer EA-Vorlage als auch in einer mq4-Indikatordatei beheben kann.
Mit freundlichen Grüßen und vielen Dank im Voraus
PS: Datei anhängen scheint nicht zu funktionieren. Aber Sie können sowohl den CallicustomvsFunction Beispielindikator als auch den ADX-Indikator von http://www.forexfactory.com/showthre...37#post8569537 herunterladen (mein Name ist Codix)
In den obigen Beiträgen(https://www.mql5.com/en/forum/138577/page3#627521 und https://www.mql5.com/en/forum/138577/page3#797401) habe ich Punkte und Worttrenner verwendet.
Das ist seit dem 3. Februar2014 (Build 600) nicht mehr erlaubt. Verwenden Sie einen Unterstrich oder Großbuchstaben.
Verwenden Sie einen Unterstrich oder Großbuchstaben.