My approach. The core is the engine. - page 78

 
Nikolai Semko:
https://www.mql5.com/ru/docs/runtime/running

Okay. It's clearer now. So, there is no choice. We need to move the Engine to the EA and adjust the movement of GUI between charts. Otherwise, the more indicators on the chart, the more sluggish the engine will be.

 
Реter Konow:

Okay. It's clearer now. So, there is no choice. We need to move the Engine to the EA and adjust the movement of GUI between charts. Otherwise, the more indicators on the chart, the more sluggish the engine will be.

Why is this?

 
Реter Konow:

Well, I put a dash in the name. What do you suggest?

Something's missing, the last listing

#include<Connection  Properties.mqh>
#include<External  Connection.mqh>

Well, that's up to you, of course. But I always get a lot of negative feelings when I download something with spaces in it.

 
Vasiliy Sokolov:

Why is that?

Judging from the documentation, all indicators on the same chart work in a common thread. That is, the engine will share its thread with the other indicators of the user. In addition, even on its own, it is slower than the EA.

 
Nikolai Semko:

-Is it feasible to use Peter's approach to work more efficiently as an expert because of the reduced workload of the stream in which he works?

The question is rather academic. It does not make sense to multiply threads after a certain point. Multithreading being crowded out and constant context switching have a non-trivial effect on performance. I.e. the fact that there are several threads is not a guarantee that something will be processed faster. The user friendliness is more important here because the window is rendered in another indicator thread, the interface will not get bogged down during long EA operations.

 
pavlick_:

Something's missing, last listing

Well, that's up to you, of course. I always get a lot of negative vibes when I download something with gaps in it.

Sorry about the problem.

I'll send you the corrected files now.

 
Реter Konow:

Judging from the documentation, all indicators on the same chart work in a common thread. That is, the engine will share its thread with the other indicators of the user. In addition, even by itself, it works slower than the Expert Advisor.

If we estimate the probability: how many indicators will be loaded to the Expert Advisor window? I do not think so many. Is it worth redesigning the system because of the edge cases?

 
For me, I'd rather have the interface sticking and slowing down than the calculation part of the EA, because the EA is the boss and the interface is just an errand boy.
 

The first file is an EA. Open, compile, save in Expert folder.

The second and third file should be placed in the inludes folder.

Place the fourth file in the indicators folder.

//-----------------------------------------------

Put the Expert Advisor on the chart

Put the DRIVE indicator on the chart

//-----------------------------------------------

 
Vasiliy Sokolov:

If you estimate probabilistically: how many indicators will be loaded into the EA window? I don't think it will be many. Is it worth redesigning the system because of edge cases?

Maybe so, but I cannot bear when something slows down and have to accept it. In this case, slow scrolling is an inevitability, and it really gets on my nerves...