I'm running a live multi-instrument (2) strategy against TD Ameritrade data. On each call to OnBarUpdate, I print Time[0] to the output window. Both instruments are set for a one-minute timeframe. Today, the timestamps looked OK (for the most part) until I placed an order. Then I missed an interval, i.e., I didn't get data for one of the instruments. Here's the sequence:
9:40 instrument #1
9:40 instrument #2
9:41 instrument #1
9:41 instrument #2
9:42 instrument #1
9:43 instrument #1 <-- What happened to 9:42 instrument #2?
9:42 instrument #2 <-- It shows up after 9:43 instrument #1.
<-- Data for 9:43 instrument #2 never arrives.
9:44 instrument #1
9:44 instrument #2
The output window also shows that OnExecution was called following "9:42 instrument #2". Is it possible that OnExecution delayed the print to the output window? Did that delay cause me to miss the 9:43 data?
OR...
Is this caused by the TD Ameritrade data feed? It would be quite a coincidence that the interval where I placed my order happened to be the one that was delayed by TD, but who knows?
OR...
Maybe it's a combination of both?
Thanks for any help!
Mike
Comment