Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1041
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
Versuchen Sie, die Frage anders zu stellen, vielleicht ist Ihre Frage unklar
Ich werde versuchen, das zu erklären. Aber bedenken Sie, dass ich praktisch kein Programmierer bin.
Wir haben einen Tick-Indikator, der eine Kurve auf den Gebotswerten aufbaut.
Was ich jetzt tun möchte.
Befestigen Sie den Indikator am Diagramm. Ermittelt den ersten Wert von bid1 beim ersten Tick. Merken Sie sich das (ich habe es getan - ich gebe den zweiten Puffer y[0] ein und zeichne seinen Wert in init() auf).
Beim zweiten Tick erhalten wir den zweiten Wert von bid2.
Dann müssen wir die Differenz in Punkten ermitteln. delta=bid1-bid2 (ich habe es so gemacht: delta=x[0]-x[1]).
Addieren Sie nun delta zu y[0] und erhalten Sie den Wert von y[1], der tatsächlich dem Wert von bid2 entspricht.
Die Indikatorkurve sollte mit der gesuchten Kurve identisch sein, aber sie wird anhand der berechneten Werte der Gebotsdifferenzen dargestellt.
Dieser Indikator wird als Vorlage für weitere Berechnungen benötigt.
Werfen Sie keine Steine. Ich habe es so gut ich konnte erklärt.
Ich danke Ihnen.
Ich werde versuchen, das zu erklären. Aber bedenken Sie, dass ich praktisch ein Anfänger in der Programmierung bin.
Wir haben einen Tick-Indikator, der eine Kurve nach Gebotswerten aufbaut.
Was ich jetzt tun möchte.
Befestigen Sie den Indikator am Diagramm. Ermittelt den ersten Wert von bid1 beim ersten Tick. Merken Sie sich das (ich habe es getan - ich gebe den zweiten Puffer y[0] ein und zeichne seinen Wert in init() auf).
Beim zweiten Tick erhalten wir den zweiten Wert von bid2.
Dann müssen wir die Differenz in Punkten ermitteln. delta=bid1-bid2 (ich habe es so gemacht: delta=x[0]-x[1]).
Addieren Sie nun Delta zu y[0] und erhalten Sie den Wert von y[1], der tatsächlich dem Wert von bid2 entspricht.
Die Indikatorkurve sollte mit dem gesuchten Indikator identisch sein, aber sie wird anhand der berechneten Werte der Gebotsdifferenzen dargestellt.
Dieser Indikator wird als Vorlage für weitere Berechnungen benötigt.
Werfen Sie keine Steine. Ich habe versucht, es zu erklären, so gut ich konnte.
Ich danke Ihnen.
Es ist nicht klar, was Sie tun wollen
Hier ist das allgemeine Problem - Sie verwenden Indikatorpuffer als Array zum Speichern von Ticks (Bid), die Größe des Indikatorpuffers ändert das Terminal selbst, und zusätzlich - das Terminal verschiebt die Indikatorpuffer selbst beim Auftreten eines neuen Taktes
sollten Sie ein Array zum Speichern von Ticks und einen Indikatorpuffer zum Zeichnen verwenden
Ich habe einen Code ähnlich dem Ihren erstellt, bei dem ich Ticks in einem Array speichere
Fügen Sie nun Ihre Berechnung zu diesem Code hinzu und zeichnen Sie sie unter Verwendung des Indikatorpuffers Label1Buffer gemäß Ihrer Idee
es ist nicht klar, was Sie tun wollen
Hier ist das genaue Problem - Sie verwenden Indikatorpuffer als Array zum Speichern von Ticks (Bid), die Größe des Indikatorpuffers ändert das Terminal selbst, und darüber hinaus - das Terminal verschiebt die Indikatorpuffer selbst, wenn ein neuer Balken erscheint
sollten Sie ein Array zum Speichern von Ticks und einen Indikatorpuffer zum Zeichnen verwenden
Ich habe einen Code ähnlich dem Ihren erstellt, bei dem ich Ticks in einem Array speichere
Jetzt müssen Sie Ihre Berechnung zu diesem Code hinzufügen und sie mit dem Indikatorpuffer Label1Buffer zeichnen, wie Sie es sich vorgestellt haben
Ich danke Ihnen für Ihre Antwort. Ich werde dich noch ein bisschen quälen.
Soll ich die Berechnung hier hinzufügen?
Hier ist meine Berechnung.
Ich habe es hinzugefügt und nichts passiert.
Es wäre schön, wenn sie die Möglichkeit hinzufügen würden, die Eigenschaften eines anderen Indikators programmatisch zu ändern. Nachdem Sie (programmatisch) einen weiteren Indikator zum Diagramm hinzugefügt haben, können Sie grob gesagt die Farbe, den Stil und die Dicke der Linien festlegen
Verwenden Sie Canvas und zeichnen Sie Karikaturen.
Ich werde noch ein Bild anhängen.
Hinzugefügt und nichts.
so funktioniert das nicht ))))
Um mit Indikatorpuffern in MQL zu zeichnen, muss man einen Wert in den Indikatorpuffer setzen - in meinem Beispiel ist es Label1Buffer (einen Wert zuweisen)
In Ihrem Beispiel weisen Sie Werte nur zu, wenn eine Bedingung erfüllt ist und wenn die Bedingung nicht erfüllt ist? - Es wird also nichts gedruckt werden.
Und noch einmal, ich habe eine "Vorlage" erstellt, in der das Array TickArr die Werte von Ticks Bid enthält, aber in Ihren Bedingungen verwenden Sie die vorherigen Werte des Indikatorpuffers - und wer hat welche Werte in diese Puffer eingegeben?
Versuchen Sie, eine Linie durch den Indikatorpuffer zu ziehen, und vergleichen Sie dann die Ticks.
Ich werde noch ein Bild anhängen.
Was ist, wenn der Winkel umgekehrt ist? Wie würde die Berechnung erfolgen?
Ich werde noch ein Bild anhängen.
das wird nicht funktionieren ))))
Um mit Indikatorpuffern in MQL zu zeichnen, muss man dem Indikatorpuffer einen Wert zuweisen - in meinem Beispiel den Label1Buffer
In Ihrem Beispiel weisen Sie Werte nur zu, wenn eine Bedingung erfüllt ist und wenn die Bedingung nicht erfüllt ist? - Es wird also nichts gedruckt werden.
Und noch einmal, ich habe eine "Vorlage" erstellt, in der das Array TickArr die Werte von Ticks Bid enthält, aber in Ihren Bedingungen verwenden Sie die vorherigen Werte des Indikatorpuffers - und wer hat welche Werte in diese Puffer eingegeben?
Versuchen Sie, eine Linie durch den Indikatorpuffer zu ziehen, und vergleichen Sie dann die Ticks.
Ich habe davor gewarnt, dass ich ein Hacker bin.)
Ich habe es auf diese Weise gemacht.
Jetzt wird das Tick-Diagramm gezeichnet, aber es gibt einige Zeilenumbrüche.
Ich mache eine 4.