Block and Unblock Order Entry

Clearing Firms can restrict Execution Firms from entering orders by submitting Block instructions through the API that will cause all subsequent order entries (including new orders, order modifies, and cross orders) to be rejected.

Block instructions must include the following parameters: 

  • Executing Firm (bytes 4-6 of SenderCompID) AND

  • Account number AND

  • Derivative type (futures or options) AND

  • Side (buy or sell from message value: Side)

  • Optionally, Product may also be designated. If Product is not included, the block instruction will apply to all products within the designated derivative type.

  • Exchange is also available by default for the selected product

Blocked Execution Firm order entries are rejected with a Session Level Reject (tag35-MsgType=3).

Block and unblock instructions allow Clearing Firms to manage their Execution Firms’ market exposure at the firm/account level. Once a block is applied, Execution Firms can resume trading for the identified account only after an Unblock instruction is submitted via the RMI.

RMI enforcement is at the account level whereas GC2 is at the Execution Firm/exchange group level. Submitting Unblock instructions via the RMI will not unblock the Execution Firm to resume trading if its credit limits are exceeded based upon the restrictions implemented in GC2.

Block and unblock instructions are placed with the following parameters:

Block/Unblock – Levels of Granularity

Level of Granularity

Required

Description

Level of Granularity

Required

Description

1st qualifier

Y

Execution Firm

2nd qualifier

Y

Account Number

3rd  qualifier

Y

Derivative Type – Options on Futures or Futures

4th qualifier

Y

Side – Buy or Sell

5th qualifier

N

Product Group (if not included, all product groups will be affected)

Block instructions submitted through the API use the Party Entitlement Definition message, which must conform to the following rules:

Each entitlement must be limited to a combination of one Execution Firm and one account.

  • Different entitlements within a message can pertain to different accounts, but all accounts within a message must come under one firm.

  • An entitlement carries either a block or unblock instruction – it cannot contain both.

  • Each entitlement is limited to only one side; however, it can carry multiple instruments to be blocked on a given side.

  • Multiple concurrent requests per Account are not supported. The risk system must receive an acknowledgment to an entitlement request for a given account prior to submitting a new entitlement request for that account.

  • Each message can contain multiple entitlements. Within an entitlement, there can be multiple instructions to block/unblock multiple product groups.

    • There will be a maximum configurable n number of instructions allowed per Party Entitlement Definition message.

No other requests are unblocked.

The Block instructions are active across all sessions until an Unblock instruction is submitted. In case of an emergency, Clearing Member Firm RMI Risk Administrators can contact GCC Support to request all Block instructions be removed for a Firm and Account.

Block instructions are applied at the Firm and Account level; they cannot be restricted at the Trader ID, SenderCompID, or SenderSubID level.

Block/Unblock Hierarchy

The RMI uses a hierarchal approach to implement the Block/Unblock instructions. A Block instruction with less granularity supersedes a Block instruction with greater granularity.

For example, if a risk system submits a Block instruction on two Product Groups and sends another Block instruction to restrict All Product Groups, the All Product Groups Block instruction supersedes the former, because the instruction for All Product Groups is at a less granular level than the two Product Groups.

Alternately, if there is a Block instruction for two Product Groups and an Unblock instruction is received for All Product Groups, then the latter is enforced and overrides the former, more granular Block instruction.

An Unblock instruction will be accepted even when there is no Block instruction in place.

Block/Unblock Reject

Block/Unblock instructions with errors will be rejected with a Business Reject message. If a Risk system submits a Block instruction for either the Buy or Sell side of a Product, a Request for Cross (RFC) for that Product is rejected. The RMI recognizes the order is a cross from the FIX message. Possible reasons for rejected Block/Unblock instructions include:

  • Instructions do not meet the criteria for FIXML validation

  • Instructions are missing required values

  • Different instruction types within one message (Block/Unblock instructions and Cancel instructions cannot be in a single message)

  • Format of given Account information does not meet formatting constraints

  • Number of instructions in one message exceeds the maximum allowed

The Party Entitlement Definition message may be partially accepted/rejected when contradictory Block instructions are sent (e.g., If there are more than one entitlements and one of them says unblock few product groups, when all product groups are blocked).

The following diagram shows the message flow for Party Entitlement Definition Request and Acknowledge (Accept) messages for both Block and Unblock instructions initiated by clients’ automated risk systems.

