Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 656
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
Um ehrlich zu sein, ist das Problem nicht für Anfänger geeignet. Es ist notwendig, alles auf dem Chart in einer Vorlage zu speichern. Dann müssen Sie dieser Vorlage den gewünschten Indikator mit allen Parametern hinzufügen und eine neue Vorlage zurück auf den Chart laden. Das Speichern und Laden der Vorlage ist mit MQL möglich, aber für die Bearbeitung der Vorlagendatei müssen Sie wahrscheinlich eine DLL schreiben, ich bin nicht sicher, dass das benutzerdefinierte Skript Zugriff auf das Schreiben der Vorlagendateien hat.
Operationen mit Graphen
Funktionen für die Arbeit mit Diagrammen. Alle Diagrammoperationen sind nur auf Expert Advisors und Skripte anwendbar.
Die Funktionen, mit denen die Eigenschaften des Diagramms festgelegt werden, dienen dazu, die Befehle zum Ändern an das Diagramm zu senden. Wenn diese Funktionen erfolgreich ausgeführt werden, gelangt der Befehl in die allgemeine Ereigniswarteschlange des Diagramms. Die Änderung des Diagramms erfolgt im Zuge der Bearbeitung der Ereigniswarteschlange des gegebenen Diagramms.
Aus diesem Grund sollte man nach dem Aufruf der Funktionen keine sofortige visuelle Aktualisierung des Diagramms erwarten. Im Allgemeinen wird das Diagramm automatisch vom Terminal aktualisiert, wenn sich etwas ändert, z. B. wenn eine neue Notierung eingeht oder sich die Größe des Diagrammfensters ändert. Für die erzwungene Aktualisierung der Darstellung des Diagramms verwenden Sie den Befehl ChartRedraw().
Funktion
Aktion
ChartApplyTemplate
Wendet auf das angegebene Diagramm eine Vorlage aus der angegebenen Datei an
ChartSaveTemplate
Speichert die aktuellen Diagrammeinstellungen in einer Vorlage mit dem angegebenen Namen
ChartWindowFind
Gibt die Nummer des Teilfensters zurück, in dem sich der Indikator befindet
ChartTimePriceToXY
Konvertiert die Diagrammkoordinaten von der Zeit-/Kursdarstellung in X- und Y-Koordinaten
ChartXYToTimePrice
Konvertiert die X- und Y-Koordinaten des Charts in Zeit- und Preiswerte
ChartOpen
Öffnet ein neues Diagramm mit dem angegebenen Symbol und Zeitraum
ChartFirst
Gibt die Diagramm-ID zurück, die auf die angegebene folgt
ChartNext
Gibt die ID der ersten Karte des Client-Terminals zurück
ChartClose
Schließt das angegebene Diagramm
ChartSymbol
Gibt den Namen des angegebenen Diagrammsymbols zurück
ChartPeriod
Gibt den Periodenwert des angegebenen
Operationen mit Graphen
Ja, genau. Wo gibt es die Möglichkeit, Muster zu bearbeiten (oder einen Indikator hinzuzufügen, wie in MT5)? Nein. Die DLL wird also benötigt, richtig? Oder gibt es andere Methoden, um einen Indikator zu einem MT4-Chart hinzuzufügen, außer der Bearbeitung von Vorlagen?
Die Frage bezog sich auf das Hinzufügen eines Indikators mit Hilfe eines Expert Advisors, hier
Die Aufgabe ist nichts für Anfänger, um ehrlich zu sein. Es ist notwendig, alles, was sich auf dem Chart befindet, in einer Vorlage zu speichern, dann den gewünschten Indikator mit allen Parametern zu dieser Vorlage hinzuzufügen und eine neue Vorlage zurück auf den Chart zu laden. Das Speichern und Laden der Vorlage ist mit MQL möglich, aber für die Bearbeitung der Vorlagendatei müssen Sie wahrscheinlich eine DLL schreiben, ich bin nicht sicher, dass das benutzerdefinierte Skript Zugriff auf das Schreiben der Vorlagendateien hat.
Wie wäre es, wenn ich die benötigten Indikatoren in einem separaten Fenster öffne, alles in einer Vorlage speichere, dann das Programm in einem "leeren" Diagramm ausführe und diese Vorlage öffne?
Was ist, wenn ich die Indikatoren, die ich brauche, in einem separaten Fenster öffne, alles in einer Vorlage speichere, dann das Programm auf einem "leeren" Diagramm ausführe und diese Vorlage öffne, werden dann auch alle Indikatoren geöffnet, oder muss ich das Öffnen der Indikatoren in der Vorlage selbst vorgeben?
Nachdem Sie die Vorlage angewendet haben, werden alle Indikatoren automatisch an das jeweilige Chartfenster angehängt.
Nach der Anwendung der Vorlage werden alle Indikatoren automatisch an dieses Diagrammfenster angehängt.
Ozeane) habe es) danke, andere
Was ist, wenn ich die Indikatoren, die ich benötige, in einem separaten Fenster öffne, alles in einer Vorlage speichere und dann das Programm auf einem "leeren" Diagramm ausführe und diese Vorlage öffne? werden dann auch alle Indikatoren geöffnet? oder muss ich das Öffnen der Indikatoren in der Vorlage selbst vorgeben?
Frage 1 - In den neuen Builds der externen EA-Parameter (ME5 Build 934; MT4 Build 646) werden Kommentare anstelle von Variablennamen angezeigt. Wie wird man sie wieder los? Bitte schlagen Sie nicht vor, keine Kommentare zu schreiben - ich brauche sie (siehe Frage 2).
Frage 2 - Soweit ich verstanden habe, sind Kommentare für den Programmierer selbst gedacht, um seine Gedanken, Notizen und dergleichen während des Schreibens von Code aufzuschreiben. Wenn das so ist (und das wird in Büchern und Kursen gelehrt), dann ist das eine einzigartige Aufgabe. Und uns wird beigebracht: eine Funktion - eine Aufgabe. Wenn diese Aufgabe mit einer anderen Aufgabe verbunden ist - das ist genau das Wortspiel, das für die neuen Gebäude vorgesehen ist -, erhält man eine Vinaigrette. - Ist das die richtige Entscheidung? Wie soll ich sonst meine Kommentare schreiben, die ich brauche und von denen ich nicht will, dass andere sie sehen? Denn wenn sich meine Kommentare in der Öffentlichkeit widerspiegeln, was für Kommentare sind es dann? Das ist eine ganz andere Aufgabe.
Wir haben also zwei verschiedene Aufgaben: "Kommentare für mich selbst beim Schreiben von Code" und "Beschreibung von externen Variablen".
Es scheint, dass für die neue Aufgabe "Beschreibung von externen Variablen" eine weitere unabhängige Compileroption zugewiesen werden sollte. Oder machen Sie zumindest diese Option zur Wahl des Benutzers (obwohl dies bereits grundlegenden Programmierprinzipien widerspricht).
Wenn ich falsch liege, korrigieren Sie mich.
Frage 1 - In den neuen Builds (ME5 Build 934; MT4 Build 646) werden in den externen Parametern des EA Kommentare anstelle von Variablennamen angezeigt. Wie wird man sie wieder los? Bitte schlagen Sie nicht vor, keine Kommentare zu schreiben - ich brauche sie (siehe Frage 2).
Frage 2 - Soweit ich verstanden habe, sind Kommentare für den Programmierer selbst gedacht, um seine Gedanken, Notizen und dergleichen während des Schreibens von Code aufzuschreiben. Wenn das so ist (und das wird in Büchern und Kursen gelehrt), dann ist das eine einzigartige Aufgabe. Und uns wird beigebracht: eine Funktion - eine Aufgabe. Wenn also diese Aufgabe eine andere Aufgabe hat - das ist genau das Wortspiel, das für die neuen Gebäude gedacht ist -, erhalten wir eine Vinaigrette. - Ist das die richtige Entscheidung? Wie soll ich sonst meine Kommentare schreiben, die ich brauche und von denen ich nicht will, dass andere sie sehen? Denn wenn sich meine Kommentare in der Öffentlichkeit widerspiegeln, was für Kommentare sind es dann? Das ist eine ganz andere Aufgabe.
Wir haben also zwei verschiedene Aufgaben: "Kommentare für mich selbst beim Schreiben von Code" und "Beschreibung von externen Variablen".
Es scheint, dass für die neue Aufgabe "Beschreibung von externen Variablen" eine weitere unabhängige Compileroption zugewiesen werden sollte. Oder zumindest diese Option zur Wahl des Benutzers machen (obwohl dies bereits grundlegenden Programmierprinzipien widerspricht).
Wenn ich falsch liege, korrigieren Sie mich.
Daher ist es praktisch, dass externe Variablen für sich selbst und/oder die Benutzer besser lesbar gemacht werden können.
Und um Kommentare zu externen Variablen nicht sichtbar zu machen (nur im Code sichtbar), können Sie sie einfach in eine zweite Zeile schreiben.
Also zum Beispiel, anstatt von:
in zwei Zeilen umwandeln:
Im ersten Fall würden anstelle von Abcd die externen Variablen angezeigt:"Ich möchte bei 1,2345 profitieren",
im zweiten Fall:"AbcD 1,2345".
Es ist schön, wenn man externe Variablen für sich selbst und/oder seine Benutzer besser lesbar machen kann.
Und damit Kommentare zu externen Variablen nicht angezeigt werden (nur im Code sichtbar), kann man sie einfach in eine zweite Zeile schreiben.
Also zum Beispiel, anstatt von:
in zwei Zeilen umwandeln:
Im ersten Fall würden anstelle von Abcd die externen Variablen angezeigt:"Ich möchte bei 1,2345 profitieren",
im zweiten Fall:"AbcD 1,2345".
Ja, das stört mich überhaupt nicht, was sehr praktisch ist. Außerdem verstehe ich, was sie erreichen wollten. Aber man kann nicht eine Aufgabe durchführen und gleichzeitig eine andere abschaffen.
Es ist weniger bequem, in 2 Zeilen zu schreiben, denn wenn es 5-10 Variablen gibt, können wir es aushalten (obwohl, noch einmal, warum sollten wir es aushalten?). Was aber, wenn es etwa 200 dieser Variablen gibt? In diesem Fall wird der Umfang des Codes viel größer.
Wenn Sie hingegen eine andere Option wählen, müssen Sie den Code auf Kosten der Beschreibung der Variablen vergrößern. Vielleicht ist die von Ihnen vorgeschlagene Lösung also optimaler und prägnanter als die Einführung der zweiten Option. Ich bin bereit zuzustimmen.
Wenn ich richtig vermute, ist die Wagenübersetzung eine Einschränkung für die Variablenbeschreibung?
Und ich habe eine zusätzliche Frage:
Wäre es möglich, die Beschreibungen optional in mehreren Sprachen der Wahl zu erstellen? Das wäre sogar noch praktischer. : )) In diesem Fall ist es besser, ohnehin eine optionale Angabe zu machen, als die üblichen Kommentare für die Beschreibung zu verwenden.
Im Übrigen. Diese Beschreibungen von Variablen werden im Optionsdialog ohnehin nur spärlich angezeigt, da die Spaltengrößen keine Dehnung beibehalten undder größte Teil der Beschreibung durch die Enge der Beschreibungsspalte "aufgefressen" wird. Aber es gibt unverhältnismäßig viel Platz für variable Werte. Wir wollten es also besser machen... Aber das ist auch ein Schritt nach vorn. : ))