DataLoader realtime tick delivery bug in 9.1  [SOLVED]

Questions about MultiCharts .NET and user contributed studies.
User avatar
jwebster503
Posts: 24
Joined: 13 Mar 2014
Has thanked: 9 times
Been thanked: 14 times

DataLoader realtime tick delivery bug in 9.1

Postby jwebster503 » 04 Nov 2015

Logged into PM system: http://www.multicharts.com/pm/viewissue ... no=MC-1962

I have run into an issue in MultiCharts .NET64 Version 9.1 Release (Build 11817) where a DataLoader's realtime ticks are only delivered during a session if the study is turned on INSIDE that session -- for subsequent sessions, no realtime ticks are delivered. Or, alternatively, if the study is turned on outside a session (even minutes before start of session), no realtime ticks are delivered during that upcoming session or probably ANY future session. This is a glaring change in behavior compared to version 9.0.

Here's the very simple scenario, 100% repeatable, with sample code and screenshots showing 9.0 working and 9.1 breaking:

* Study requests realtime ticks using DataLoader -- IF the study is activated during a session, the ticks are delivered.
* Outside of a session, ticks (obviously) aren't delivered
* When next session starts up, bars start appearing on charts again, but the DataLoader no longer delivers realtime ticks to any studies

The attached study is my test code which was used to generate the screenshots for both 9.0 and 9.1 -- basically, I'm drawing a histogram of the volume of realtime ticks delivered for the bar.
DataLoaderTest.pln
Sample study code drawing histogram of realtime tick volume per bar
(1.79 KiB) Downloaded 614 times
Here is the screenshot running in 9.0 -- notice that each bar of data has realtime ticks delivered during the bar, even past the dotted gray bar session boundaries. In case it matters, our 9.0 version is running on Windows 8.1 Pro
DataLoader showing realtime ticks in 9.0.png
9.0 continues to deliver realtime ticks in subsequent session
(26.07 KiB) Downloaded 2134 times
Here is the same study running in 9.1 -- notice that no bars in the subsequent sessions have any realtime ticks delivered. Our machines running 9.1 (both exhibiting problems) are Windows 7 Pro, and Windows 10 Pro
DataLoader dropping realtime ticks in 9.1.png
9.1 lost realtime ticks in subsequent session
(26.54 KiB) Downloaded 2134 times
In case anyone is wondering based on the screenshots, to simplify testing I created a custom "Trade during bottom half of the hour" session template, where I'm trading from 8:30-9am, then 9:30-10am, etc, so I can have many session opens and closes during a day. Our production setup has a more normal trading session (10-14 hours per day, one per day), and we saw exactly the same behavior -- no realtime ticks delivered during any session UNLESS the study was stopped and started DURING that session.

I'd love it if someone could confirm they are seeing the same broken behavior starting in 9.1, and hope MultiCharts is able to replicate and fix quickly! Because of this we're locked at 9.0 until this issue is fixed. Obviously, I'm here to answer questions if I can help.

Thanks,

Jeff

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

Re: DataLoader realtime tick delivery bug in 9.1

Postby Henry MultiСharts » 10 Nov 2015

Hello Jeff,

Thank you for reporting. This issue has been confirmed. At the moment the fix is targeted to MultiCharts .NET 9.1 Release 2.

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

Re: DataLoader realtime tick delivery bug in 9.1  [SOLVED]

Postby Henry MultiСharts » 01 Dec 2015

Hello jwebster503,

We have fixed the issue in MultiCharts .NET 9.1 Release 2.
Since MultiCharts .NET 9.1 Release 1 DataLoader by default loads tick data in order to calculate the "TickTradedSideEx" property ("Filled at" value compared to Trade). In order to avoid loading the tick data for calculating this value and load the data of the specified resolution without it – “InstrumentDataRequest” interface has been extended with the new property “RequestStatusDetails”. One needs to explicitly set its value to False:

Code: Select all

InstrumentDataRequest req = Bars.Request;
req.RequestStatusDetails = false;
The new property is supported since MultiCharts .NET 9.1 Release 2.
You can download it at this page.

User avatar
jwebster503
Posts: 24
Joined: 13 Mar 2014
Has thanked: 9 times
Been thanked: 14 times

Re: DataLoader realtime tick delivery bug in 9.1

Postby jwebster503 » 15 Apr 2016

We've just updated from 9.0 to 9.1 r4, and found this behavior is still present WITHOUT changing the line of code. However, setting the InstrumentDataRequest's RequestStatusDetails property to false as you mentioned gives us exactly the (original) behavior we were looking for. Confirmed fixed!

As a side question, if the request is loading the ticks anyways, does making a 1-tick resolution request cause additional load on the system? Said differently, can we use the new usually-present tick data instead of making an additional DataLoader request?

Thanks,
Jeff

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

Re: DataLoader realtime tick delivery bug in 9.1

Postby Henry MultiСharts » 18 Apr 2016

As a side question, if the request is loading the ticks anyways, does making a 1-tick resolution request cause additional load on the system? Said differently, can we use the new usually-present tick data instead of making an additional DataLoader request?
Hello Jeff,

Unfortunately there is no way to do that. You will have to do an additional DataLoader request.


Return to “MultiCharts .NET”