Version 12 reloads data every backtest  [SOLVED]

Questions about MultiCharts .NET and user contributed studies.
QGroup

Version 12 reloads data every backtest

Postby QGroup » 18 Aug 2018

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.

User avatar
Anna MultiCharts
Posts: 560
Joined: 14 Jul 2017
Has thanked: 42 times
Been thanked: 140 times

Re: Version 12 reloads data every backtest

Postby Anna MultiCharts » 24 Aug 2018

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.

Zheka
Posts: 223
Joined: 13 Jan 2016
Has thanked: 8 times
Been thanked: 53 times

Re: Version 12 reloads data every backtest

Postby Zheka » 09 Sep 2018

I have experienced the same unnecessary reload of all of the instrument data in PT when backtesting.

@Anna,
did you manage to replicate it on your end?

User avatar
Anna MultiCharts
Posts: 560
Joined: 14 Jul 2017
Has thanked: 42 times
Been thanked: 140 times

Re: Version 12 reloads data every backtest

Postby Anna MultiCharts » 26 Sep 2018

Hello, Zheka!

Our engineers are working on this issue. I’ll inform you about the results once they are available.

User avatar
Anna MultiCharts
Posts: 560
Joined: 14 Jul 2017
Has thanked: 42 times
Been thanked: 140 times

Re: Version 12 reloads data every backtest

Postby Anna MultiCharts » 27 Sep 2018

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”).

Zheka
Posts: 223
Joined: 13 Jan 2016
Has thanked: 8 times
Been thanked: 53 times

Re: Version 12 reloads data every backtest

Postby Zheka » 27 Sep 2018

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.

User avatar
Anna MultiCharts
Posts: 560
Joined: 14 Jul 2017
Has thanked: 42 times
Been thanked: 140 times

Re: Version 12 reloads data every backtest

Postby Anna MultiCharts » 02 Oct 2018

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.

Zheka
Posts: 223
Joined: 13 Jan 2016
Has thanked: 8 times
Been thanked: 53 times

Re: Version 12 reloads data every backtest

Postby Zheka » 02 Oct 2018

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 .

User avatar
Henry MultiСharts
Posts: 9165
Joined: 25 Aug 2011
Has thanked: 1264 times
Been thanked: 2957 times

Re: Version 12 reloads data every backtest

Postby Henry MultiСharts » 02 Oct 2018

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.

Zheka
Posts: 223
Joined: 13 Jan 2016
Has thanked: 8 times
Been thanked: 53 times

Re: Version 12 reloads data every backtest

Postby Zheka » 02 Oct 2018

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?

User avatar
Henry MultiСharts
Posts: 9165
Joined: 25 Aug 2011
Has thanked: 1264 times
Been thanked: 2957 times

Re: Version 12 reloads data every backtest

Postby Henry MultiСharts » 10 Oct 2018

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?
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.
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

Zheka
Posts: 223
Joined: 13 Jan 2016
Has thanked: 8 times
Been thanked: 53 times

Re: Version 12 reloads data every backtest  [SOLVED]

Postby Zheka » 10 Oct 2018

It loads the data from the local database upon each backtest, currently there is no cache of this data.
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.

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.

User avatar
Henry MultiСharts
Posts: 9165
Joined: 25 Aug 2011
Has thanked: 1264 times
Been thanked: 2957 times

Re: Version 12 reloads data every backtest

Postby Henry MultiСharts » 10 Oct 2018

It loads the data from the local database upon each backtest, currently there is no cache of this data.
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.

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.
This improvement is currently targeted to the next update MultiCharts 12 Release 4.

User avatar
Henry MultiСharts
Posts: 9165
Joined: 25 Aug 2011
Has thanked: 1264 times
Been thanked: 2957 times

Re: Version 12 reloads data every backtest

Postby Henry MultiСharts » 17 Oct 2018

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.


Return to “MultiCharts .NET”