I am having same issue with delayed volume updates/spikes using latest IB TWS, 924.3a. if anyone finds a fix, please post. it started last week, and found if i closed and restarted TWS, usually it started working again. this week, restarts not helping.
I think it happened last year. Exact time I cannot recall. What I am afriad of now is that IB has changed the way it updates Volume data. If you open an Time&Sale from TWS, you'll see "Last Size" is updated with every trade while Volume is only updated every few seconds (10-30 seconds) with a number like 250, 560, 1200 etc. Volume data is no longer realtime updated and it is just for info only for the total volume traded thus far. This is happening to all symbols, futures and stocks on all versons of TWS as far as I can tell. QT is reading "Volume" only not "Last Size" which is the only column giving realtime volume data. So efffectively volume data is no longer useful if QT is connected with TWS. Changing QT to read "last size" seems involving lots of work as Jerry indicated. Anything else can be done, Jerry?
Jerry, a theoretical question in the eventuality that IB doesn't fix the total volume update frequency; would it be possible to create an intermediate service that sits between QT and TWS that builds a correct, real-time total volume based off the individual trade blocks it sees passing thru and provide that to QT? I haven't looked at the packets that are hitting the TWS port, but I would think this is something I could do, but I'm sure you could do it 10x faster.
@vette - in theory, sure you can do that. In fact there are already multiple programs that simulate the IB datafeed for various reasons; playback of data for example. You would just set TWS to use some port other than the default one for the API, then have your custom app connect to that, and re-broadcast the corrected datafeed on the default port. The accuracy of that volume data with your suggested scheme would be questionable. IB datafeed does not provide every tick, so even when the volume is updated correctly, each change may represent more than one trade. That inaccuracy is spread over all updates though, and thus does not impact anything in the big scheme of things. With "fixed" volume data, you would either: a) build it purely from Last Size or b) update with every last size from last received Volume, and then update again when next volume update comes in. with option A, the volume will be too low, and you will get large spikes anytime QT backfills, because backfill data does use correct volume, rendering volume charts useless with option B, backfill will work, but you will get volume spikes anytime the regular volume update comes in (every 15 to 20 sec?), since all the missed trades will be accumulated in that one update instead of being spread across all updates. This would also screws volume charts As for me doing it, sorry but don't really feel like devoting that much time to a project like that. It would be significantly more time than just me answering a few questions here Jerry
Jerry, thx for thinking about it. probably will wait to see if IB fixes it. I have another feed I can use from MBTrading, but it seems to have issues at times as well. also it seems it no longer allows you to use two connections at the same time, i.e., one for QT charts and one for the trading platform which isn't cool.
Hi Jerry, i added the S&P500 index to my QT but though i can right click and see the intraday chart it doesnt show anythin.. Any solution? THX a Lot David
I have been seeing this volume update issue as well. But it may be server related, as it was broken one day, ok the next, and now broken again, without any change in version on my end.
Trying to get IB to fix it. http://www.elitetrader.com/vb/showthread.php?s=&postid=3510418#post3510418