Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 619

 

Kann mir jemand erklären, warum ich mit der Funktion"ChartScreenShot()" einen Screenshot von einem Diagramm mache? Es fehlen einige grafische Elemente:

Das wird von Hand gemacht:

 
Vitaly Muzichenko:

Wer kann mir erklären, warum ich mit der Funktion "ChartScreenShot()" einen Screenshot von einem Diagramm mache? Es fehlen einige grafische Elemente:

Das wird von Hand gemacht:

Und wie oft werden diese Objekte in Ihrem Code aktualisiert? Zufällig mit einer Gigahertz-Frequenz (oder so)?
 
Karputov Vladimir:
Und wie oft werden diese Objekte in Ihrem Code aktualisiert? Nicht zufällig mit Gigahertz-Frequenz (oder so)?

Nein, jetzt funktioniert der Markt überhaupt nicht, d.h. keine Ticks, ich habe die Funktion"ChartScreenShot" mit einem Script ausgeführt.

Und so werden sie bei jedem Ticken aktualisiert, aber nicht jetzt. Das Skript ist einfach, erstellen Sie einfach einen Screenshot und das war's, 3 Zeilen Code.

 
Vitaly Muzichenko:

Nein, jetzt funktioniert der Markt überhaupt nicht, d.h. keine Ticks, ich habe die Funktion"ChartScreenShot" mit einem Script ausgeführt.

Und so werden sie bei jedem Ticken aktualisiert, aber nicht jetzt. Das Skript ist einfach, nur einen Screenshot erstellen und das war's, 3 Zeilen Code.

Mein Gedanke ist: Die Objektaktualisierung ist ein asynchroner Befehl, d.h. Sie senden einen Befehl, aber das Ergebnis der Ausführung (oder die Ausführungsgeschwindigkeit) ist unbestimmt. Wenn Sie in einem solchen Moment einen Screenshot machen, können Sie den Moment einfangen, in dem nicht alle Objekte neu gezeichnet werden.
 
Karputov Vladimir:
Mein Gedanke ist: Die Objektaktualisierung ist ein asynchroner Befehl, d.h. Sie senden einen Befehl, aber das Ergebnis der Ausführung (oder die Ausführungsgeschwindigkeit) ist unbestimmt. Wenn Sie in einem solchen Moment einen Screenshot machen, können Sie den Moment einfangen, in dem nicht alle Objekte neu gezeichnet werden.
Ich habe schon mehr als fünfzig Screenshots gemacht, der Effekt ist immer der gleiche, die gleichen Objekte sind nie da.
 
Vitaly Muzichenko:
Ich habe schon mehr als fünfzig Screenshots gemacht, der Effekt ist immer der gleiche, die gleichen Objekte sind nie da.
Haben Sie versucht, alle Indikatoren und EAs zu entfernen und einen Screenshot zu machen?
 
Vitaly Muzichenko:
Ich habe schon mehr als fünfzig Screenshots gemacht, der Effekt ist immer der gleiche, die gleichen Objekte sind nie da.
Ich bin auf dieses Problem gestoßen. Die gewünschten Balkenbereiche werden durch vertikale Linien im Diagramm abgegrenzt. Es war notwendig, Screenshots der gesamten verfügbaren Historie zu haben. Einige vertikale Linien fehlten auf den Screenshots. Es ist mir nicht gelungen, den Grund dafür zu finden. Zunächst wurden zwei Linien gesetzt, die den Bereich abgrenzen, dann wurde das Diagramm so verschoben, dass sich beide Linien in der Nähe der Bildschirmränder befanden, und ein Screenshot wurde erstellt. Manchmal fehlte eine der beiden Zeilen. Ich denke, Vladimir hat Recht mit der Asynchronität.
 
Artyom Trishkin:
Ich bin auf ein solches Problem gestoßen. Auf dem Diagramm befinden sich vertikale Linien, die die gewünschten Balkenbereiche abgrenzen. Es war notwendig, die gesamte verfügbare Geschichte zu überprüfen. Einige vertikale Linien fehlten auf den Screenshots. Es ist mir nicht gelungen, den Grund dafür zu finden. Zunächst wurden zwei Linien gesetzt, die den Bereich abgrenzen, dann wurde das Diagramm so verschoben, dass beide Linien in der Nähe der Bildschirmränder liegen, und ein Screenshot wurde erstellt. Manchmal fehlte eine der beiden Zeilen. Ich denke, Vladimir hat Recht mit der Asynchronität.

Ja, ich habe schon viele Objekte gezeichnet, und nicht ein einziges Mal habe ich die gleichen gesehen, die auf dem Screenshot angezeigt werden. Diese Objekte werden vom Indikator gezeichnet, er zeichnet sehr viel, und diese beiden sind nie da :)

Einige der Objekte werden durch 5-7pp verschoben, wie kann man das bekämpfen?

Was kann also der Ausweg aus dieser Situation sein, um die Vermissten zu skizzieren?

 

Ich habe den Verdacht, dass sich die Pixelung von Original und Kopie ändert. Sehen Sie - Sie haben diese Objekte an den Rändern und die Schriftgröße des EA-Namens scheint unterschiedlich zu sein. Sind Ihre Objekte durch mich aus dem Rahmen gefallen?

Verschieben Sie die Objekte mit Ihren Stiften in die Mitte und wiederholen Sie den Screenshot-Vorgang - wird der Screenshot funktionieren?

 
new-rena:

Ich habe den Verdacht, dass sich die Pixelung von Original und Kopie ändert. Sehen Sie - Sie haben diese Objekte an den Rändern und die Schriftgröße des EA-Namens scheint unterschiedlich zu sein. Sind Ihre Objekte durch mich aus dem Rahmen gefallen?

Verschieben Sie die Objekte mit den Stiften in die Mitte und wiederholen Sie den Vorgang für den Screenshot.

Wie kommt es, dass es wahrscheinlicher ist, dass das Objekt pixelgebunden ist als dass es preis- und zeitgebunden ist?

Hier ist ein Stumpf, der herausschaut, aber im Original ist er unterhalb der Mitte des Diagramms und um die Hälfte des Diagramms nach links verschoben:


Danke, das Objekt ist gefunden, es bleibt nur noch die Aufgabe, es an der Stelle des Originals abzubilden) Alle anderen Objekte sind fast an ihrem Platz.