I have a question regarding the invocation behavior of the OnMarketData method for strategies that work with multiple series. When I run a test via Playback, and print in my strategy the value of the Time property of the MarketDataEventArgs event, I realize that they arrive out of order. This occurs only in the milliseconds granularity.
For example:
Time, Time.Ticks, Instrument
07/23/2018 01:27:29.777, 636679060497770000, CL 09-18
07/23/2018 01:27:29.777, 636679060497770000, CL 09-18
07/23/2018 01:27:29.777, 636679060497770000, CL 09-18
07/23/2018 01:27:29.777, 636679060497770000, CL 09-18
07/23/2018 01:27:29.777, 636679060497770000, CL 09-18
07/23/2018 01:27:29.777, 636679060497770000, CL 09-18
07/23/2018 01:27:29.835, 636679060498350000, ES 09-18
07/23/2018 01:27:29.781, 636679060497810000, CL 09-18
In this example, the instrument event ES 09-18 arrives at the strategy before the last instrument event CL 09-18.
Is this behavior expected? If so, what is the reason for it?
Thanks!
Comment