- To store messages in the queue during off hours (market is closed)
- To release messages stored in the queue at the time market is open
- To pass through messages during “market is open” hours
- To define multiple queues for different order types
- To distribute incoming orders among the queues relating on order type - to route only messages that can be accepted by certain destination system.
- To apply smart logic for orders stored in the queue (cancel and cancel/replace)
Logically FIXEdge server is a router that routes messages from a source system to a destination system. The following diagram demonstrates data flow for the case managed queue is used. Messages from a source system are parsed and put to business layer. BL rule is executed and messages that fit the rule are moved to a certain virtual session. Each virtual session is actually a queue. If virtual session is open (connected to a target session) the message is moved to target session immediately. If virtual session is closed (disconnected from a target session) then the message is stored in the queue. The smart logic is applied. The virtual session connects to a target session or disconnects from a target session according to a schedule configured for a virtual session. Target session may also have a schedule. If target session is not established then messages stay in the queue and are released when target session is established.