Quote from christianhgross:
If you are relying on anybody's tick data to reconstruct bars then you are fooling yourself. I have used Bloomberg, IB, and several other data providers. They all have issues.
IB takes the best approach in that they provider 300 ms bars as that tends to filter the outlyer data. And if you can deal with 5 sec intervals you trade their 5 second interval bars, which reconstruct perfectly to the historical.
I agree there is no "ideal world". In particular, in an attempt to privide higher-quality historical data many providers "scrub" both historical "tick" and "bar" data in addition to filtering they do in real time.
The difference is just in how often there is a discrepancy... and with IB the problem is more severe than witha few other data providers:
1) IB real-time data is "sliced". The last trade price is sent 3 times a second or so as opposed to every tick. So, bars constructed from real time data have incorrect high and lows very often.
2) IB real-time data lack time stamp. As result, beginning/end of bar depends on how long it takes the data make way from IB to the trader's computer and on the trader's computer clock. So, open and close of a bar is off on most bars during periods of higher trading activity.
IB made a reasonable trade-off to make sure they can deliver data that doesn't lag during spikes of market activity without investing in infrastructure required to deliver reliably every tick. Given the price you can't really complain.