You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Creating a filtered analogue from a custom symbol to speed up in Tester.
It is really fast in Tester. Ticks became 10 times less. And the speed has increased accordingly
https://www.mql5.com/ru/forum/64405/page3#comment_7721376
Thanks to @fxsaber
Nice correction.
Another source of ticks.
cTrade is good, but what about InteractiveBrokers? They have some of the cheapest prices for data. Was there a connector like that available?
No.
Good afternoon.
I was rewriting scripts for testing on a regular stock exchange (not forex). In addition to rewriting some things for myself, I came across the fact that in the file ticks.mqh function StringToDouble, which is used to translate the price, does not take into account the case that the price can be without a point at all. I corrected it for myself. But maybe it will be interesting for you to know this and correct it for yourself too.
Good afternoon.
I was rewriting scripts for testing on a regular stock exchange (not forex). In addition to rewriting some things for myself, I came across the fact that in the file ticks.mqh function StringToDouble, which is used to translate the price, does not take into account the case that the price can be without a point at all. I have corrected it for myself. But maybe it will be interesting for you to know this and correct it for yourself too.
I was surprised that you understood the code. Thanks for the bug report, I fixed it.
return(point ? Res / TenPow[Pos - point] : Res);Yes, I corrected it for me almost the same way.
It may not be useful for you, but since we are talking about it, I'll write about a couple of peculiarities that I've changed for myself. It mainly concerns the case if a rather slow processing of all characters was started, stopped halfway through and then continued.
1. ThirdPartyTicks[i].ToCustomSymbol(Sync, ...) is called in the CreateAllSymbols function. This will cause this.FilesOffline.Refresh() to twitch at each symbol; which can be slow, especially if there are thousands of files and the total size is tens of gigabytes. Ideally, it would check that nothing new has come from online, and then not refresh at every symbol.
2. In the string ToCustomSymbol function, you don't see checks that the symbol already exists. To be honest, I didn't check what will happen, I didn't go into details. But for myself I've tweaked the check so that when I continue, it doesn't parse all the files again for old existing symbols.
P.S. I would like to thank you for the article and for the many tools posted, very useful.
Are you sure you didn't get the script from a ZIP file? It's not an up-to-date version at all. Because of this problem, it often happens that some bug is fixed, but it goes unnoticed.
Are you sure you didn't get the script from a ZIP file?
I had this bug a long time ago :) Then I noticed that something was wrong and downloaded all files one by one by hand. I was going to write about ZIP too, but I forgot. So it should have worked with the latest version.
1. In the CreateAllSymbols function, ThirdPartyTicks[i].ToCustomSymbol(Sync, ...) is called. This will cause this.FilesOffline.Refresh() to twitch at each symbol; which can be slow, especially if there are thousands of files and the total size is tens of gigabytes. Ideally, it would check that nothing new has come from online, and then not refresh at every character.
I noticed delays once a long time ago related to this, so I specially implemented a workaround for the problem. Since then there are no lags.
Now I have 18 GB archive and zips > 35 000 pieces. Everything works fast, without delays.
Perhaps you haven't fully figured out how it works, that's why you put forward such a hypothesis.