[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 317

 
kon12 писал(а) >>

Leute, ein Ratschlag an alle, die es wissen. Nehmen wir an, ich zeichne einen benutzerdefinierten Indikator in das Hauptdiagramm. Dann verwende ich einen anderen benutzerdefinierten Indikator, der den ersten Indikator über die iCustom-Funktion einbezieht. Können wir sie so verbinden, dass der Parameter des ersten Indikators im Diagramm automatisch im zweiten benutzerdefinierten Indikator geändert wird?

Ich verstehe die Aufgabe nicht ganz, aber vielleicht reicht das:

MT Analytics Hilfe - Technische Indikatoren

- So können Sie z.B. den Indikator Gleitender Durchschnitt aus dem Awesome Oscillator erstellen und erhalten so zusätzlich zum AO eine Signallinie. Dazu sollten Sie zuerst den AO-Indikator zeichnen und dann den MA per Drag`n`Drop auf den AO-Indikator ziehen und in den Einstellungen im Feld "Anwenden auf" die Option "Daten des vorherigen Indikators" auswählen (Indikator auf die Daten des vorherigen Indikators anwenden). Wenn Sie "First Indicator Data" wählen, wird der MA auf der Grundlage der Daten des ersten Indikators erstellt, der nicht unbedingt AO sein muss.

 
kon12 >> :

Leute, ein Ratschlag an alle, die es wissen. Nehmen wir an, ich zeichne einen benutzerdefinierten Indikator in das Hauptdiagramm. Dann verwende ich einen anderen benutzerdefinierten Indikator, der den ersten Indikator über die iCustom-Funktion einbezieht. Kann ich sie so verbinden, dass der Parameter des ersten Indikators im Diagramm automatisch im zweiten benutzerdefinierten Indikator geändert wird?

Wenn Sie den Quellindikator über iCustom aufrufen, werden Sie ihn irgendwo speichern, also markieren Sie ihn als Indikatorpuffer und geben Sie den Quell- und den umgewandelten Indikator als zwei Puffer eines Indikators aus, dann ist es einfacher, ihn auszuführen und Parameter zu ändern. Wenn Sie herumspielen wollen, können Sie globolvariables verwenden.

 
Urain >> :

Sie müssen es nicht löschen, sondern können einfach die Parameter über ObjectSet ändern.

ps Im Allgemeinen muss Ihr Fall jedoch von Fall zu Fall geprüft werden.

Ich danke Ihnen!

 
kon12 >> :

Leute, ein Ratschlag an alle, die es wissen. Nehmen wir an, ich zeichne einen benutzerdefinierten Indikator in das Hauptdiagramm. Dann verwende ich einen anderen benutzerdefinierten Indikator, der den ersten Indikator über die iCustom-Funktion einbezieht. Kann ich sie so binden, dass sich der Parameter des zweiten benutzerdefinierten Indikators automatisch ändert, wenn sich der Parameter des ersten Indikators im Diagramm ändert?

Ich verstehe, dass Sie den Wert des Eingangsparameters des Indikators im Terminal manuell ändern wollen und die anderen Indikatoren auf diese Änderung reagieren?

Dann ist die Antwort klar: Die Verwendung von iCustom wird nicht funktionieren. Diese Funktion funktioniert folgendermaßen - der Indikator mit den von Ihnen angegebenen Parametern wird im Programmspeicher (nicht im Chart) "erstellt" ("als ob", d.h. er wird nicht geplottet), und beim ersten Aufruf wird er mit den Funktionen init() und start() verarbeitet, d.h. wenn es einen "Standard"-Zyklus wie for(i=limit;i>=0;i--) gibt, werden alle erforderlichen Balken berechnet. Beim nächsten Aufruf von iCustom wird die Neuberechnung nicht durchgeführt (wenn sie nicht ausdrücklich im Indikatorkörper angegeben ist). In MQL gibt es keine separaten Puffer für solche Indikatoren. Wenn Sie also die Werte speichern müssen, ist es sinnvoll, sie in einen separaten Puffer zu kopieren. Auch in MQL gibt es keinen direkten Zugang zu den Diagrammen (der aber IMHO nützlich wäre).

 

Vielen Dank für Ihre Antworten, ich habe vielleicht nicht genau formuliert, was ich will. Lassen Sie mich erklären: Ich verwende einen ZigZag-Indikator auf dem Hauptdiagramm. Außerdem verwende ich meinen eigenen Indikator, der die Wellenlängen anzeigt, die durch das Zickzack angezeigt werden. Der Indikator greift auf den Zickzackkurs über iCustom zu. Aber wenn ich die Parameter des Zickzackkurses ändere, sollte ich den zweiten Indikator eingeben und dort die gleichen Parameter einstellen. So ändern Sie die Parameter nur im Zickzack. In Metastocke überlagere ich einfach den zweiten Indikator mit dem ersten und das war's.

 
Da ich die Frage richtig verstanden zu haben scheine, werde ich sie erneut beantworten: mit Metatrader und MQL - auf keinen Fall
 
alsu >> :
Da ich die Frage richtig verstanden zu haben scheine, antworte ich noch einmal: mit Metatrader und MQL, auf keinen Fall

Nein, warum? Sie können Parameter über eine globale Variable oder ein Graph-Objekt übergeben. Sie brauchen nur ein Häkchen, um es neu zu zeichnen, aber Sie können es selbst tun.

Natürlich wäre es besser, die Indizes zu vereinen.

 
Svinozavr >> :

Nein, warum? Sie können Parameter über eine globale Variable oder ein Graph-Objekt übergeben. Man braucht nur ein Häkchen, um es neu zu zeichnen, aber man kann es machen, wissen Sie.

Natürlich wäre es besser, die Indizes zu vereinen.

Nun, damit es "das" ist, ist es kein Anfängerniveau... Generell habe ich mich lange gefragt, ob es nicht eine universelle Umgebung gibt, in der jeder Indikator seine echten Puffer (also die, in denen "eigentlich" die Daten gespeichert werden) in einem gemeinsamen Adressraum oder schlimmstenfalls als globale Variablen registrieren kann. Dann wäre es möglich, auf Diagramme direkt von MQL anstelle von iCustom anzuwenden... Ich bin immer noch nicht dazu gekommen, es zu tun.

 
alsu >> :

Nun, um es "das" zu nennen, ist es ein bisschen jenseits des Anfängerniveaus... Generell habe ich lange überlegt, ob man nicht eine universelle Umgebung schaffen sollte, so dass jeder Indikator seine echten Puffer (also die, in denen "echte" Daten gespeichert werden) in einem gemeinsamen Adressraum oder schlimmstenfalls in Form von globalen Variablen registriert. Dann wäre es möglich, auf Diagramme direkt von MQL anstelle von iCustom anzuwenden... Ich bin immer noch nicht dazu gekommen, es zu tun.

Das wäre doch cool. Sehr einschränkend ist die Unfähigkeit, die Indikatoren normal zu synchronisieren. Ich muss sie entweder synchronisieren, wie ich geschrieben habe, oder sie kombinieren.

Das Zeichenproblem kann jedoch nicht mit den üblichen Mitteln gelöst werden, es sei denn, man zeichnet verschiedene Unterkurven von einem Indikator aus. Und wahrscheinlich nicht einmal mit internen Mitteln. Wenn wir in der Lage wären, einen Puffer an eine Fensternummer wie ein gr.object zu binden, oder sogar ein solches Fenster aus dem Indikator zu erzeugen, dann... Nun, das ist einfach nicht zum Thema passend.

===

Aber die Idee der Umwelt ist sehr praktisch. Haben Sie irgendwelche Ideen dazu?

 
Vielleicht ein eigenes Thema?