Advanced concepts

Advanced concepts

Synthetic Order Algos (SOA)

A Synthetic Order Algo (SOA) in ADL is similar to an Order Ticket Algo (OTA) in that it's launched at order entry like a TT Order Type. However, an SOA differs from an OTA in three significant ways:

  • A Synthetic Order Algo automatically shows the parent order in MD Trader.
  • An SOA generates fills for the parent order in addition to the fills for the child orders.
  • When an SOA is fully-filled (when the block with its type set to Order Quantity reaches 0), the algo is automatically terminated.

Like an OTA, a Synthetic Order Algo requires its Instrument block's Type property to be set to Order Instrument. Additionally, its Number block's Variable Type property must be set to Order Quantity.

When the SOA is deployed, it also appears in the list of order type values, as shown.

Both the parent and child orders submitted by an SOA are displayed in the MD Trader widget. If the algo creator enables Synthetic Algo Order (SOA) setting in ADL, the Show algo order on ladder setting is automatically checked (and cannot be disabled).

Viewing SOA orders in MD Trader

When a Synthetic Order Algo order is submitted, the order initially displays 0 for the working quantity of the parent order and * for the undisclosed quantity. Child orders appear as normal working orders. If a child order is placed at the same price level as the parent SOA order, the working quantity reflects the total working quantity of all child order placed at that level. If the child orders are placed at a different price level, the parent order working quantity continues to display 0.

(1) SOA parent synthetic order with child exchange orders at the same price level
(2) SOA parent synthetic order
(3) SOA child exchange orders at a different price level

Note: To see the submitted quantity of the parent order, middle-click the order to display the Floating Order Book.