Why are the indicators (lines, arrows, histograms) flickering in the MT5 terminal? - page 9

Eugene Myzrov
915
Eugene Myzrov  
Andrey Khatimlianskii: Flicker is easily reproduced when the processor is heavily loaded. Run optimization on all local cores and try to remove/create a dozen objects and do ChartRedrow. The swag effect is assured.

Yes, but I would like just the opposite, not to reproduce flicker, but to stop it, to do something so as not to see this flicker anymore.
And in good conditions, when the processor is not loaded, we could say idle, optimization is not running, i.e. local cores are not loaded either, objects are not created and ChartRedraw() is not called. And in this tranquil state of the computer, the "garlands" keep blinking!

The developers didn't even answer, is this blinking unrecoverable and will be eliminated only in future versions of MT5 or maybe the indicator developers have wrong hands and don't understand something during the development of indicators for MT5...

Aleksey Vyazmikin
18133

Not only the custom indicators flicker, but also the built-in tools, e.g. "Regression Channel".

Eugene Myzrov
915
Eugene Myzrov  

Aleksey Vyazmikin: Мерцают не только пользовательские индикаторы, но и встроенные инструменты, к примеру "Канал регрессии".

If so, then there is nothing to guess, it means that this problem cannot be solved in principle yet and will be solved in some future versions of MT5. Developers must be honest about it and not make programmers rack their brains about what they are doing wrong and how to deal with it...

Renat Akhtyamov
20844

I've been struggling with this thing for a couple of days.

Tried everything that was advised above.

Didn't help.

The indicator flickers in MT5 for the only reason:

When applying ChartGetInteger(0,CHART_VISIBLE_BARS ...

At least when I set a constant number instead of this function, it stopped flickering.

I may have applied the function in a clumsy way, but nevertheless...
Документация по MQL5: Операции с графиками / ChartGetInteger
Документация по MQL5: Операции с графиками / ChartGetInteger
  • www.mql5.com
Возвращает значение соответствующего свойства указанного графика. Свойство графика должно быть типов datetime, int или bool. Существует 2 варианта функции. 2. Возвращает true или false в зависимости от успешности выполнения функции.  В случае успеха значение свойства помещается в приемную переменную, передаваемую по ссылке последним параметром...
Алексей Тарабанов
11966
Renat Akhtyamov:

It didn't help either ;)))

" ... The function is synchronous - this means that it waits until all commands that have been placed in the timetable queue before it is called. ... "

This is from the documentation. I can add that synchronous function slows down the whole process - until it finishes executing, no other process will start executing, even if resources are available for its execution.

Aleksey Vyazmikin
18133
There is a hypothesis that flicker depends on redrawing of objects by the terminal engine, i.e. if the plot points are outside the visible screen, they have a lower priority for rendering, which manifests itself under computational load on the chart (including the rate of quotation arrival - I noticed that it is with strong and intense movements that flicker occurs).
Renat Akhtyamov
20844
Aleksey Vyazmikin:
There is a hypothesis that flicker depends on the redrawing of objects by the terminal engine, i.e. if the plot points are outside the visible screen, they have a lower priority for rendering, which manifests itself during the computational load on the chart (including the rate of quotation arrival - I noticed that it is with strong and intense movements that flicker occurs).

I really wish the developers would pay attention to this topic.

The flicker of the indicator cannot be eliminated on its own.

Renat Akhtyamov
20844

I think I figured it out.

not a fact but

it looks like some kind of external testing of the current EA which is currently trading on the real account.

my personal conclusions are as follows:

The chart is built exactly 10 hours in advance, we see the ready-made

the rest is behind the scenes on the right and is gradually coming to us on the screen

I have recorded the video, so as not to pounce, but I will show it not here but there, where people would be very interested in it

---

now in pictures

First, the number of bars changes, which is fixed at 1000, but since the calculation is starting from zero, it turns out to be 1001:

at the moment of flickering suddenly the bars become 600 less (and always when flickering the number is the same - 358):

and at the moment of flickering indicator sometimes it happens (I managed to catch the frame on video only):

and the most interesting:sometimes in the moments of flickering graphically shows closed trades from present to future, i.e. they are just open for now, and will be closed somewhere out there - behind the scenes

to see it all with your own eyes, recalculate all bars, not just the last one, and on every tick, clean the buffers before each calculation

Oh, yeah, I forgot.

this thing happens in the evening

my friend the investigator took all the materials, he says it's pretty cool ;)

;))))

----

and now the debate ...

Алексей Тарабанов
11966
Aleksey Vyazmikin:
There is a hypothesis that flicker depends on redrawing of objects by the terminal engine, i.e. if the plot points are outside the visible screen they have a lower priority for rendering, which appears during computational load on the chart (including the rate of quotes - I noticed that flicker occurs during strong and intensive movements).

It was clear to the horse, as Alla Yurievna said. The composter has indicated the cause, albeit indirectly. Flicker occurs when the terminal is overloaded - this is a fact. Overloading occurs for a number of reasons and does not always mean exceeding the computing power of the terminal.