A friend of mine uses TradeStation for his futures trading. I was wondering about data latency, i.e. how much of a delay there is between a trades actual time-stamp and when it arrives "in a bar" on TradeStation. Some of his strategies are not tracking well, when you compare actual trades to simulations run after the close. TS makes it difficult to figure these things out as far as I can tell. You essentially get their bar data without having a good sense of if it's current or a seconds delayed. If anyone has any measurements and/or insights they'd like to share, I'd appreciate it. Thanks!
I cannot see that there is a problem affecting many people or people would be screaming on the TradeStation forums and they are not - I do not even recall seeing the subject come up in reading thousands of posts there and there are lots of day traders.
Could the differences between "live" and "sim" be associated with unrealistic latency-related assumptions in the "sim" case? I'm not deeply familiar with TS, but limit order fills for example are always hard to simulate accurately ... do you assume they fill when price touches the limit price (over optimistic, unless you're UHFT with your machine co-located INSIDE the exchange's order matcher!!!)? Or do you assume your limit order fills only when price touches the next tick through your limit price (overly pessimistic)? In either of the preceding cases, "live" and "sim" won't track well ... Slippage is another area that requires assumptions to be made for "simming". And in most cases, the assumptions will be overly simplistic in relation to the mechanics of what actually happens. Again, "sim" and "live" won't match ...
Let me give an example: The system has no assumptions built in regarding latency, it trades straight off 1 min bars. If I look at the tick data after the close, it looks like the limit order was traded through at e.g. 10:05:05, but in realtime the order did not fill. My concern is that the realtime 1 min bar hasn't fully formed for 10:04 as late as several seconds into the following minute, which could explain the lack of fill. This was for ES/GLOBEX, so it should have filled. My concern is that since TS controls the time stamps of the bars and the order engine, any quote or order latency essentially could be masked.
Thanks for the additionl info. a) So the issue is that the limit order fills in "sim" but does not fill in "live", despite the fact that tick data appears to show price moving beyond the limit price? b) What is the source of the tick data you are referring to? Is it the same data recorded by you in real-time and used to build the 1-min bars that were traded in real-time? Or is it historical tick data that you downloaded after the session? Thanks.