After further review it appears this is to be expected based on a few factors.
The first item would be that there is a difference in the way the adapter for IB and how the simulation engine fundamentally work. Due to the multithreaded nature of the IB adapter this causes a difference when using specifically the object reference to the order in question. There is a note regarding this in the help guide orders page, not specifically about IB but in general in the "Multi-threaded consideration" topic: http://ninjatrader.com/support/helpG...sub=orderstate
Specifically the following two notes play into this question:
• For the most current order state, use the core "order" object property (e.g., order.OrderState, order.LimitPrice, order.StopPrice, etc)
• For the sequence of order states, use the updating method parameter value (e.g., orderState, limitPrice, stopPrice, etc)
This would be the second item, for this test we are using the Order object which is the most current state which could be updated to a state we are not necessarily expecting at the given time. Instead you would need to use the second option or the parameter values that are supplied to the overrides.
To see the direct progression you could use OnOrderUpdate and use the passed in orderState to determine what the state of the change was.
I look forward to being of further assistance.
Comment