Blocking Order Entry

Block instructions submitted through the API can be applied to All Product Groups or one or more Product Groups. The sections below detail procedures to restrict order entry through the API.

For additional instructions on submitting Block instructions through the user interface, see CME Globex Credit Controls WebHelp - RMI.

Firm and Account | Product type | All Product Groups | Side

To submit Block instructions through the API for All Product Groups:

  1. Clearing Member Firm (CMF) automated risk management system submits a Block instruction to restrict order entry from a specific Execution Firm/account on Options or Futures (Product type) on either the Buy or Sell side. If no product group(s) specified, all Product Groups is default.

  2. The Block instructions are validated for user credentials and FIXML messaging.

  3. The Block instructions are validated for any pre-existing instructions and pre-existing higher level instructions.

  4. A confirmation message is returned via the RMI API, stating that the Block instructions have been accepted.

  5. After the Block instructions pass the validation check, the Execution Firm is restricted from entering orders, cancel/replace requests or cross requests with the referenced account number.

Firm and Account | Product Type | Product Group | Side

Risk systems can submit Block instructions for one or more Product Groups for either Futures or Options (Product Type) on the Buy or Sell side.

Unblocking Order Entry

Risk systems can submit Unblock instructions through the API to resume order entry after the Execution Firm and Account has been restricted. The sections below detail procedures to resume order entry through the API only.

For instructions on submitting block / unblock instructions through the user interface, see CME Globex Credit Controls WebHelp - RMI.

Firm and Account | Product Type | Side| All Product Groups
  1. CMF’s automated risk system submits an Unblock instruction to lift the previously applied Block instructions for a specific Execution Firm/account for Product Type on either the buy or sell side. If no product group(s) specified, order entry for all Product Groups is default.

  2. The Unblock instructions are validated for user credentials and FIXML messaging.

  3. The Unblock instructions are validated for any pre-existing instructions and pre-existing higher level instructions.

  4. A confirmation message is sent to the risk system stating that the Unblock instructions have been accepted.

  5. After the Unblock instruction is implemented, the Execution Firm can resume order entry, cancel/replace requests, and cross requests with the referenced account number.

Firm and Account | Product type | Side| Product Group

Clearing Member Firm (CMF)risk system can submit Unblock instructions for one or more Product Groups for either Futures or Options (Product Type) on the Buy or Sell side.

Block/Unblock Instructions Message Example

The Block/Unblock Definition Request message is sent for Block/Unblock order entry for multiple Accounts within an Execution Firm.

Below are two examples of the Party Entitlement Definition Request message:

Block for Execution Firm 330 and Client Account - 123456:

  • Five Product Groups for Futures (Buy)

  • Four Product Groups for Futures (Sell)

  • Five Product Groups for Options (Buy)

  • Four Product Groups for Options (Sell)

Block for Execution Firm 330 and Client Account - 67890:

  • All Product Groups for Futures (Buy)

  • Four Product Groups for Futures (Sell)

  • All Product Groups for Options (Buy)

  • Four Product Groups for Options (Sell)

Block/Unblock Instructions Accept Message Example

Below is an example of the Party Entitlement Definition Request Acknowledge – Accept message:



Block/Unblock Instructions Rejected Message Example

Below is an example of the Party Entitlement Definition Request Acknowledge – Reject message:



Block/Unblock Instructions Accept With Changes Message Example

Below is an example of the Party Entitlement Definition Request Acknowledge – Accept with changes message:



Party Blocks

Party blocks are used to identify required Execution Firm and Account information in messages submitted to the API. They are required in the following RMI API messages:

  • Required in Party Entitlement Definition Request Messages

  • Not used in the Security List Messages, Login and Logout

  • Execution Firm is required for Party Entitlements Messages; Account is optional

    • If Account is not included, the RMI API will return all active Block instructions for the identified Execution Firm

The table below details the two elements that consist of Parties Block.

Party Block Elements

FIXML Element

Max Length

Valid Values

Description

FIXML Element

Max Length

Valid Values

Description

PtyDtl





Signals that the following will contain the Execution Firm information

ID

3



Execution Firm number

R

1

1 = Execution Firm

Designates the ID value as the Execution Firm number

ReltdPtyDetl





Signals that the following will contain the Account information

ID

12



Account number

R

2

24 = Account number

Designates the ID value as the Account number








How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.