CME STP FIX - Error Handling

CME STP FIX - Error Handling

This section describes various error conditions that client systems of CME STP FIX may encounter. Error conditions or failures may occur either while establishing a new FIX session or to on-going an established session.

Table of Contents

Logon - Unsuccessful

CME STP FIX rejects a client system login attempt with a Logout (tag 35-MsgType = 5) message and the tag 58-Text populated detailing the reason for the redetection. After the reject is sent the TCP/IP connection is terminated.

Client Sequence Number Less Than Expected

The FIX client system will be disconnected if a sequence number less is than what is expected by CME STP FIX.

Service Availability – Internal Errors

On rare occasions, the CME STP FIX gateway may be available to clients but upstream CME Group systems are unavailable. In these scenarios, CME STP FIX clients will experience the following messaging:

Internal Error – Client Logon

If CME STP FIX does not have access to upstream CME Group systems:

  • Logon request will be rejected by CME STP FIX with a Logout message

  • Client systems should continue to retry Logons no more frequently than one message every 30 seconds

Internal Error – Before First TradeCaptureReportRequest (AD)

If CME STP FIX losses access to upstream CME Group systems after a successful Logon:

  • CME STP FIX will send a TradeCaptureReportRequestAck with error in tag 58-Text, on loss of access to upstream CME Group systems

  • Client systems should retry a TradeCaptureReportRequest no more frequently than one message every 30 seconds

Internal Errors – After First TradeCaptureReportRequest (AD)

If CME STP FIX losses access to upstream CME Group systems after a successful TradeCaptureReportReque:

  • CME STP FIX will send an unsolicited TradeCaptureReportRequestAck with error in tag 58-Text

  • Client systems should resend Trade Capture Report Request no more frequently than one message every 30 seconds

Summary of Internal Errors

The following table summarizes internal errors.

Scenario

Triggering Client Message

Identifying CME STP FIX Message

Client Response

Scenario

Triggering Client Message

Identifying CME STP FIX Message

Client Response

Internal Error at Client Login

Logon (35=A)

Logon Reject with Logout (35=5)

Resend Logon (35=A) every 30 seconds until successful

Internal Error Before Trade Capture Report Request

Trade Capture Report Request (35=AD)

Trade Capture Report Request Acknowledgment (35=AQ) where

tag 749-TradeRequestResult = 99 (Other)

tag 750 TradeRequestStatus = 1 (Completed)

tag 58-Text = Transport Error: Connection to CME was lost

Resend Trade Capture Report Request (35=AD) every 30 seconds until successful

Internal Error After a Successful Trade Capture Report Request

Unsolicited

Trade Capture Report Request Acknowledgment (35=AQ) where

tag 749-TradeRequestResult = 99 (Other)

tag 750 TradeRequestStatus = 1 (Completed)

tag 58-Text = Transport Error: Connection to CME was lost

Resend Trade Capture Report Request (35=AD) every 30 seconds until successful

Trade Snapshot Request: Failed Request – Missing Start Time or Invalid Combination of Filters

  1. FIX Client sends Trade Capture Report Request (tag 35-MsgType = AD) with the following tags:

    • tag 569-TradeRequestType = 1 (All trades)

    • tag 263-SubscriptionRequestType = 0 (Snapshot)

    • tag 453-NoPartyIDs ≥ 1 and tag 448-PartyID = Firm ID and tag 452-PartyRole = Firm Role

      • All PartyRoles must be identical within a single request

    • tag 9593-StartTime is absent or invalid combination of snapshot specific filters is specified

  2. CME STP FIX sends Trade Capture Report Request Ack (tag 35-MsgType = AQ) with tag 749-TradeRequestResult = 0 (Successful) and tag 750-TradeRequestStatus = 0 (Accepted) to FIX Client.

  3. CME STP FIX rejects subscription with Trade Capture Report Request Ack (tag 35-MsgType =AQ) with tag 750-TradeRequestStatus = 2 (Rejected), tag 749-TradeRequestResult = 9 (Unauthorized for Trade Capture Report Request) and tag 58-Text containing the reject reason.

Subscription with Multiple FirmIDs: Failed Request – at Least One FirmID is Invalid

Precondition: a client system has successfully logged in

  1. FIX Client sends Trade Capture Report Request (tag 35-MsgType = AD) with the following tags:

    • tag 569-TradeRequestType = 1 (All trades)

    • tag 263-SubscriptionRequestType = 0 (Snapshot) or 1 (Subscription)

    • tag 453-NoPartyIDs = 2

      • tag 448-PartyID = Firm ID_A and tag 452-PartyRole = Firm Role (the same for all entries)

      • tag 448-PatryID = Firm ID_B and tag 452-PartyRole = Firm Role (the same for all entries)

  2. CME STP FIX sends Trade Capture Report Request Ack (tag 35-MsgType = AQ) with tag 750-TradeRequestStatus = 2 (Rejected), tag 749-TradeRequestResult = 9 (Unauthorized for Trade Capture Report Request) and tag 58-Text = 'Authorization FAILED: Authenticated User <<Logged in API ID>> can NOT query on behalf of [FirmID_A] as [Firm Role value]' to FIX Client.

Subscription with Multiple FirmIDs: Failed Request – Specified FirmIDs have Different Party Roles

Precondition: a client system has successfully logged in

  1. FIX Client system sends Trade Capture Report Request (tag 35-MsgType = AD) with the following tags:

    • tag 569-TradeRequestType = 1 (All trades)

    • tag 263-SubscriptionRequestType = 0 (Snapshot) or 1 (Subscription)

    • tag 453-NoPartyIDs = 2

      • tag 448-PartyID = Firm ID_A and tag 452-PartyRole = Firm Role (different from the second entry)

      • tag 448-PartyID = Firm ID_B and tag 452-PartyRole = Firm Role (different from the first entry)

  2. CME STP FIX sends Trade Capture Report Request Ack (tag 35-MsgType = AQ) with tag 750-TradeRequestStatus = 2 (Rejected), tag 749-TradeRequestResult = 9 (Unauthorized for Trade Capture Report Request) and tag 58-Text = 'Invalid PtyR. Only one role may be queried for at a time' to FIX client system.

Duplicate Subscription Request

Precondition: A session between a client system and CME STP FIX is established and the client system is successfully subscribed for CME STP FIX data.

  1. FIX Client system sends a duplicate Trade Capture Report Request (tag 35-MsgType=AD) to CME STP FIX.

  2. CME STP FIX rejects subscription with Trade Capture Report Request Ack (tag 35-MsgType =AQ) having tag 750-TradeRequestStatus = 2 (Rejected), tag 749-TradeRequestResult = 9 (Unauthorized for Trade Capture Report Request) and tag 58-Text = Illegal subscription request.

  3. CME STP FIX does not interrupt the existing FIX client systems subscription for trades.

 




How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.