OB Order Book Feed
Message is “IOI” (35=6)
| Tag | Name | Required | Notes |
|---|---|---|---|
| 23 | IOIID | Required | OpenYield's unique IOI identifier |
| 28 | IOITransType | Required | N=New·C=Cancel·R=Replace |
| 26 | IOIRefID | Optional | IOI ID repeated in Cancel and Replace messages |
| 54 | Side | Required | 1=Buy·2=Sell |
| 27 | IOIQty | Required | Quantity in configured units (bonds by default); zero on Cancel |
| 44 | Price | Required | Price level; zero on Cancel |
| 25 | IOIQltyInd | Required | L=Low — your order·M=Medium — possibly your order (shared connections)·H=High — not your order |
| 236 | Yield | Optional | Yield; zero on Cancel |
| 218 | Spread | Optional | Spread, when available |
| 699 | BenchmarkSecurityID | Optional | Security ID of the benchmark for Spread (218) |
| 761 | BenchmarkSecurityIDSource | Optional | 1=CUSIP·4=ISIN·A=Bloomberg Symbol (FIGI)Source of BenchmarkSecurityID (699) |
IOIQualifiersGroup(199 NoIOIQualifiers)
Optional qualifier block on IOI messages indicating special order characteristics.
| Tag | Name | Required | Notes |
|---|---|---|---|
| 199 | NoIOIQualifiersCount | Optional | Number of IOI qualifier entriesSet to the number of entries that follow. Not sent when the group has no entries. |
| The fields below repeat once per entry (count in NoIOIQualifiers) | |||
| 104 | IOIQualifier | Optional | V=Versus — will be intermediated by OpenYield·A=AllOrNone — order must be fully filled or skipped |
SecurityBlock
The security being traded.
| Tag | Name | Required | Notes |
|---|---|---|---|
| 55 | Symbol | Required | Same value as SecurityID (48) |
| 48 | SecurityID | Required | Security identifier (ISIN, CUSIP, or FIGI per configuration) |
| 22 | SecurityIDSource | Required | 1=CUSIP·4=ISIN·A=Bloomberg Symbol (FIGI) |
| 460 | Product | Conditional | 1=Agency·3=Corporate·6=Government·11=MunicipalRequired on OpenYield responses; optional on subscriber messages. |
StipulationsBlock(232 NoStipulations)
Optional Minima constraints on a resting order or quote. When present, restricts the quantities a taker may fill against this maker order. Encoded as a FIX stipulations repeating group.
| Tag | Name | Required | Notes |
|---|---|---|---|
| 232 | NoStipulationsCount | Optional | Number of Minima stipulations in the repeating groupSet to the number of entries that follow. Not sent when the group has no entries. |
| The fields below repeat once per entry (count in NoStipulations) | |||
| 233 | StipulationType | Required | MINQTY=Minimum Quantity·MININCR=Minimum Increment·MINDNOM=Minimum Balance Remaining (MINDNOM; OpenYield usage)MINQTY, MININCR, or MINDNOM |
| 234 | StipulationValue | Required | Numeric value for the stipulation |
On connection to the Order Book (-OB) session, OpenYield streams one IOI message per resting order or quote to build the current book, then continues streaming IOIs as the book changes. There is no separate snapshot message.
IOITransType (28) is N (New), R (Replace), or C (Cancel). On Replace and Cancel, IOIRefID (26) carries the IOIID (23) of the order being replaced or canceled.
If configured, on a halt or disaster, OpenYield sends a Quote Cancel (35=Z, QuoteCancelType 298=4) to you on the Trading session, signaling that you should clear your cached order book. Alternatively, OpenYield can be configured to log out your Trading session instead.
If the Order Book session disconnects for any other reason, clear your cached order book (all IOIs).
For example: