Errors, bugs, questions - page 1883

 

Repeated test for speed of CopyXXX charts cache lifting by functions in latest 1596 release compared to previous discussion: https://www.mql5.com/ru/forum/1111/page1871#comment_4867939

Condition description
MetaTrader 4 build 1065
MetaTrader 5 x64 build 1580
build 1596
Hardware and Operation System
Windows 10 Pro x64, Intel Xeon E5-2690 v3 @ 2.60GHz, RAM: 32GB, SSD Disk
Trade server
MetaQuotes-Demo
MetaQuotes-Demo
Limit bars on charts in settings
10 000
10 000
Limit bars in history in settings 10 000 000
No limit
Actual number of bars on EURUSD, M1
3.382 million
6.538 million
Verified symbol and period
EURUSD, M1
Open charts
GBPUSD, M1 only, the script is also thrown on it
Results are cold, after the start of the terminal
#0 pass, 1000 records in 680 msc
#1 pass, 1000 records in 2 msc
#2 pass, 1000 records in 2 msc
#0 pass, 1000 records in 113497 msc
#1 pass, 1000 records in 3 msc
#2 pass, 1000 records in 3 msc
#0 pass, 1000 records in 18288 msc
#1 pass, 1000 records in 7 msc
#2 pass, 1000 records in 2 msc
Results are warm, second run immediately after the first one
#0 pass, 1000 records in 13 msc
#1 pass, 1000 records in 2 msc
#2 pass, 1000 records in 2 msc
#0 pass, 1000 records in 14 msc
#1 pass, 1000 records in 2 msc
#2 pass, 1000 records in 2 msc
#0 pass, 1000 records in 13 msc
#1 pass, 1000 records in 2 msc
#2 pass, 1000 records in 2 msc

Test scripts are attached in the source comment.

The time to lift from the chart disk (6.5 million bars on the disk, 10,000 bars were lifted and 1,000 last bars were requested, cold start) was reduced from 113 to 18 milliseconds. Subsequent requests were already executed in 2 microseconds.
 
Renat Fatkhullin:

Repeated test for speed of CopyXXX chart cache lift by functions in latest 1596 release compared to previous discussion: https://www.mql5.com/ru/forum/1111/page1871#comment_4867939

Condition description
MetaTrader 4 build 1065
MetaTrader 5 x64 build 1580
build 1596
Hardware and Operation System
Windows 10 Pro x64, Intel Xeon E5-2690 v3 @ 2.60GHz, RAM: 32GB, SSD Disk
Trade server
MetaQuotes-Demo
MetaQuotes-Demo
Limit bars on charts in settings
10 000
10 000
Limit bars in history in settings 10 000 000
No limit
Actual number of bars on EURUSD, M1
3.382 million
6.538 million
Verified symbol and period
EURUSD, M1
Open charts
GBPUSD, M1 only, the script is also thrown on it
Results are cold, after the start of the terminal
Results are warm, second run immediately after the first one

Test scripts are attached in the source comment.

The time to lift from the chart disk (6.5 million bars on the disk, 10,000 bars were lifted and 1,000 last bars were requested, cold start) was reduced from 113 to 18 milliseconds. Subsequent requests were already executed in 2 microseconds.

Well done!
 
Renat Fatkhullin:

A re-test of the speed of the CopyXXX chart cache raising functions in the latest 1596 release compared to the last discussion: https://www.mql5.com/ru/forum/1111/page1871#comment_4867939

Better redo on SymbolsTotal.
 
fxsaber:
It's better to change it to SymbolsTotal.

CopyTicks is not asynchronous in scripts and Expert Advisors. In fact, in this case we cannot strictly speak about the asynchrony of these functions. In the CopyXXX indicators the functions work in the mode "output what is at once without delay, and in parallel set the background swap mode".

MQL_MEMORY_USED does not lie, because it shows 1 Mb of used memory. The program itself has only MqlTick Ticks[] for 2000 elements, which gives 52 bytes * 2000 = ~100 kb of data. Plus the rest small data adds up to about a megabyte. And rounding up to megabyte should not be forgotten.

Raised caches belong to terminal, not MQL5 program.
 
Renat Fatkhullin:

CopyTicks is not asynchronous in scripts and EAs.

That code in SD is parsed, because not everything is smooth.

I meant that it would be good to check Copy-functions not on one symbol, but on all from Market Watch.

 

Alpari-MT5 trading server

Why in the tick history of FOREX symbols are there duplicate ticks (bid and ask are equal)?

The tester chases EAs by duplicates, and there are half of them. Is it necessary to get the corresponding performance drop by half?

 
Please add "Positions" display mode to the MT5 tester single run report as well.
 
Comments not relevant to this topic have been moved to "FAQ on the Signals service".
 

I don't know how to reproduce it, but I've encountered it several times in 1598.

I start debugging on CTRL+F5. I get to DebugBreak and take my time at all looking at variable values, dreaming about something. And after a while the Visualizer "Doesn't respond" and then the editor "Doesn't respond". I have to kill it via TaskManager.

 
fxsaber:

I don't know how to reproduce it, but I've encountered it several times in 1598.

I start debugging on CTRL+F5. I get to DebugBreak and take my time at all looking at variable values, dreaming about something. And after a while the Visualizer "Doesn't respond" and then the editor "Doesn't respond". I have to kill it via TaskManager.

We'll have to sort it out.