Skip to main content
All MLink messages are generated from a common IDL schema and follow common patterns, including the following:

Live Data Objects with Primary Key

These messages have a well-defined primary key (unique per message type) and follow a create/replace pattern such that any new message arriving in MLink will completely replace the previous record with the same primary key, if one exists. Example: “NBBOOptionQuote” message

Security Keys

Several messages contain security keys (TickerKey, ExpiryKey, and/or OptionKey).
  • TickerKey: SSSS-TS-AT where SSSS is the security symbol (eg. AAPL), TS is a ticker source (eg. NMS), and AT is an asset type (eg. EQT).
  • ExpiryKey: SSSS-TS-AT-YYYY-MM-DD where YYYY is year, MM is month, and DD is day.
  • OptionKey: SSSS-TS-AT-YYYY-MM-DD-XXXX-CP where XXXX is the strike price, and CP is either (Call, Put, or Both).
Ticker Sources (ts) and Asset Types (at) are enumerated.

Special Data Objects

  • Spreads: #SSSShhhh where hhhh is a hexadecimal ID number.
  • FLEX: encoded as OptionKeys with the security symbol being the standard FLEX root.
  • Market Data: distributed with one of the above security keys where the symbol is the exchange trading symbol.
  • Synthetics: _SSSS or SSSS_ computed for the purpose of pricing options more accurately.

Admin Data Objects without Primary Keys

Some SR MLink objects do not have natural primary keys and are used as administrative messages between MLink and a client.

HTTP/REST Admin Messages

MLink/WebSocket Admin Messages