Fehler, Irrtümer, Fragen - Seite 2190
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
Nach dreiminütigem Experimentieren bin ich zu dem Schluss gekommen, dass die Verschiebung von
und nicht von der aktuellen Position aus.
Und? Die Anzahl der sichtbaren Balken ändert sich. Besser wäre es, zu überprüfen, ob das Diagramm mit der Maus bewegt wird. Sie können es fangen. Wenn sich ein Diagramm mit der Maus verschiebt, ist es nicht funktionsfähig.
Ich habe nicht von einer Laufzeitprüfung gesprochen. Wenn Sie den Chart manuell um 100 Balken nach rechts verschieben und dann versuchen, ihn um weitere 10 Balken nach rechts zu verschieben, wird der Offset auf 10 von der im Bild gezeigten Markierung gesetzt. In diesem Beispiel wird die Verschiebung nicht um 10 nach rechts, sondern um 90 nach links erfolgen.
Und was die Überprüfung angeht... was bringt es, etwas zu überprüfen, das nicht wie erwartet funktioniert? Genauer gesagt, nicht wie erwartet. Um das Diagramm mehr als einmal zu verschieben, sollte der Versatz von CHART_CURRENT_POS aus erfolgen, und im Beispiel war es CHART_END.
Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests
Fehler, Irrtümer, Fragen
Aleksey Vyazmikin, 2018.04.12 15:43
Wenn ich das Skript oft aufrufe - immer wieder nach der Ausführung - funktioniert der Diagramm-Offset nicht mehr, d.h. die Befehle für diese Aktion werden übersprungen
Darin liegt das Problem.
Ich habe nicht von einer Laufzeitprüfung gesprochen. Wenn Sie den Chart manuell um 100 Balken nach rechts verschieben und dann versuchen, ihn um weitere 10 Balken nach rechts zu verschieben, wird der Offset auf 10 von der im Bild gezeigten Markierung gesetzt. In diesem Beispiel wird die Verschiebung nicht um 10 nach rechts, sondern um 90 nach links erfolgen.
Und was die Überprüfung angeht... was bringt es, etwas zu überprüfen, das nicht wie erwartet funktioniert? Genauer gesagt, nicht wie erwartet. Um das Diagramm mehr als einmal zu verschieben, müssen wir von CHART_CURRENT_POS und im Beispiel von CHART_END abweichen.
Darin liegt das Problem.
Ich habe den Code nicht gelesen. Vielleicht braucht es das so.
Was ich damit sagen will, ist, dass die Diagramm-Offset-Funktion asynchron ist, d.h., wenn sie den Erfolg der Ausführung zurückgibt, geht es nicht um den Diagramm-Offset, sondern um den Erfolg, einen solchen Auftrag in die Ereigniswarteschlange des Diagramms zu stellen. Und das ist nicht dasselbe - das wissen Sie.
Ich spreche also davon, das Ereignis der Ausführung des Diagrammverschiebungsbefehls abzufangen...
Ich wünschte, ich hätte Zeit zum Experimentieren... Aber leider...
Der Profiler zeigt keine Funktionssignaturen an, so dass Sie nicht sofort erkennen können, welche überladene Funktion gemeint ist
D.h. die Liste ist mit __FUNCTION__ gefüllt, während ich __FUNCSIG__ haben möchte.
Helfen Sie, den Beitrag des Entwicklers zu finden, in dem der Quellcode von ArrayResize veröffentlicht wurde. Googeln nach "site:mql5.com/de/forum ArrayResize+reserve" hilft nicht weiter.
Ich erinnere mich, dass es einen Quellcode gab. Darin können Sie die Logik der Implementierung des Reserve-Parameters sofort erkennen.
Helfen Sie, den Beitrag des Entwicklers zu finden, in dem der Quellcode von ArrayResize veröffentlicht wurde. Googeln nach "site:mql5.com/de/forum ArrayResize+reserve" hilft nicht weiter.
Ich erinnere mich, dass es einen Quellcode gab. Sie können die Logik hinter der Implementierung des Reserve-Parameters sofort erkennen.
Der Quellcode oder Pseudocode? Dies sind diametral unterschiedliche Dinge.
Wenn Sie sich nur auf die Tatsache eines Offsets verlassen, können Sie die Karte von Hand verschieben - das ist ein Loch in der Logik...
Sie müssen offenbar den Versatz zum berechneten Balken überprüfen, nicht nur den Versatz. Ich muss nur noch herausfinden, wie man das richtig umsetzt...
Ich habe nicht über die Kontrolle der Ausführung gesprochen. Wenn Sie das Diagramm manuell um 100 Balken nach rechts verschieben und dann versuchen, es mit dem Skript um weitere 10 Balken und ebenfalls nach rechts zu verschieben, wird der Versatz auf 10 von der auf dem Snapshot angezeigten Markierung gesetzt. In diesem Beispiel wird die Verschiebung nicht um 10 nach rechts, sondern um 90 nach links erfolgen.
Und was die Überprüfung angeht... was bringt es, etwas zu überprüfen, das nicht wie erwartet funktioniert? Genauer gesagt, nicht wie erwartet. Um das Diagramm mehr als einmal zu verschieben, müssen wir von CHART_CURRENT_POS abweichen und im Beispiel haben wir CHART_END.
Darin liegt das Problem.
Ich brauche CHART_END, weil wir die Verschiebung in der Schleife nach Daten durchführen sollen, und es ist bequemer, nach Daten entweder vom Anfang oder vom Ende der Daten zu suchen, anstatt von der Mitte...
Quellcode oder Pseudocode? Das sind völlig unterschiedliche Dinge.
Ich glaube, der Quellcode wurde direkt veröffentlicht. Aber selbst wenn es einen Pseudocode gibt, und er wird nützlich sein.
Sie müssen offenbar den Versatz zum berechneten Balken überprüfen, nicht nur den Versatz. Ich muss nur noch herausfinden, wie ich es richtig umsetze...
Ich brauche CHART_END, weil es soll ein Offset in den Zyklus von Daten zu tun, und es ist bequemer, für Daten von entweder den Anfang oder das Ende der Daten zu suchen, anstatt von der Mitte ...
Es gibt also kein Problem. Die Verschiebung wird nur dann unbemerkt bleiben, wenn Sie versuchen, die gleiche Anzahl von Takten 2 oder mehr Mal bei unveränderter Periode zu verschieben.
Ich hoffe, ich habe nicht vergessen, die automatische Verschiebung des Diagramms zu deaktivieren.
Es gibt also kein Problem. Die Verschiebung wird nur dann unbemerkt bleiben, wenn Sie versuchen, die gleiche Anzahl von Takten 2 oder mehr Mal mit der gleichen Periode zu verschieben.
Ich hoffe, ich habe nicht vergessen, den Autoskill zu deaktivieren?
Der automatische Bildlauf ist natürlich deaktiviert.