Fehler, Irrtümer, Fragen - Seite 2038

 

Die Textausrichtung funktioniert im Strategietester nicht

ObjectSetInteger(chart_ID,name,OBJPROP_ALIGN,ALIGN_CENTER);


 

Es gibt zwei grafische Objekte - vertikale Linien. Sie müssen dafür sorgen, dass beim Verschieben der einen Linie mit der Maus die andere in einem konstanten Abstand hinterhergezogen wird.

Es ist klar, dass OnChartEvent+OnTimer erledigt ist. Aber das Einzige ist, dass die gezogene Linie für das Auge spürbar zuckt - eine Verzögerung. Ein Millisekunden-Timer und ChartRedraw sind nicht hilfreich.

Ist es möglich, diese primitive Aufgabe in MT5 reibungslos zu lösen? Oder machen architektonische Eigenheiten dies unmöglich?

Interessanterweise wird die Glätte auf der Leinwand im Handumdrehen erreicht. Bei grafischen Objekten funktioniert das jedoch nicht.


Wenn ich das Objekt "Fibonacci-Zeitzonen" einstelle, bewegen sich alle vertikalen Linien gleichmäßig, wenn ich sie mit der Maus bewege. Das grafische Objektmapping-System kommt damit problemlos zurecht. Aber sobald MMS verwendet wird, um ein Objekt nach dem anderen hochzuziehen, ist es mit der Geschmeidigkeit vorbei.

 
fxsaber:

Ist es möglich, diese primitive Aufgabe in MT5 reibungslos zu lösen? Oder gibt es architektonische Gründe, die dies unmöglich machen?

Internes oder internes DND und Neuzeichnen bei MouseMove-Ereignis während des Ziehens.

Sie können den Rückstand natürlich nicht zu 100 % beseitigen, aber zu 99 %.

 
Комбинатор:

Hausinternes oder hausinternes DND und Neuzeichnen beim MouseMove-Ereignis während des Ziehens.

Natürlich kann man den Lag nicht zu 100 % beseitigen, aber zu 99 %.

Die Frage ist: Warum? Es scheint, dass etwas entweder unfertig in mt5 ist oder im Gegenteil, es wurde für die Produktivität abgeschnitten. Ich kann das Terminal mit steifen Grafiken nicht für den manuellen Handel verwenden, es ist nur für Maschinen geeignet. Das Terminal selbst ist gut, Tester wieder für bestimmte Aufgaben, aber es hält nicht Charting überhaupt. Die Vor- und Nachteile sind 50/50.

Vielleicht werden sie die Situation irgendwann in der Zukunft verbessern.

 
Vitaly Muzichenko:

Ein Terminal mit engen Grafiken ist für den manuellen Handel nicht geeignet

Als ob jeder auf den ersten Pentiums sitzen würde. Die Idee ist, dass jeder, der mit mindestens 10k Zel handelt, mindestens seit diesem Jahr einen Computer hat. Es geht darum, die Leistung des Terminals zu verbessern.

Vielleicht sollten wir zwei Terminals einrichten - für die Reichen und für die Armen, sonst wäre es ungerecht.

 
Anton Ohmat:

Als ob jeder auf den ersten Pentiums sitzen würde. Die Idee ist, dass jeder, der mit mindestens 10k Zel handelt, mindestens seit diesem Jahr einen Computer hat. Es geht darum, die Leistung des Terminals zu verbessern.

Vielleicht sollten wir zwei Terminals einrichten - für die Reichen und für die Armen, sonst wäre es ungerecht.

Ich habe einen Computer, der nicht aus dem letzten Jahrhundert stammt.

 
fxsaber:

Ist es möglich, diese primitive Aufgabe in MT5 reibungslos zu lösen? Oder machen architektonische Eigenheiten dies unmöglich?

Es ist möglich, wenn Sie die Zeilen mit mql verschieben, ein Beispiel aus meiner Praxis:
 
Yury Kulikov:
Vielleicht, wenn Sie die Zeilen mit mql-Tools verschieben, ein Beispiel aus meiner Praxis:
Also nicht mit Bildern, sondern mit Code. Im Extremfall ein Algorithmus.
 
Artyom Trishkin:
Also nicht mit Bildern, sondern mit Code. Als letzten Ausweg gibt es einen Algorithmus.

So combinator bereits gesagt :), verfolgen Sie das Ereignis MouseMove und dann gleichzeitig bewegen Sie die eingestellten Linien und dann ChartRedraw, es stellt sich heraus, reibungslos und ohne Verzögerungen.

 
Yury Kulikov:

So combinator bereits gesagt :), verfolgen Sie das Ereignis MouseMove und auf sie gleichzeitig verschieben Sie die eingestellten Linien und dann ChartRedraw, es stellt sich heraus, reibungslos und ohne Verzögerungen.

Und wie unterscheidet sich in diesem Fall MouseMove prinzipiell vom Millisekunden-Timer? Außerdem werden die Parameter MouseMove (x, y) nicht verwendet. Ich denke, dass Sie aufgrund einer geringen Anzahl von grafischen Objekten eine Glättung haben. Ich habe z.B. ein Skript in MetaTrader 4 in einer Schleife laufen lassen und es hat irgendwie noch schneller funktioniert