Skip to content

Order Management System Views

A view in OMS provides realtime information on a topic such as “Cash Balances” or “Open Orders”.

When requesting a View, supply one of the SubscriptionType values.

  • Balances: The current cash balances.
  • Feed: Track open Orders and outstanding Client Requests related to the feed. Intended for OMS Adapters.
  • Holdings: The current asset holdings.
  • Metadata: OMS metadata related to Owners, Exchanges, and Request Statuses.
  • Orders: High-Level view of all open and recently expired Orders.
  • Requests: All active Client Requests.
  • Status: The status and connectivity of all known OMS Adapters.
  • Transactions: Stream of all transactions affecting cash or holdings.
  • Updates: Low-Level view of all open and recently expired Orders, and actions that affect them.

An Update represents a basic change to the OMS state, such as an order execution, a request transition, a cash transaction, or a system metadata operation.

An Update generates Events, which describe high-level changes to an OMS view, such as a change in cash balance, a change in available holdings, a change to Order status.

For example, given an Update describing a buy order execution where a trade has occurred, the following Events will be generated on the appropriate View:

  • Balances: A new CashPosition event will be sent. Unsettled cash will decrease representing the money owed, while unfilled buys will increase, as money is no longer reserved.
  • Holdings: A new AssetPosition event will be sent. The holdings will increase, based on the quantity traded.
  • Orders: A new OrderState event will be sent. The state will reflect the new executed quantity, and potentially a change in status on fill.
  • Transactions: A new ClientTransaction event will be sent, describing the changes to cash and holdings that occurred.
  • Updates: A new ExternalAction event will be sent, describing the full details of the trade that occurred.