I am writing an application that is latency sensitive. We are running it on a co-located server with a Zen-Fire direct feed.
While testing I came across a situation with a cancel/replace (change order) acknowledgement took 20 milliseconds as per the trace file. I have the comm delay set = 1 and would have thought that was the number I would get.
As you can see by the information below, that was not the case. Any information provided will be greatly appreciated.
Best Regards,
Scott
-------> Order is at its original price 1182.25
[FONT='courier new', monospace]2011-10-11 08:44:22:365 (Zen-Fire Direct) Cbi.OrderStatusEventArgs.Process: Order='2e4b298121b446e38b77eedb10e0139e/Sim101' Name='BL_ES_1' New state=Working Instrument='ES 12-11' Action=Buy Limit price=1183.25 Stop price=0 Quantity=1 Type=Limit Filled=0 Fill price=0 Error=NoError Native error=''[/FONT]
-------> Change requested to new price 1183.00
[FONT='courier new', monospace]2011-10-11 08:44:39:787 (Zen-Fire Direct) Cbi.Order.Change: Order='2e4b298121b446e38b77eedb10e0139e/Sim101' Name='BL_ES_1' State=Working Instrument='ES 12-11' Action=Buy Limit price=1183 Stop price=0 Quantity=1 Strategy='BombardierQ' Type=Limit Tif=Day Oco='' Filled=0 Fill price=0 Token='2e4b298121b446e38b77eedb10e0139e' Gtd='12/1/2099 12:00:00 AM'[/FONT]
-------> Order is being processed by NT is marked pending change.
[FONT='courier new', monospace]2011-10-11 08:44:39:787 (Zen-Fire Direct) Cbi.Connection.ProcessEventArgs.OrderStatusEventAr gs: Order='2e4b298121b446e38b77eedb10e0139e/Sim101' Name='BL_ES_1' New state=PendingChange Instrument='ES 12-11' Action=Buy Limit price=1183 Stop price=0 Quantity=1 Type=Limit Filled=0 Fill price=0 Error=NoError Native error=''[/FONT]
-------> The state change is begin communicated to the OnOrderUpdate callback.
[FONT='courier new', monospace]2011-10-11 08:44:39:787 (Zen-Fire Direct) Cbi.Order.Update1: oldid='2e4b298121b446e38b77eedb10e0139e' Order='2e4b298121b446e38b77eedb10e0139e/Sim101' Name='BL_ES_1' New state=PendingChange Instrument='ES 12-11' Action=Buy Limit price=1183 Stop price=0 Quantity=1 Type=Limit Filled=0 Fill price=0 Error=NoError Native error=''[/FONT]
-------> The state change is being processed by NT (assuming that the sim engine).
[FONT='courier new', monospace]2011-10-11 08:44:39:787 (Zen-Fire Direct) Cbi.OrderStatusEventArgs.Process: Order='2e4b298121b446e38b77eedb10e0139e/Sim101' Name='BL_ES_1' New state=PendingChange Instrument='ES 12-11' Action=Buy Limit price=1183 Stop price=0 Quantity=1 Type=Limit Filled=0 Fill price=0 Error=NoError Native error=''[/FONT]
-------> The change was accepted by the sim exchange, but wait, it took how long? 807 - 787 = 20 msec, not how the simulator is set and decidedly not good.
[FONT='courier new', monospace]2011-10-11 08:44:39:802 (Zen-Fire Direct) Cbi.Connection.ProcessEventArgs.OrderStatusEventAr gs: Order='2e4b298121b446e38b77eedb10e0139e/Sim101' Name='BL_ES_1' New state=AcceptedInstrument='ES 12-11' Action=Buy Limit price=1183 Stop price=0 Quantity=1 Type=Limit Filled=0 Fill price=0 Error=NoError Native error=''[/FONT]
-------> Same millisecond the change is being communicated to the caller's OnOrderUpdate
[FONT='courier new', monospace]2011-10-11 08:44:39:802 (Zen-Fire Direct) Cbi.Order.Update1: oldid='2e4b298121b446e38b77eedb10e0139e' Order='2e4b298121b446e38b77eedb10e0139e/Sim101' Name='BL_ES_1' New state=Accepted Instrument='ES 12-11' Action=Buy Limit price=1183 Stop price=0 Quantity=1 Type=Limit Filled=0 Fill price=0 Error=NoError Native error=''[/FONT]
Comment