Quotes Forwarded to the Requester

Message is “Quote” (35=S)

bothbothTRRQ
TagNameRequiredNotes
131QuoteReqIDOptionalRFO session only: the QuoteReqID being responded to
62ValidUntilTimeOptionalReceived on forwarded quotes only (Legacy RFQ): the time the quote was forwarded plus 25 seconds. Not read on inbound quotes.
117QuoteIDRequiredUnique quote ID; same ID used for updates and cancels
537QuoteTypeOptional0=Summon·1=Summon with a limit, or Legacy RFQ
301QuoteResponseLevelOptional2=Acknowledge All
54SideRequired1=Buy·2=Sell
132BidPxRequiredPrice when Side=Buy; zero otherwise
133OfferPxRequiredPrice when Side=Sell; zero otherwise
645MktBidPxOptionalDealer only: tiered bid price
646MktOfferPxOptionalDealer only: tiered offer price
134BidSizeRequiredQuantity in configured units (bonds by default) when Side=Buy; zero otherwise
135OfferSizeRequiredQuantity in configured units (bonds by default) when Side=Sell; zero otherwise
60TransactTimeRequiredTime the quote was submitted
Repeating Group

PartyBlock-Inbound(453 NoPartyIDs)

Party block sent by subscribers on orders, quotes, and Summon requests. Identifies the trading party and optional sub-accounts.

TagNameRequiredNotes
453NoPartyIDsCountRequiredNumber of party block entriesSet to the number of entries that follow.
The fields below repeat once per entry (count in NoPartyIDs)
448PartyIDRequired—
452PartyRoleRequiredRole of this party entry

Party Roles

RoleNameRequiredNotes
3Client IDRequiredYour assigned counterparty code (not MPID)
4Clearing FirmConditionalYour MPID shown to contra firms. Optional if OpenYield can determine it via rules; required if you have multiple MPIDs or are configured to send it.
5Investor IDOptionalAccount / sub-account code, if the subscriber is configured for sub-accounts
24Customer CodeConditionalPass-through tag; OpenYield returns this unchanged on all responses. Use for internal codes, strategy, algo, desk, portfolio, etc.
11Order Origination TraderConditionalObfuscated trader code for GUI users. OpenYield reflects it on all responses.

Optionally add a PartySubID block (802/523/803) under role 4 if the subscriber has multiple accounts at the same DTCC clearing firm (set PartySubIDType 803=10, PartySubID 523=clearing account code).

Repeating Group

QuoteQualifiersGroup(735 NoQuoteQualifiers)

Optional qualifier block on Quote messages indicating AllOrNone condition.

TagNameRequiredNotes
735NoQuoteQualifiersCountOptionalNumber of quote 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 NoQuoteQualifiers)
695QuoteQualifierOptionalA=AllOrNone
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
Note

This applies to connections set up for Legacy RFQ, sending requests with 537=1.

5 seconds after your request, OpenYield sends you each response to this request once, as a Quote (35=S) on RQ, in its state at that moment. Each forwarded quote has a new QuoteID (117) and no responder identity.

  • A response updated before then is sent as updated.
  • A response cancelled before then is sent with price and size 0.
  • Responses, updates and cancels after 5 seconds are not forwarded. They still show on the order book (OB or MD).
Note

for Sell requests, the Quotes will be Buy quotes.

ValidUntilTime (62) on a forwarded quote is the time it was forwarded plus 25 seconds, about 30 seconds after your request. Accept before then: see Accept a Forwarded Quote.

For example, if there were 3 responses (in this example, 62 is 5 seconds after the forward; in production it is 25 seconds after):

8=FIX.4.4 9=232 35=S 34=455 49=OPENYIELD-RQ 52=20250214-21:14:54.000 56=BASTION-RQ 22=4 48=US023135CF19 54=1 55=US023135CF19 60=20250214-21:14:54 62=20250214-21:14:59 117=QRS20250214-SD-000000000001 131=REQ-MUN-000F 132=96.2832 134=100 301=2 537=1 10=165
8=FIX.4.4 9=232 35=S 34=456 49=OPENYIELD-RQ 52=20250214-21:14:54.000 56=BASTION-RQ 22=4 48=US023135CF19 54=1 55=US023135CF19 60=20250214-21:14:54 62=20250214-21:14:59 117=QRS20250214-SD-000000000002 131=REQ-MUN-000F 132=96.3399 134=100 301=2 537=1 10=176
8=FIX.4.4 9=232 35=S 34=457 49=OPENYIELD-RQ 52=20250214-21:14:54.001 56=BASTION-RQ 22=4 48=US023135CF19 54=1 55=US023135CF19 60=20250214-21:14:54 62=20250214-21:14:59 117=QRS20250214-SD-000000000003 131=REQ-MUN-000F 132=96.3377 134=100 301=2 537=1 10=175