Summon Responders

This page walks a responder through Summon from first request to certification. For the request types and timings, see Getting Started with Summon.

1. What Arrives

Requests go to connections that are set up to receive them and logged on, other than the requester's own. You receive a QuoteRequest (35=R) on RQ:

  • QuoteReqID (131) is OpenYield's own request code. Use it on your response.
  • QuoteType (537) is as the requester sent it: 0 for a Summon, or 1 for a Summon with a limit or Legacy RFQ. It tells you what to expect: see sections 2 and 6.
  • Side (54) is your side: Buy (54=1) if the requester is selling, Sell (54=2) if they are buying.
  • OrderQty (38) is in your connection's quantity unit.
  • SettlType (63) and SettlDate (64) are those any resulting trade will carry.
  • ValidUntilTime (62) is 5 seconds after the request, and ExpireTime (126) is 30 seconds after it, in UTC.
  • There is no price and no requester identity.

See Receive a New Request for Order.

2. Updates and Cancels of the Request

  • Summon (537=0): you receive the request again with the same QuoteReqID (131): an update carries the new OrderQty (38), and a cancel carries 38=0.
  • 537=1: you are not told of updates or cancels.

3. Respond

Send a Quote (35=S) on RQ with QuoteReqID (131), your own QuoteID (117), Side (54), the security (48, 22, 55) and the matching price and size: BidPx (132) and BidSize (134) for Side Buy, or OfferPx (133) and OfferSize (135) for Side Sell. Only that side is read. For example:

8=FIX.4.4 9=243 35=S 34=1011 49=SHERWOOD-RQ 52=20250214-20:21:07.217 56=OPENYIELD-RQ 22=4 48=US023135CF19 54=1 55=US023135CF19 60=20250214-20:21:07 117=SHERW-RR-00000002 131=RFO20250214-SD-000000000002 132=97.6479 134=100 301=2 453=1 448=Sherwood 452=3 537=1 10=089

QuoteReqID (131) is the only link to the request: the side, security and size are not checked against it, so send what you intend to trade. Your response goes on the book like any other quote. To update it, resend with the same QuoteID (117); to cancel it, resend with price and size 0. See Quote on a Request for Order.

4. The 30-Second Limit

Responses, and updates and cancels of them, are accepted until ExpireTime (126), 30 seconds after the request. After that they are rejected with a QuoteStatusReport (297=5) and Text (58) "RFO Window is Closed, not posting quote." From about 10 seconds later, the text is "RFO Request is not known, not posting quote."

5. Acknowledgements

Each response, update and cancel is acknowledged with a QuoteStatusReport (35=AI) on RQ:

Event QuoteStatus (297) OrdType (40)
New quote 0 (Accepted) 2
Update 0 (Accepted) D
Cancel 1 (Canceled) 3
Reject 5 (Rejected), with Text (58)

6. Respond Early

On a Summon with a limit, the requester's limit goes on the book 5 seconds after the request (ValidUntilTime, 62). In Legacy RFQ, only responses in by 5 seconds are forwarded to the requester. Quote before 62 to be on the book when that happens.

7. At 30 Seconds

If your connection is set up for it, OpenYield cancels your quote 30 seconds after the request, with a QuoteStatusReport (297=1) whose QuoteID (117) is yours plus -CANCEL. Otherwise your quote stays on the book, and you manage it like any other quote. See Automated Quote Cancel.

8. Fills

Fills arrive on TR and DC, never on RQ. See Execution.

9. Anonymity

Requests carry no requester identity. Quotes forwarded to a requester in Legacy RFQ carry no responder identity.

10. Certification

Run the Ping for Liquidity Responder and Request for Quote Responder scenarios yourself in the Test environment, then book your certification call. See Certification Checklist.