When Disconnections Between X_TRADER Clients and Autospreader SE Servers Occur
Running Autospreader spreads on a remote Autospreader SE Server requires close communication between the X_TRADER clients and the Autospreader SE Servers. To protect traders from unintended consequences, both X_TRADER and Autospreader SE take actions when they lose communication with each other. The following scenarios explain what happens to synthetic spread orders and child orders when:
- Autospreader SE loses connectivity with X_TRADER clients
- X_TRADER clients lose the connection with Autospreader SE Servers
Scenario 1: Autospreader SE Loses Its Connection to X_TRADER
Each Autospreader SE Server monitors heartbeats from the client machine to monitor the connection. If Autospreader SE does not receive a heartbeat within three heartbeat intervals (approximately 30 seconds), it assumes the client machine is down.
For each active spread definition, Autospreader SE determines whether it is working synthetic orders for the spread. If the spread definition has no working synthetic orders, Autospreader SE deletes the spread definition.
When the client machine reconnects, it detects that the Autospreader SE Server cancelled some or all of its orders. X_TRADER then resynchronizes with the Autospreader SE Server and removes the synthetic orders from its order book. The trader must re-launch the Autospreader definitions to the Autospreader SE Server before trading them.
Scenario 2: X_TRADER Loses Its Connection to an Autospreader SE Server
The client machine monitors the heartbeats of all Autospreader SE Servers to which it connects through Server Up and Server Down notifications for each Autospreader SE Server. If the client machine receives a Server Down notification for an Autospreader SE Server, X_TRADER immediately disables the synthetic spreads for that Autospreader SE Server in the MD Trader Spread and Market Grid windows. Traders cannot execute any synthetic order operations for these spreads, nor can they launch new spreads to the Autospreader SE Server. Traders can, however, manually delete working leg orders in X_TRADER.
If X_TRADER receives a Server Up notification before the timer expires, X_TRADER determines by the Autospreader SE Server instance ID whether the Autospreader SE Server rebooted and responds as follows:
- If the Server Up notification indicates the same instance of the same Autospreader SE Server, the X_TRADER client and Autospreader SE Server resynchronize the synthetic order states, and then continue to manage and work the active spread orders.
- If the Server Up notification indicates a different instance
of the same Autospreader SE Server, X_TRADER:
- Deletes from its order book all synthetic orders that were running on that Autospreader SE Server.
- Deletes from the appropriate TT Gateways all outright orders associated with spreads executing on the prior Autospreader SE Server instance.
- Re-launches to the Autospreader SE Server all of the spread definitions that had been launched before the connection was lost. However, X_TRADER does not automatically resubmit the synthetic orders that had been running.
If the client machine does not receive a Server Up notice from the Autospreader SE Server before the timer (approximately 30 seconds) expires, X_TRADER takes the following actions:
- Considers the Autospreader SE Server to be down permanently.
- Deletes from its order book all synthetic orders what were running on that Autospreader SE Server.
- Deletes from the appropriate TT Gateways all outright orders associated with spreads executing on that Autospreader SE Server.
When Disconnections Between Autospreader SE and FIX Sessions Occur
When connections between FIX sessions and Autospreader SE are interrupted, the following actions can occur:
- If all FIX sessions are disconnected, and the Order Server shows as down in Guardian, Autospreader SE attempts to pull the leg orders and delete the spread; it also rejects new spread orders.
- If a FIX session is disconnected, but the Order Server
remains active in Guardian:
- The Order Server rejects new orders.
- If a working quoting order is rejected, the quoting order remains working at the original price. The Autospreader synthetic order remains working.
- If a new quoting order is rejected upon submission and is the only quoting order for the spread, the Autospreader synthetic order is not entered.
- If one leg is entered without issue and the other rejected, the Autospreader synthetic order is entered with one quoting leg.
- Hedge orders are submitted once; if that order is rejected, the user is legged with no working order (i.e. there is no order for Hedge Manager to manage).