The RFQRequest is used by a market market to indicate to an exchange that the market maker is interested in receiving QuoteRequest messages (RFQs) for one or more instruments. How should an RFQRequest be acknowledged?
There is no RFQRequestAck message.
The tag RFQReqID (644), which would be required to reference the message being acknowledged, only appears in QuoteRequest and QuoteRequestReject messages (and in the RFQRequest of course).
Current options seem to be:
Use a QuoteRequest but indicate in some way that this is only an indication that an firm QuoteRequest may follow. This feels wrong but could work.
Use a QuoteAck but add RFQReqID to it. This seems even worse, as QuoteAck would normally originate from the market maker. It seems to be implied in an old post however.
Use an ExecutionReport as a general purpose acknowledgement message, but that is primarily for orders (and also lacks the RFQReqID).
Not all FIX messages have a corresponding (technical) ack message. In general, you have to stop somewhere with the potential ping-pong of acking each other’s messages on a business level. Acking is done anyway on the session layer for every message to ensure delivery. So what is the business reason for the market maker to want an ack for his RFQRequest? What kind of action would the market maker take upon receiving the ack?
Obviously, the first QuoteRequest a market maker gets confirms that his request has been received by at least one counterparty. Currently, the market maker should assume that his RFQRequest has reached the destination if there is no problem on the session layer. I would not burden the counterparties with the obligation to ack RFQRequest messages if they are not interested in sending QuoteRequests to the market maker. If they are and send QuoteRequests, these serve as an implicit ack to the market maker.
Regarding the old post you point: I see no reason to reject an RFQRequest as it does not add value to simply ignoring it. After all, the market maker is advertising his services and “customers” should be able to simply ignore it.