Chatter about the MT5 strategy tester - page 9

 
Andrey Dik:

Sorry, what is it? Overprice?
I work with specialized hosting which can host VPS wherever is convenient for client, NY4, LD4, so expensive but fast (ping 0-1ms).

Overprice is overpriced.

Play around with our VPS visualiser: there's a worldwide network and precise timings with the server topology of all MetaTrader brokers

It costs $10 and all physical cores are available. An important clarification is that we show the net time in the server protocol, not the network ping, which is almost always lower than the actual ping.

 
Yuriy Zaytsev:

You're talking about reading the history from one area - from one folder for a group of terminals, the history is not changing, it's just solved without problems. About customizable mapping has long been known.

That's not it, you downloaded the history from one terminal and then referred to it from other terminals - no big deal... that's not the problem.

Why are you backtracking? :)))

Or have you not read it carefully? The only way to get an argument without betting money? Yuri, you are like a kid, honestly.

 
Andrey Dik:

You see, Yuri, there are solutions! And you could get it all out of the box in MT!

It's just ideology of MT, it doesn't imply several copies of running terminals, so there's no task to have access to single database.

You write 100 ticks from 100 terminals into one file... at one point in time.

Vasiliy Sokolov:


I did this once:https://www.mql5.com/ru/articles/1316#c4_1

It is clear that without DB, the only way to adequately exchange between terminals without dll, is to lock one file and compete for access to it like this tin:

There are craftsmen who organize synchronization of trading environment via WebRequest and intermediate server (see deal copiers in Market).

It is clear that all this is slow and wipes holes on users' hard drives, but what can we do if the database was not given to us (and will not be given).

It's all clear!

We're talking about a standard terminal - which collects ticks in one point ... and if 100 terminals start writing the same tick to one file ! what will happen ?

It's not a problem to read the general history from a mapped resource (folder). (and this history should be formed from one terminal, not from 100 at once)

Andrey maybe you mix up reading from a common HISTOR - and writing to a file?

 
Renat Fatkhullin:

Overprice is an unnecessarily high price.

Play around with our VPS visualiser: there's a worldwide network and precise timings with the server topology of all MetaTrader brokers

It costs $10 and all physical cores are available. An important clarification is that we show the net time in the server protocol, not the network ping, which is almost always lower than the actual ping.

Your hosting is a great specific solution when you want to set up an EA, send it to the hosting and forget about it. The best solution for such tasks.

But it unfortunately is not suitable when you need multiple terminals to access each other. This is partly because the MT terminal does not have the ability to connect to multiple accounts at the same time. There are other tasks which are not compatible with your VPS.

By the way, your VPS visualizer is actively used, great stuff.

 
Andrey Dik:

Why are you backtracking? :)))

Or didn't you read it carefully? Just to argue and not bet money on an argument? Yuri, you're like a kid, really.

you give a sane answer!

HOW YOU WRITE THE TICK from a tool into the database ! which should be stored in the database by ONE record with one ID

You have 100 terminals doing INSERT ...

 
Yuriy Zaytsev:

You record 100 ticks from 100 terminals into one file... at one point in time.

That's exactly what we're talking about!

We are talking about a standard terminal - which collects ticks in one point... and if 100 terminals start writing the same tick to one file ! what will happen ?

it's really not a problem to read the history from a mapped resource ( folder). (moreover this history should be formed from one terminal and not from 100 at once)

Andrew and maybe you mix up reading from the common HISTOR - and writing to the file?

Let's not play dumb, ok? It's not bearded but bald man's face. I made it clear - a shared folder with historical data is created and terminals work fine with it via link, no problems with access. It really saves disk space, which is very limited.
 
Yuriy Zaytsev:

you give a sane answer!

HOW DO YOU WRITE THE TICK from a tool into the BASE! which must be stored in the database by ONE entry with one ID!

You have 100 terminals doing INSERT ...

You don't want to argue! Why should I have to spell out one and the same thing over and over again, and for free?!

A reminder and warning - you are taking a wrong and harmful position for MT development.

 
Andrey Dik:
Let's not make a fool of ourselves, shall we ? It doesn't suit bearded but already bald men. I've made it clear - a shared folder with historical data is created and terminals work fine with it via link, no access problems at all. It really saves disk space, which is very limited.

do you have 100 terminals writing history at the same time ?

--

Please, do not play the fool - I just want an answer.

HOW YOU WILL WRITE TICK to DATABASE from a tool - which shall be stored in the database as ONE record and with ONE ID

you have 100 terminals writing INSERT to the same table at the same time for this tool ...

p.s.

I have a solution - yours is interesting

 
Yuriy Zaytsev:

do you have 100 terminals writing history at the same time ?

--

Please do not make a fool of yourself - we just want an answer!

HOW DO YOU WRITE a TICK from a tool into a DATABASE - it should be stored in the database as ONE record with one ID

you have 100 terminals writing INSERT to the same table at the same time ...

I will answer for Andrei. If we are working with files, then simultaneous INSERT is out of the question. INSERT is performed only by the thread that gets access to the file first. The rest will get INVALID_HANDLE and will not be able to write. The thread that gets the handle will be able to check whether its record already exists in the file or not (assuming that we know how to determine uniqueness of each record). If there is no record, we write it, if the record was already made by someone, we close the handle.

Another question is that making 100 writers and 100 readers at once is at least not rational and may cause problems. If possible, there should be only one writer. Figuring out who to assign as a writer out of 100 threads is also quite possible.

p.s. We will not discuss the question of competitive access to DBMS for more than a dozen pages. Considering that there is no DB in MQL, we will not discuss the subject of discussion either.

 
Vasiliy Sokolov:

I'll answer for Andrei. If we are working through files, we are not talking about simultaneous INSERT. INSERT will be done only by the thread that gets access to the file first. The rest will get INVALID_HANDLE and will not be able to write. The thread that gets the handle will be able to check whether its record already exists in the file or not (assuming that we know how to determine uniqueness of each record). If there is no record, we write it, if the record was already made by someone, we close the handle.

Another question is that making 100 writers and 100 readers at once is at least not rational and may cause problems. If possible, there should be only one writer. Figuring out who to assign as a writer out of 100 threads is also quite possible.

that's my point! and that

Vasily, it's understandable that it's possible to compete for the file from 100 terminals.

the fact that you can copy trades from one terminal to another using the copier is another thing


The question is that the terminal itself (if it is MT4) writes ticks in the file ticks.raw ...

but if he tries to write 100 terminals at a time into the file {TERMIN}\history\{broke}\tisks.raw - a mistake will occur

That's what I don't think Andrei understands.


I can hear the theoretical couch squeaking beneath Andrei again.

p.s.

Andrei, did you go and get some sofa grease?