I just upgraded to v12 of MC.Net, and the Portfolio Trader no longer keeps the loaded data in the memory like previous versions did. If I run a backtest, it first loads all the necessary data, and then performs the calculations. If I then change a parameter of the strategy (or even if I change nothing at all), while keeping everything else the same, it shouldn't reload all the data for the next test.
I haven't found any settings regarding this - has this been done on purpose, am I missing something, or is it a bug in the new version?
Thank you in advance.
Version 12 reloads data every backtest [SOLVED]
- Anna MultiCharts
- Posts: 560
- Joined: 14 Jul 2017
- Has thanked: 42 times
- Been thanked: 141 times
Re: Version 12 reloads data every backtest
Hello, QGroup!
Please send us your portfolio workspace and export of data for the symbols used in it to support@multicharts.com so we could test this on our end.
Please send us your portfolio workspace and export of data for the symbols used in it to support@multicharts.com so we could test this on our end.
- Anna MultiCharts
- Posts: 560
- Joined: 14 Jul 2017
- Has thanked: 42 times
- Been thanked: 141 times
Re: Version 12 reloads data every backtest
Hello, Zheka!
Our engineers are working on this issue. I’ll inform you about the results once they are available.
Our engineers are working on this issue. I’ll inform you about the results once they are available.
- Anna MultiCharts
- Posts: 560
- Joined: 14 Jul 2017
- Has thanked: 42 times
- Been thanked: 141 times
Re: Version 12 reloads data every backtest
Zheka, QGroup,
Before MultiCharts 12 there was no “Download missing historical data” option for Portfolio Trader. Now when this option is enabled the missing data is requested from the data source. So the data is not reloaded for your symbols, but just small pieces of data (missing data) are being downloaded.
If you don’t like this behavior and would prefer to have the things as they were in prior MultiCharts versions, please disable this option (in the Data settings of Portfolio find Data Server Mode -> click on Online -> uncheck no “Download missing historical data”).
Before MultiCharts 12 there was no “Download missing historical data” option for Portfolio Trader. Now when this option is enabled the missing data is requested from the data source. So the data is not reloaded for your symbols, but just small pieces of data (missing data) are being downloaded.
If you don’t like this behavior and would prefer to have the things as they were in prior MultiCharts versions, please disable this option (in the Data settings of Portfolio find Data Server Mode -> click on Online -> uncheck no “Download missing historical data”).
Re: Version 12 reloads data every backtest [SOLVED]
Anna,
You misunderstood the issue.
PT downloaded missing historical data even before MC12.
The problem is that now,
after loading data for the FIRST backtest (either from the database or also filling in some missing data),
MC12 loads them from the database ANEW/AGAIN for all subsequent backtests (on same dataset, same signal), rather than taking them from memory (i.e. considering that they have already been loaded) ---and this TAKES TIME.
You misunderstood the issue.
PT downloaded missing historical data even before MC12.
The problem is that now,
after loading data for the FIRST backtest (either from the database or also filling in some missing data),
MC12 loads them from the database ANEW/AGAIN for all subsequent backtests (on same dataset, same signal), rather than taking them from memory (i.e. considering that they have already been loaded) ---and this TAKES TIME.
- Anna MultiCharts
- Posts: 560
- Joined: 14 Jul 2017
- Has thanked: 42 times
- Been thanked: 141 times
Re: Version 12 reloads data every backtest
Zheka,
Sorry for confusion and thank you for the feedback.
Our engineers are now evaluating the possibilities of enhancing this behavior so that all users’ needs are covered – the data is properly loaded and the cache does not disappear. Changing the current behavior requires time, so at the moment we cannot give any ETAs for the new behavior implementation.
Sorry for confusion and thank you for the feedback.
Our engineers are now evaluating the possibilities of enhancing this behavior so that all users’ needs are covered – the data is properly loaded and the cache does not disappear. Changing the current behavior requires time, so at the moment we cannot give any ETAs for the new behavior implementation.
Re: Version 12 reloads data every backtest
Anna,
this is a bug that was introduced in MC12.
Before any enhancements are made, let's correct the bug in the nearest MC12 release.
It does make the process of testing in PT inconveniently slow .
this is a bug that was introduced in MC12.
Before any enhancements are made, let's correct the bug in the nearest MC12 release.
It does make the process of testing in PT inconveniently slow .
- Henry MultiСharts
- Posts: 9165
- Joined: 25 Aug 2011
- Has thanked: 1264 times
- Been thanked: 2957 times
Re: Version 12 reloads data every backtest
Zheka,
As it has been already explained above - it is not a bug, it is a peculiarity of the current architecture.
Before, Portfolio Trader was caching the data upon the first backtest. It did not “Download missing historical data” on the subsequent backtests, even though the option was enabled. Instead, it was using only the initially cached data, without filling in the missing data. That is a bug that was corrected.
When it was corrected - the behavior described in this topic appeared. Now the cached data is no longer taken into account on subsequent backtests. It is loaded from the data base first + the missing historical data is being downloaded according to the existing settings. The cache is repopulated on each backtest, which allows for filling in the missing data.
Since the current behavior is not satisfying - the improvement mentioned above is going to be introduced.
As it has been already explained above - it is not a bug, it is a peculiarity of the current architecture.
Before, Portfolio Trader was caching the data upon the first backtest. It did not “Download missing historical data” on the subsequent backtests, even though the option was enabled. Instead, it was using only the initially cached data, without filling in the missing data. That is a bug that was corrected.
When it was corrected - the behavior described in this topic appeared. Now the cached data is no longer taken into account on subsequent backtests. It is loaded from the data base first + the missing historical data is being downloaded according to the existing settings. The cache is repopulated on each backtest, which allows for filling in the missing data.
Since the current behavior is not satisfying - the improvement mentioned above is going to be introduced.
Re: Version 12 reloads data every backtest
Anna,
correct me if I am wrong, but when PT "Downloads missing historical data" on the FIRST backtest, there is no need for another download - there is no "missing" data.
This initially collected data is in cache and used by all subsequent backtests.
What's the bug that was corrected?
correct me if I am wrong, but when PT "Downloads missing historical data" on the FIRST backtest, there is no need for another download - there is no "missing" data.
This initially collected data is in cache and used by all subsequent backtests.
What's the bug that was corrected?
- Henry MultiСharts
- Posts: 9165
- Joined: 25 Aug 2011
- Has thanked: 1264 times
- Been thanked: 2957 times
Re: Version 12 reloads data every backtest
You are mixing up download from the data provider and loading the data from the database. Portfolio Trader does not download the data from the data provider each time you do backtesting. It loads the data from the local database upon each backtest, currently there is no cache of this data. This is something that will be added in one of the next updates.correct me if I am wrong, but when PT "Downloads missing historical data" on the FIRST backtest, there is no need for another download - there is no "missing" data. This initially collected data is in cache and used by all subsequent backtests. What's the bug that was corrected?
As for downloading the missing historical data from the data provider - realtime minute and daily bars are not being saved to the database, therefore they are downloaded from the data provider when you do a copy/paste or close/open your chart, or re-run the backtesting in Portfolio:
https://www.multicharts.com/trading-sof ... s_Database
Re: Version 12 reloads data every backtest
That's exactly the bug - introduced in MC12 and absent in MC11, and as such IMHO should not be just "fixed in some future release", with undefined ETA.It loads the data from the local database upon each backtest, currently there is no cache of this data.
That was the reason for this thread, pls refer to the very first post.
Nobody complained that PT re-loaded historical data from the data provider.
- Henry MultiСharts
- Posts: 9165
- Joined: 25 Aug 2011
- Has thanked: 1264 times
- Been thanked: 2957 times
Re: Version 12 reloads data every backtest
This improvement is currently targeted to the next update MultiCharts 12 Release 4.That's exactly the bug - introduced in MC12 and absent in MC11, and as such IMHO should not be just "fixed in some future release", with undefined ETA.It loads the data from the local database upon each backtest, currently there is no cache of this data.
That was the reason for this thread, pls refer to the very first post.
Nobody complained that PT re-loaded historical data from the data provider.
- Henry MultiСharts
- Posts: 9165
- Joined: 25 Aug 2011
- Has thanked: 1264 times
- Been thanked: 2957 times
Re: Version 12 reloads data every backtest
We have rolled back the fix that introduced this behavior and updated the installer file for version 12 Release 3 in our downloads section (same build number). One will need to uninstall his existing MultiCharts, download the updated installer and run it.