OB Order Book Feed

Message is “IOI” (35=6)

OpenYieldSubscriberOB
TagNameRequiredNotes
23IOIIDRequiredOpenYield's unique IOI identifier
28IOITransTypeRequiredN=New·C=Cancel·R=Replace
26IOIRefIDOptionalIOI ID repeated in Cancel and Replace messages
54SideRequired1=Buy·2=Sell
27IOIQtyRequiredQuantity in configured units (bonds by default); zero on Cancel
44PriceRequiredPrice level; zero on Cancel
25IOIQltyIndRequiredL=Low — your order·M=Medium — possibly your order (shared connections)·H=High — not your order
236YieldOptionalYield; zero on Cancel
218SpreadOptionalSpread, when available
699BenchmarkSecurityIDOptionalSecurity ID of the benchmark for Spread (218)
761BenchmarkSecurityIDSourceOptional1=CUSIP·4=ISIN·A=Bloomberg Symbol (FIGI)Source of BenchmarkSecurityID (699)
Repeating Group

IOIQualifiersGroup(199 NoIOIQualifiers)

Optional qualifier block on IOI messages indicating special order characteristics.

TagNameRequiredNotes
199NoIOIQualifiersCountOptionalNumber 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)
104IOIQualifierOptionalV=Versus — will be intermediated by OpenYield·A=AllOrNone — order must be fully filled or skipped
Field Group

SecurityBlock

The security being traded.

TagNameRequiredNotes
55SymbolRequiredSame value as SecurityID (48)
48SecurityIDRequiredSecurity identifier (ISIN, CUSIP, or FIGI per configuration)
22SecurityIDSourceRequired1=CUSIP·4=ISIN·A=Bloomberg Symbol (FIGI)
460ProductConditional1=Agency·3=Corporate·6=Government·11=MunicipalRequired on OpenYield responses; optional on subscriber messages.
Repeating GroupOptional

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.

TagNameRequiredNotes
232NoStipulationsCountOptionalNumber 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)
233StipulationTypeRequiredMINQTY=Minimum Quantity·MININCR=Minimum Increment·MINDNOM=Minimum Balance Remaining (MINDNOM; OpenYield usage)MINQTY, MININCR, or MINDNOM
234StipulationValueRequiredNumeric 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:

8=FIX.4.4 9=172 35=6 34=88 49=OPENYIELD-OB 52=20231031-16:16:21.614 56=OPENEMS-OB 22=4 23=IOI20231031-000000022 25=M 27=50.00 28=N 44=100.5 48=USZ00000ZZ0X 54=2 55=USZ00000ZZ0X 236=2.7088 10=249
8=FIX.4.4 9=197 35=6 34=89 49=OPENYIELD-OB 52=20231031-16:16:34.904 56=OPENEMS-OB 22=4 23=IOI20231031-000000022 25=M 26=IOI20231031-000000022 27=30.00 28=R 44=100.5 48=USZ00000ZZ0X 54=2 55=USZ00000ZZ0X 236=2.7088 10=253