The Lab

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from this space and version 1.5.66

Table of Contents

Change Summary

Warning
titleMandatory Change

Background

ExecutionAcknowledgement/ 35=BN is commonly supported by most ECNs to ACK or NACK a client's ExecutionReport and is considered .We treat ExecutionAcknowledgement (and OrderTimeout) as the end of the order life cycle in the maker workflow (please refer ESP/RFS/RFQ State Transition Model), where Whisperer clients are the market makers.

However, Integral is an anomaly and does not send an ExecutionAcknowledgement to notify the client that their ExecutionReport is Accepted or Rejected was Accepted. Several other ECNs do not support ExecutionAcknowledgement when the order was Rejected by the maker.

To normalise the order lifecycle in the maker workflow, MarketFactory will introduce a synthetic ExecutionAcknowledgement, if the venue API does not support the message in the maker gateways to address the gaps in venue behaviour.

Affected Venues

Change

In order to To address a normalisation gap in the maker workflow order lifecycle, MarketFactory will introduce a synthetic synthetic ExecutionAcknowledgement, in the absence of a venue ACK, in response to our client's the maker's Filled or Rejected ExecutionReport.

Timeline

  • 25 Jul - UAT - MarketFactory will introduce the synthetic ExecutionAcknowledgement for clients to test the affected venues in UAT.
  • 15 Aug - PROD - Whisperer release 2025.0809.XX16.WE to expose with the synthetic synthetic ExecutionAcknowledgement change in PRODwill be available for clients.

Whisperer Client Impact

Change Details

Whisperer clients trading on Integral the Affected Venues will see the following change:

  • In In the absence of an ACK from the venue in response to a client ExecutionReport with ExecType = Filled or Rejected, a synthetic synthetic ExecutionAcknowledgement/ 35=BN (with TradingFlags = Y) will be sent to the client maker with ExecAckStatus = Accepted.

ExecutionAck gaps addressed per venue:

VenueExecutionAck GapsChange

cboefx_fixproxy

fxall_activetrading_maker

fxall_quicktrade_maker

lseg_fxall_maker

t360_supersonic_maker

t360_tex_maker

ExecutionReport with ExecType = Rejected

A synthetic ExecutionAcknowledgement will be sent to the maker with ExecAckStatus = Accepted.

integral_esp_maker

integral_rfs_maker

ExecutionReport with ExecType = Filled or Rejected

A synthetic ExecutionAcknowledgement will be sent to the maker with ExecAckStatus = Accepted.


Note
titleSynthetic ExecutionAck Exception

Please note that the synthetic ExecutionAck from Whisperer does not apply to the Firm trading workflow, where the venue notifies (the maker) of the fills using ExecutionReport in response to MassQuote from the maker

Note
titleSynthetic ExecutionAcknowledgement - Exception scenarios

A synthetic ExecutionAcknowledgement will not be sent to the client in the following scenarios:

  • Whisperer gateway received a replayed ExecutionReport from a client with PossDupFlag = Y during the recovery/ replay at session synchronisation.
  • Integral did not receive the client ExecutionReport by the end of the preconfigured OrderTimeout interval. In this scenario, the client will receive an OrderTimeout/ 35=OT.
  • The client sent an ExecutionReport after it received an OrderTimeout. In this scenario, the client will receive an ExecutionAcknowledgement with IsSynthetic flag set to N

    .


    Documentation

    Attachments