MetaTrader 5 trading strategy tester ideology: agents - page 4

 

It's all immensely cool.

But why? Does anyone need it, apart from a dozen people who are into programming rather than trading?

=========================================================================

G: Enable public access. - Public access enabled.
G: See... Someone in Sichuan province, China, is using his computer to turn our lights on and off.
P: Oh, that's handy. Here's a question... Why?
G: Because we can.

(c) The Big Bang Theory

 

Well, let's face it, farsighted analysis is first and foremost about trading. That is why I ask for help from mid-level programmers, not programmers. They, for sure, can program everything.

 
timbo:

It's all immensely cool.

But why? Does anyone need it, apart from a dozen people who are into programming, not trading?

Remote agents are a side effect of taking the tester out of the terminal. If you do not need it, just do not use this function.

With the new functions, it will be possible to make such mass calculations, which ordinary users could not even dream of before. A calculation supercomputer can now easily be set up on any network in a matter of minutes.


By the way, in a little while we will announce a new service for selling computer power via MQL5.community. That is, any participant can sell his or her calculation hours on the agents.

For example, put up 4 agents on your quad-core for public sale from 01:00 to 07:00 at night. Packages of "settlement resources" can be bought by anyone directly from our website. The buyer buys a package and the money, minus our commission, is transferred to the sellers' accounts in proportion to the resources used.

 
Renat:

Remote agents are a side effect of taking the tester outside the terminal. If you don't want it, just don't use it.

With the new features, it will be possible to do mass calculations that ordinary users would never have dreamed of before. A calculation supercomputer can now easily be set up on any network in a matter of minutes.


By the way, in a little while we will announce a new service for selling computer power via MQL5.community. That is, any participant can sell his or her calculation hours on the agents.

For example, put up 4 agents on your quad-core for public sale from 01:00 to 07:00 at night. Packages of "settlement resources" can be bought by anyone directly from our website. The buyer buys a package and the money, minus our commission, is transferred to the sellers' accounts in proportion to the resources used.

Super cool!

I understand that you will be sharing the runs and quotes for the runs will be copied or used those that are in the agent?

 
SProgrammer:


I understand that you will be sharing the runs, and the quotes for the runs will be copied or used those that are on the agent?

The agent is a single self-sufficient exe file with no data of its own.

It can cache the history of quotes and symbols on its own. When receiving a task, it checks if the history is correct and downloads it if necessary. In most cases on multiple runs the download will be a one time job.

 
Renat:

The agent is a single self-sufficient exe file with no data of its own.

It is able to cache the history of quotes and symbols on its own. When it receives a task, it checks if the history is correct and downloads it if necessary. In most cases on multiple runs the download will be a one time job.

OK, thank you, that makes sense now.

 
Renat:

By the way, in a little while we will announce a new service for selling computer power through MQL5.community. That is, any participant can sell his or her computing hours on agents.

Can you find out more about how this is done with protecting agents (can we disable dll calls for a specific agent?) and protecting EA code (because its code is loaded on third-party hardware).

 
lea:

Can we find out more about protecting agents in this case (can calls to the dll for a specific agent be forbidden?) and protecting EA code (since its code is loaded on third-party hardware).

Security mechanisms:

  • fully encrypted with traffic compression network protocol between client terminal and agent
  • password access
  • possibility to specify a list of IP addresses from which connections to the client terminal are allowed
  • only local agents can use the DLL with a permission in the terminal
  • the passed expert code is never saved on the agent's disk, but is transmitted in a converted form that cannot be dumped
  • the agent does not know the expert's name and does not save calculation results on the disk (this minimizes the amount of information left after the calculation)
  • agent itself is protected against disassembling or modification
 

A fairly common home network scheme:

--- router (NAT)

k1 k2 k3 k4 ...

Interested in the possibility of distributing the ball through the mcl5 service.

k1 is a working machine, but k2-x can be used...


They are constantly in operation, but there are also forced breaks.

How will this affect service in general, and billing in particular?

Possibility of balancing, i.e. there are three agents on k3, k3 is temporarily overloaded,

and one or two agents should be slowed down, k3 is free, all agents are on again...

 

Each MetaTrader 5 test agent opens one local TCP port and waits for connection from the client terminal, which acts as a dispatcher (agentrunner). To give access to an agent service via firewall/router, you need to configure routing accordingly (or simple port mapping).

For example, in a local network there are 3 computers with three agents on the ports 192.168.0.20:2000, 192.168.0.21:2001, 192.168.0.22:2002 and a router with a static IP address of xxx.xxx.xxx.xxx.

In that case you need to configure such rules on the firewall/router:

  • forward an incoming connection on port 2000 to 192.168.0.20:2000
  • incoming connections on port 2001 must be forwarded to 192.168.0.21:2001
  • incoming call on port 2002 redirect to 192.168.0.21:2002
Depending on firewall functionality, you can specify more detailed rules controlling IP addresses of the terminal so that only connections from correct addresses are allowed.
Reason: