Description
Type: String
Defines message type ALWAYS THIRD FIELD IN MESSAGE. (Always unencrypted)
Note: A "U" as the first character in the MsgType field (i.e. U, U2, etc) indicates that the message format is privately defined between the sender and receiver.
Note the use of lower case letters.
Valid values:
-
0 = Heartbeat
The Heartbeat monitors the status of the communication link and identifies when the last of a string of messages was not received.
-
1 = TestRequest
The test request message forces a heartbeat from the opposing application. The test request message checks sequence numbers or verifies communication line status. The opposite application responds to the Test Request with a Heartbeat containing the TestReqID.
-
2 = ResendRequest
The resend request is sent by the receiving application to initiate the retransmission of messages. This function is utilized if a sequence number gap is detected, if the receiving application lost a message, or as a function of the initialization process.
-
3 = Reject
The reject message should be issued when a message is received but cannot be properly processed due to a session-level rule violation. An example of when a reject may be appropriate would be the receipt of a message with invalid basic data which successfully passes de-encryption, CheckSum and BodyLength checks.
-
4 = SequenceReset
The sequence reset message is used by the sending application to reset the incoming sequence number on the opposing side.
-
5 = Logout
The logout message initiates or confirms the termination of a FIX session. Disconnection without the exchange of logout messages should be interpreted as an abnormal condition.
-
6 = IOI
Indication of interest messages are used to market merchandise which the broker is buying or selling in either a proprietary or agency capacity. The indications can be time bound with a specific expiration value. Indications are distributed with the understanding that other firms may react to the message first and that the merchandise may no longer be available due to prior trade.
Indication messages can be transmitted in various transaction types; NEW, CANCEL, and REPLACE. All message types other than NEW modify the state of the message identified in IOIRefID.
-
7 = Advertisement
Advertisement messages are used to announce completed transactions. The advertisement message can be transmitted in various transaction types; NEW, CANCEL and REPLACE. All message types other than NEW modify the state of a previously transmitted advertisement identified in AdvRefID.
-
8 = ExecutionReport
The execution report message is used to:
- confirm the receipt of an order
- confirm changes to an existing order (i.e. accept cancel and replace requests)
- relay order status information
- relay fill information on working orders
- relay fill information on tradeable or restricted tradeable quotes
- reject orders
- report post-trade fees calculations associated with a trade
-
9 = OrderCancelReject
The order cancel reject message is issued by the broker upon receipt of a cancel request or cancel/replace request message which cannot be honored.
-
A = Logon
The logon message authenticates a user establishing a connection to a remote system. The logon message must be the first message sent by the application requesting to initiate a FIX session.
-
B = News
The news message is a general free format message between the broker and institution. The message contains flags to identify the news item's urgency and to allow sorting by subject company (symbol). The News message can be originated at either the broker or institution side, or exchanges and other marketplace venues.
-
C = Email
The email message is similar to the format and purpose of the News message, however, it is intended for private use between two parties.
-
D = NewOrderSingle
The new order message type is used by institutions wishing to electronically submit securities and forex orders to a broker for execution.
The New Order message type may also be used by institutions or retail intermediaries wishing to electronically submit Collective Investment Vehicle (CIV) orders to a broker or fund manager for execution.
-
E = NewOrderList
The NewOrderList Message can be used in one of two ways depending on which market conventions are being followed.
-
F = OrderCancelRequest
The order cancel request message requests the cancellation of all of the remaining quantity of an existing order. Note that the Order Cancel/Replace Request should be used to partially cancel (reduce) an order).
-
G = OrderCancelReplaceRequest
The order cancel/replace request is used to change the parameters of an existing order.
Do not use this message to cancel the remaining quantity of an outstanding order, use the Order Cancel Request message for this purpose.
-
H = OrderStatusRequest
The order status request message is used by the institution to generate an order status message back from the broker.
-
J = AllocationInstruction
The Allocation Instruction message provides the ability to specify how an order or set of orders should be subdivided amongst one or more accounts. In versions of FIX prior to version 4.4, this same message was known as the Allocation message. Note in versions of FIX prior to version 4.4, the allocation message was also used to communicate fee and expense details from the Sellside to the Buyside. This role has now been removed from the Allocation Instruction and is now performed by the new (to version 4.4) Allocation Report and Confirmation messages.,The Allocation Report message should be used for the Sell-side Initiated Allocation role as defined in previous versions of the protocol.
-
K = ListCancelRequest
The List Cancel Request message type is used by institutions wishing to cancel previously submitted lists either before or during execution.
-
L = ListExecute
The List Execute message type is used by institutions to instruct the broker to begin execution of a previously submitted list. This message may or may not be used, as it may be mirroring a phone conversation.
-
M = ListStatusRequest
The list status request message type is used by institutions to instruct the broker to generate status messages for a list.
-
N = ListStatus
The list status message is issued as the response to a List Status Request message sent in an unsolicited fashion by the sell-side. It indicates the current state of the orders within the list as they exist at the broker's site. This message may also be used to respond to the List Cancel Request.
-
P = AllocationInstructionAck
In versions of FIX prior to version 4.4, this message was known as the Allocation ACK message.
The Allocation Instruction Ack message is used to acknowledge the receipt of and provide status for an Allocation Instruction message.
-
Q = DontKnowTrade
The Don’t Know Trade (DK) message notifies a trading partner that an electronically received execution has been rejected. This message can be thought of as an execution reject message.
-
R = QuoteRequest
In some markets it is the practice to request quotes from brokers prior to placement of an order. The quote request message is used for this purpose. This message is commonly referred to as an Request For Quote (RFQ)
-
S = Quote
The Quote message is used as the response to a Quote Request or a Quote Response message in both indicative, tradeable, and restricted tradeable quoting markets.
-
T = SettlementInstructions
The Settlement Instructions message provides the broker’s, the institution’s, or the intermediary’s instructions for trade settlement. This message has been designed so that it can be sent from the broker to the institution, from the institution to the broker, or from either to an independent "standing instructions" database or matching system or, for CIV, from an intermediary to a fund manager.
-
V = MarketDataRequest
Some systems allow the transmission of real-time quote, order, trade, trade volume, open interest, and/or other price information on a subscription basis. A MarketDataRequest <V> is a general request for market data on specific securities or forex quotes. The values in the fields provided within the request will serve as further filter criteria for the result set.
-
W = MarketDataSnapshotFullRefresh
The Market Data messages are used as the response to a Market Data Request message. In all cases, one Market Data message refers only to one Market Data Request. It can be used to transmit a 2-sided book of orders or list of quotes, a list of trades, index values, opening, closing, settlement, high, low, or VWAP prices, the trade volume or open interest for a security, or any combination of these.
-
X = MarketDataIncrementalRefresh
The Market Data message for incremental updates may contain any combination of new, changed, or deleted Market Data Entries, for any combination of instruments, with any combination of trades, imbalances, quotes, index values, open, close, settlement, high, low, and VWAP prices, trade volume and open interest so long as the maximum FIX message size is not exceeded. All of these types of Market Data Entries can be changed and deleted.
-
Y = MarketDataRequestReject
The Market Data Request Reject is used when the broker cannot honor the Market Data Request, due to business or technical reasons. Brokers may choose to limit various parameters, such as the size of requests, whether just the top of book or the entire book may be displayed, and whether Full or Incremental updates must be used.
-
Z = QuoteCancel
The Quote Cancel message is used by an originator of quotes to cancel quotes.
The Quote Cancel message supports cancellation of:
- All quotes
- Quotes for a specific symbol or security ID
- All quotes for a security type
- All quotes for an underlying
-
a = QuoteStatusRequest
The quote status request message is used for the following purposes in markets that employ tradeable or restricted tradeable quotes:
- For the issuer of a quote in a market to query the status of that quote (using the QuoteID to specify the target quote).
- To subscribe and unsubscribe for Quote Status Report messages for one or more securities.
-
b = MassQuoteAck
Mass Quote Acknowledgement is used as the application level response to a Mass Quote message.
-
c = SecurityDefinitionRequest
The SecurityDefinitionRequest <c> message is used for the following:
- Request a specific security to be traded with the second party. The requested security can be defined as a multileg security made up of one or more instrument legs.
- Request a set of individual securities for a single market segment.
- Request all securities, independent of market segment.
-
d = SecurityDefinition
The SecurityDefinition <d> message is used for the following:
- Accept the security defined in a SecurityDefinition <d> message.
- Accept the security defined in a SecurityDefinition <d> message with changes to the definition and/or identity of the security.
- Reject the security requested in a SecurityDefinition <d> message.
- Respond to a request for securities within a specified market segment.
- Convey comprehensive security definition for all market segments that the security participates in.
- Convey the security's trading rules that differ from default rules for the market segment.
-
e = SecurityStatusRequest
The Security Status Request message provides for the ability to request the status of a security. One or more Security Status messages are returned as a result of a Security Status Request message.
-
f = SecurityStatus
The Security Status message provides for the ability to report changes in status to a security. The Security Status message contains fields to indicate trading status, corporate actions, financial status of the company. The Security Status message is used by one trading entity (for instance an exchange) to report changes in the state of a security.
-
g = TradingSessionStatusRequest
The Trading Session Status Request is used to request information on the status of a market. With the move to multiple sessions occurring for a given trading party (morning and evening sessions for instance) there is a need to be able to provide information on what product is trading on what market.
-
h = TradingSessionStatus
The Trading Session Status provides information on the status of a market. For markets multiple trading sessions on multiple-markets occurring (morning and evening sessions for instance), this message is able to provide information on what products are trading on what market during what trading session.
-
i = MassQuote
The Mass Quote message can contain quotes for multiple securities to support applications that allow for the mass quoting of an option series. Two levels of repeating groups have been provided to minimize the amount of data required to submit a set of quotes for a class of options (e.g. all option series for IBM).
-
j = BusinessMessageReject
The Business Message Reject message can reject an application-level message which fulfills session-level rules and cannot be rejected via any other means. Note if the message fails a session-level rule (e.g. body length is incorrect), a session-level Reject message should be issued.
-
k = BidRequest
The BidRequest Message can be used in one of two ways depending on which market conventions are being followed.
In the "Non disclosed" convention (e.g. US/European model) the BidRequest message can be used to request a bid based on the sector, country, index and liquidity information contained within the message itself. In the "Non disclosed" convention the entry repeating group is used to define liquidity of the program. See " Program/Basket/List Trading" for an example.
In the "Disclosed" convention (e.g. Japanese model) the BidRequest message can be used to request bids based on the ListOrderDetail messages sent in advance of BidRequest message. In the "Disclosed" convention the list repeating group is used to define which ListOrderDetail messages a bid is being sort for and the directions of the required bids.
-
l = BidResponse
The Bid Response message can be used in one of two ways depending on which market conventions are being followed.
In the "Non disclosed" convention the Bid Response message can be used to supply a bid based on the sector, country, index and liquidity information contained within the corresponding bid request message. See "Program/Basket/List Trading" for an example.
In the "Disclosed" convention the Bid Response message can be used to supply bids based on the List Order Detail messages sent in advance of the corresponding Bid Request message.
-
m = ListStrikePrice
The strike price message is used to exchange strike price information for principal trades. It can also be used to exchange reference prices for agency trades.
- n = XMLnonFIX
-
o = RegistrationInstructions
The Registration Instructions message type may be used by institutions or retail intermediaries wishing to electronically submit registration information to a broker or fund manager (for CIV) for an order or for an allocation.
-
p = RegistrationInstructionsResponse
The Registration Instructions Response message type may be used by broker or fund manager (for CIV) in response to a Registration Instructions message submitted by an institution or retail intermediary for an order or for an allocation.
-
q = OrderMassCancelRequest
The order mass cancel request message requests the cancellation of all of the remaining quantity of a group of orders matching criteria specified within the request. Note, this message can only be used to cancel order messages (reduce the full quantity).
-
r = OrderMassCancelReport
The Order Mass Cancel Report is used to acknowledge an Order Mass Cancel Request. Note that each affected order that is canceled is acknowledged with a separate Execution Report or Order Cancel Reject message.
-
s = NewOrderCross
Used to submit a cross order into a market. The cross order contains two order sides (a buy and a sell). The cross order is identified by its CrossID.
-
t = CrossOrderCancelReplaceRequest
Used to modify a cross order previously submitted using the New Order - Cross message. See Order Cancel Replace Request for details concerning message usage.
-
u = CrossOrderCancelRequest
Used to fully cancel the remaining open quantity of a cross order.
-
v = SecurityTypeRequest
The Security Type Request message is used to return a list of security types available from a counterparty or market.
-
w = SecurityTypes
The Security Type Request message is used to return a list of security types available from a counterparty or market.
-
x = SecurityListRequest
The Security List Request message is used to return a list of securities from the counterparty that match criteria provided on the request
-
y = SecurityList
The Security List message is used to return a list of securities that matches the criteria specified in a Security List Request.
-
z = DerivativeSecurityListRequest
The Derivative Security List Request message is used to return a list of securities from the counterparty that match criteria provided on the request
-
AA = DerivativeSecurityList
The Derivative Security List message is used to return a list of securities that matches the criteria specified in a Derivative Security List Request.
-
AB = NewOrderMultileg
The New Order - Multileg is provided to submit orders for securities that are made up of multiple securities, known as legs.
-
AC = MultilegOrderCancelReplace
Used to modify a multileg order previously submitted using the New Order - Multileg message. See Order Cancel Replace Request for details concerning message usage.
-
AD = TradeCaptureReportRequest
The Trade Capture Report Request can be used to:
- Request one or more trade capture reports based upon selection criteria provided on the trade capture report request
- Subscribe for trade capture reports based upon selection criteria provided on the trade capture report request.
-
AE = TradeCaptureReport
The Trade Capture Report message can be:
- Used to report trades between counterparties.
- Used to report trades to a trade matching system.
- Sent unsolicited between counterparties.
- Sent as a reply to a Trade Capture Report Request.
- Used to report unmatched and matched trades.
-
AF = OrderMassStatusRequest
The order mass status request message requests the status for orders matching criteria specified within the request.
-
AG = QuoteRequestReject
The Quote Request Reject message is used to reject Quote Request messages for all quoting models.
-
AH = RFQRequest
In tradeable and restricted tradeable quoting markets – Quote Requests are issued by counterparties interested in ascertaining the market for an instrument. Quote Requests are then distributed by the market to liquidity providers who make markets in the instrument. The RFQ Request is used by liquidity providers to indicate to the market for which instruments they are interested in receiving Quote Requests. It can be used to register interest in receiving quote requests for a single instrument or for multiple instruments
-
AI = QuoteStatusReport
The quote status report message is used:
- as the response to a Quote Status Request message
- as a response to a Quote Cancel message
- as a response to a Quote Response message in a negotiation dialog (see Volume 7 – PRODUCT: FIXED INCOME and USER GROUP: EXCHANGES AND MARKETS)
-
AJ = QuoteResponse
The QuoteResponse <AJ> message is used for the following purposes:
- Respond to an IOI <6> message
- Respond to a Quote <S> message
- Counter a Quote <S>
- End a negotiation dialog
- Follow-up or end a QuoteRequest <R> dialog that did not receive a response.
-
AK = Confirmation
The Confirmation messages are used to provide individual trade level confirmations from the sell side to the buy side. In versions of FIX prior to version 4.4, this role was performed by the allocation message. Unlike the allocation message, the confirmation message operates at an allocation account (trade) level rather than block level, allowing for the affirmation or rejection of individual confirmations.
-
AL = PositionMaintenanceRequest
The Position Maintenance Request message allows the position owner to submit requests to the holder of a position which will result in a specific action being taken which will affect the position. Generally, the holder of the position is a central counter party or clearing organization but can also be a party providing investment services.
-
AM = PositionMaintenanceReport
The Position Maintenance Report message is sent by the holder of a position in response to a Position Maintenance Request and is used to confirm that a request has been successfully processed or rejected.
-
AN = RequestForPositions
The Request For Positions message is used by the owner of a position to request a Position Report from the holder of the position, usually the central counter party or clearing organization. The request can be made at several levels of granularity.
-
AO = RequestForPositionsAck
The Request for Positions Ack message is returned by the holder of the position in response to a Request for Positions message. The purpose of the message is to acknowledge that a request has been received and is being processed.
-
AP = PositionReport
The Position Report message is returned by the holder of a position in response to a Request for Position message. The purpose of the message is to report all aspects of a position and may be provided on a standing basis to report end of day positions to an owner.
-
AQ = TradeCaptureReportRequestAck
The Trade Capture Request Ack message is used to:
- Provide an acknowledgement to a Trade Capture Report Request in the case where the Trade Capture Report Request is used to specify a subscription or delivery of reports via an out-of-band ResponseTransmissionMethod.
- Provide an acknowledgement to a Trade Capture Report Request in the case when the return of the Trade Capture Reports matching that request will be delayed or delivered asynchronously. This is useful in distributed trading system environments.
- Indicate that no trades were found that matched the selection criteria specified on the Trade Capture Report Request or the Trade Capture Request was invalid for some business reason, such as request is not authorized, invalid or unknown instrument, party, trading session, etc.
-
AR = TradeCaptureReportAck
The Trade Capture Report Ack message can be:
- Used to acknowledge trade capture reports received from a counterparty.
- Used to reject a trade capture report received from a counterparty.
-
AS = AllocationReport
Sent from sell-side to buy-side, sell-side to 3rd-party or 3rd-party to buy-side, the Allocation Report (Claim) provides account breakdown of an order or set of orders plus any additional follow-up front-office information developed post-trade during the trade allocation, matching and calculation phase. In versions of FIX prior to version 4.4, this functionality was provided through the Allocation message. Depending on the needs of the market and the timing of "confirmed" status, the role of Allocation Report can be taken over in whole or in part by the Confirmation message.
-
AT = AllocationReportAck
The Allocation Report Ack message is used to acknowledge the receipt of and provide status for an Allocation Report message.
-
AU = ConfirmationAck
The Confirmation Ack (aka Affirmation) message is used to respond to a Confirmation message.
-
AV = SettlementInstructionRequest
The Settlement Instruction Request message is used to request standing settlement instructions from another party.
-
AW = AssignmentReport
Assignment Reports are sent from a clearing house to counterparties, such as a clearing firm as a result of the assignment process.
-
AX = CollateralRequest
An initiator that requires collateral from a respondent sends a Collateral Request. The initiator can be either counterparty to a trade in a two party model or an intermediary such as an ATS or clearinghouse in a three party model. A Collateral Assignment is expected as a response to a request for collateral.
-
AY = CollateralAssignment
Used to assign collateral to cover a trading position. This message can be sent unsolicited or in reply to a Collateral Request message.
-
AZ = CollateralResponse
Used to respond to a Collateral Assignment message.
-
BA = CollateralReport
Used to report collateral status when responding to a Collateral Inquiry message.
-
BB = CollateralInquiry
Used to inquire for collateral status.
-
BC = NetworkCounterpartySystemStatusRequest
This message is send either immediately after logging on to inform a network (counterparty system) of the type of updates required or to at any other time in the FIX conversation to change the nature of the types of status updates required. It can also be used with a NetworkRequestType of Snapshot to request a one-off report of the status of a network (or counterparty) system. Finally this message can also be used to cancel a request to receive updates into the status of the counterparties on a network by sending a NetworkRequestStatusMessage with a NetworkRequestType of StopSubscribing.
-
BD = NetworkCounterpartySystemStatusResponse
This message is sent in response to a Network (Counterparty System) Status Request Message.
-
BE = UserRequest
This message is used to initiate a user action, logon, logout or password change. It can also be used to request a report on a user's status.
-
BF = UserResponse
This message is used to respond to a user request message, it reports the status of the user after the completion of any action requested in the user request message.
-
BG = CollateralInquiryAck
Used to respond to a Collateral Inquiry in the following situations:
- When the CollateralInquiry will result in an out of band response (such as a file transfer).
- When the inquiry is otherwise valid but no collateral is found to match the criteria specified on the Collateral Inquiry message.
- When the Collateral Inquiry is invalid based upon the business rules of the counterparty.
-
BH = ConfirmationRequest
The Confirmation Request message is used to request a Confirmation message.
-
BO = ContraryIntentionReport
The Contrary Intention Report is used for reporting of contrary expiration quantities for Saturday expiring options. This information is required by options exchanges for regulatory purposes.
-
BP = SecurityDefinitionUpdateReport
This message is used for reporting updates to a product security master file. Updates could be the result of corporate actions or other business events. Updates may include additions, modifications or deletions.
-
BK = SecurityListUpdateReport
The Security List Update Report is used for reporting updates to a Contract Security Masterfile. Updates could be due to Corporate Actions or other business events. Update may include additions, modifications and deletions.
-
BL = AdjustedPositionReport
Used to report changes in position, primarily in equity options, due to modifications to the underlying due to corporate actions
-
BM = AllocationInstructionAlert
This message is used in a 3-party allocation model where notification of group creation and group updates to counterparties is needed. The mssage will also carry trade information that comprised the group to the counterparties.
-
BN = ExecutionAck
The Execution Report Acknowledgement message is an optional message that provides dual functionality to notify a trading partner that an electronically received execution has either been accepted or rejected (DK'd).
-
BJ = TradingSessionList
The Trading Session List message is sent as a response to a Trading Session List Request. The Trading Session List should contain the characteristics of the trading session and the current state of the trading session.
-
BI = TradingSessionListRequest
The Trading Session List Request is used to request a list of trading sessions available in a market place and the state of those trading sessions. A successful request will result in a response from the counterparty of a Trading Session List (MsgType=BJ) message that contains a list of zero or more trading sessions.
-
BQ = SettlementObligationReport
The Settlement Obligation Report message provides a central counterparty, institution, or individual counterparty with a capacity for reporting the final details of a currency settlement obligation.
-
BR = DerivativeSecurityListUpdateReport
The Derivative Security List Update Report message is used to send updates to an option family or the strikes that comprise an option family.
-
BS = TradingSessionListUpdateReport
The Trading Session List Update Report is used by marketplaces to provide intra-day updates of trading sessions when there are changes to one or more trading sessions.
-
BT = MarketDefinitionRequest
The Market Definition Request message is used to request for market structure information from the Respondent that receives this request.
-
BU = MarketDefinition
The MarketDefinition <BU> message is used to respond to MarketDefinitionRequest <BT>. In a subscription, it will be used to provide the initial snapshot of the information requested. Subsequent updates are provided by the MarketDefinitionUpdateReport <BV>.
-
BV = MarketDefinitionUpdateReport
In a subscription for market structure information, this message is used once the initial snapshot of the information has been sent using the MarketDefinition <BU> message.
-
BW = ApplicationMessageRequest
This message is used to request a retransmission of a set of one or more messages generated by the application specified in RefApplID <1355>.
-
BX = ApplicationMessageRequestAck
This message is used to acknowledge an Application Message Request providing a status on the request (i.e. whether successful or not). This message does not provide the actual content of the messages to be resent.
-
BY = ApplicationMessageReport
This message is used for three difference purposes: to reset the ApplSeqNum <1181> of a specified ApplID <1180>. to indicate that the last message has been sent for a particular ApplID, or as a keep-alive mechanism for ApplIDs with infrequent message traffic.
-
BZ = OrderMassActionReport
The Order Mass Action Report is used to acknowledge an Order Mass Action Request. Note that each affected order that is suspended or released or canceled is acknowledged with a separate Execution Report for each order.
-
CA = OrderMassActionRequest
The Order Mass Action Request message can be used to request the suspension or release of a group of orders that match the criteria specified within the request. This is equivalent to individual Order Cancel Replace Requests for each order with or without adding "S" to the ExecInst values. It can also be used for mass order cancellation.
-
CB = UserNotification
The User Notification message is used to notify one or more users of an event or information from the sender of the message. This message is usually sent unsolicited from a marketplace (e.g. Exchange, ECN) to a market participant.
-
CC = StreamAssignmentRequest
In certain markets where market data aggregators fan out to end clients the pricing streams provided by the price makers, the price maker may assign the clients to certain pricing streams that the price maker publishes via the aggregator. An example of this use is in the FX markets where clients may be assigned to different pricing streams based on volume bands and currency pairs.
-
CD = StreamAssignmentReport
he StreamAssignmentReport message is in response to the StreamAssignmentRequest message. It provides information back to the aggregator as to which clients to assign to receive which price stream based on requested CCY pair. This message can be sent unsolicited to the Aggregator from the Price Maker.
-
CE = StreamAssignmentReportACK
This message is used to respond to the Stream Assignment Report, to either accept or reject an unsolicited assignment.
-
CF = PartyDetailsListRequest
The PartyDetailsListRequest is used to request party detail information.
-
CG = PartyDetailsListReport
The PartyDetailsListReport <CG> message is used to disseminate party details between counterparties. PartyDetailsListReport <CG> messages may be sent in response to a PartyDetailsListRequest <CF> message or sent unsolicited.
-
CH = MarginRequirementInquiry
The purpose of this message is to initiate a margin requirement inquiry for a margin account. The inquiry may be submitted at the detail level or the summary level. It can also be used to inquire margin excess/deficit or net position information. Margin excess/deficit will provide information about the surplus or shortfall compared to the previous trading day or a more recent margin calculation. An inquiry for net position information will trigger one or more PositionReport <AP> messages instead of one or more MarginRequirementReport <CJ> messages.
If the inquiry is made at the detail level, an Instrument block must be provided with the desired level of detail. If the inquiry is made at the summary level, the Instrument block is not provided, implying a summary request is being made. For example, if the inquiring firm specifies the Security Type of “FUT” in the Instrument block, then a detail report will be generated containing the margin requirements for all futures positions for the inquiring account. Similarly, if the inquiry is made at the summary level, the report will contain the total margin requirement aggregated to the margin account level.
-
CI = MarginRequirementInquiryAck
Used to respond to a Margin Requirement Inquiry.
-
CJ = MarginRequirementReport
The Margin Requirement Report returns information about margin requirement either as on overview across all margin accounts or on a detailed level due to the inquiry making use of the optional Instrument component block. Application sequencing can be used to re-request a range of reports.
-
CK = PartyDetailsListUpdateReport
The PartyDetailsListUpdateReport <CK> is used to disseminate updates to party detail information.
-
CL = PartyRiskLimitsRequest
The PartyRiskLimitsRequest <CL> message is used to request for risk information for specific parties, specific party roles or specific instruments.
-
CM = PartyRiskLimitsReport
The PartyRiskLimitsReport <CM> message is used to communicate party risk limits. The message can either be sent as a response to the PartyRiskLimitsRequest <CL> message or can be published unsolicited.
- CN = SecurityMassStatusRequest
- CO = SecurityMassStatus
-
CQ = AccountSummaryReport
The AccountSummaryReport <CQ> is provided by the clearinghouse to its clearing members on a daily basis. It contains margin, settlement, collateral and pay/collect data for each clearing member level account type. Clearing member account types will be described through use of the Parties component and PtysSubGrp sub-component.
In certain usages, the clearing members can send the AccountSummaryReport <CQ> message to the clearinghouse as needed. For example, clearing members can send this message to the clearinghouse to identify the value of collateral for each customer (to satisfy CFTC Legally Segregated Operationally Commingled (LSOC) regulatory reporting obligations).
Clearing organizations can also send the AccountSummaryReport <CQ> message to regulators to meet regulatory reporting obligations. For example, clearing organizations can use this message to submit daily reports for each clearing member (“CM”) by house origin and by each customer origin for all futures, options, and swaps positions, and all securities positions held in a segregated account or pursuant to a cross margining agreement, to a regulator (e.g. to the CFTC to meet Part 39, Section 39.19 reporting obligations).
-
CR = PartyRiskLimitsUpdateReport
The PartyRiskLimitsUpdateReport <CR> is used to convey incremental changes to risk limits. It is similar to the regular report but uses the PartyRiskLimitsUpdateGrp component instead of the PartyRiskLimitsGrp component to include an update action.
-
CS = PartyRiskLimitsDefinitionRequest
PartyRiskLimitDefinitionRequest is used for defining new risk limits.
-
CT = PartyRiskLimitsDefinitionRequestAck
PartyRiskLimitDefinitionRequestAck is used for accepting (with or without changes) or rejecting the definition of risk limits.
-
CU = PartyEntitlementsRequest
The PartyEntitlementsRequest message is used to request for entitlement information for one or more party(-ies), specific party role(s), or specific instruments(s).
-
CV = PartyEntitlementsReport
The PartyEntitlementsReport is used to report entitlements for one or more parties, party role(s), or specific instrument(s).
-
CW = QuoteAck
The QuoteAck <CW> message is used to acknowledge a Quote <S> submittal or request to cancel an individual quote using the QuoteCancel <Z> message during a Quote/Negotiation dialog.
-
CX = PartyDetailsDefinitionRequest
The PartyDetailsDefinitionRequest <CX> is used for defining new parties and modifying or deleting existing parties information, including the relationships between parties.
The recipient of the message responds with a PartyDetailsDefinitionRequestAck <CY> to indicate whether the request was accepted or rejected.
-
CY = PartyDetailsDefinitionRequestAck
The PartyDetailsDefinitionRequestAck <CY> is used as a response to the PartyDetailsDefinitionRequest <CX> message. The request can be accepted (with or without changes) or rejected.
-
CZ = PartyEntitlementsUpdateReport
The PartyEntitlementsUpdateReport <CZ> is used to convey incremental changes to party entitlements. It is similar to the PartyEntitlementsReport <CV>. This message uses the PartyEntitlementsUpdateGrp component which includes the ability to specify an update action using ListUpdateAction <1324>.
-
DA = PartyEntitlementsDefinitionRequest
The PartyEntitlementsDefinitionRequest <DA> is used for defining new entitlements, and modifying or deleting existing entitlements for the specified party(-ies).
-
DB = PartyEntitlementsDefinitionRequestAck
The PartyEntitlementsDefinitionRequestAck <DB> is used as a response to the PartyEntitlemensDefinitionRequest(35=DA) to accept (with or without changes) or reject the definition of party entitlements.
-
DC = TradeMatchReport
The TradeMatchReport <DC> message is used by exchanges and ECN’s to report matched trades to central counterparties (CCPs) as an atomic event. The message is used to express the one-to-one, one-to-many and many-to-many matches as well as implied matches in which more complex instruments can match with simpler instruments.
-
DD = TradeMatchReportAck
The TradeMatchReportAck <DD> is used to respond to the TradeMatchReport <DC> message. It may be used to report on the status of the request (e.g. accepting the request or rejecting the request).
-
DE = PartyRiskLimitsReportAck
PartyRiskLimitsReportAck is an optional message used as a response to the PartyRiskLimitsReport <CM> or PartyRiskLimitsUpdateReport <CR> messages to acknowledge or reject those messages.
-
DF = PartyRiskLimitCheckRequest
PartyRiskLimitCheckRequest is used to request for approval of credit or risk limit amount intended to be used by a party in a transaction from another party that holds the information.
-
DG = PartyRiskLimitCheckRequestAck
PartyRiskLimitCheckRequestAck <DG> is used to acknowledge a PartyRiskLimitCheckRequest <DF> message and to respond whether the limit check request was approved or not. When used to accept the PartyRiskLimitCheckRequest <DF> message the Respondent may also include the limit amount that was approved.
-
DH = PartyActionRequest
The PartyActionRequest <DH> message is used suspend or halt the specified party from further trading activities at the Respondent. The Respondent must respond with a PartyActionReport <DI> message.
-
DI = PartyActionReport
Used to respond to the PartyActionRequest <DH> message, indicating whether the request has been received, accepted or rejected. Can also be used in an unsolicited manner to report party actions, e.g. reinstatements after a manual intervention out of band.
-
DJ = MassOrder
The MassOrder <DJ> message can be used to add, modify or delete multiple unrelated orders with a single message. Apart from clearing related attributes, only the key order attributes for high performance trading are available.
-
DK = MassOrderAck
The MassOrderAcknowledgement(35=DK) message is used to acknowledge the receipt of and the status for a MassOrder <DJ> message.
-
DL = PositionTransferInstruction
The PositionTransferInstruction <DL> is sent by clearing firms to CCPs to initiate position transfers, or to accept or decline position transfers.
-
DM = PositionTransferInstructionAck
The PositionTransferInstructionAck <DM> is sent by CCPs to clearing firms to acknowledge position transfer instructions, and to report errors processing position transfer instructions.
-
DN = PositionTransferReport
The PositionTransferReport <DN> is sent by CCPs to clearing firms indicating of positions that are to be transferred to the clearing firm, or to report on status of the transfer to the clearing firms involved in the transfer process.
-
DO = MarketDataStatisticsRequest
The MarketDataStatisticsRequest <DO> is used to request for statistical data. The simple form is to use an identifier (MDStatisticID <2475>) assigned by the market place which would denote a pre-defined statistical report. Alternatively, or also in addition, the request can define a number of parameters for the desired statistical information.
-
DP = MarketDataStatisticsReport
The MarketDataStatisticsReport <DP> is used to provide unsolicited statistical information or in response to a specific request. Each report contains a set of statistics for a single entity which could be a market, a market segment, a security list or an instrument.
-
DQ = CollateralReportAck
CollateralReportAck <DQ> is used as a response to the CollateralReport <BA>. It can be used to reject a CollateralReport <BA> when the content of the report is invalid based on the business rules of the receiver. The message may also be used to acknowledge receipt of a valid CollateralReport <BA>.
-
DR = MarketDataReport
The MarketDataReport <DR> message is used to provide delimiting references (e.g. start and end markers in a continuous broadcast) and details about the number of market data messages sent in a given distribution cycle.
-
DS = CrossRequest
The CrossRequest <DS> message is used to indicate the submission of orders or quotes that may result in a crossed trade.
-
DT = CrossRequestAck
The CrossRequestAck <DT> message is used to confirm the receipt of a CrossRequest <DS> message.
-
DU = AllocationInstructionAlertRequest
This message is used in a clearinghouse 3-party allocation model to request for AllocationInstructionAlert <BM> from the clearinghouse. The request may be used to obtain a one-time notification of the status of an allocation group.
-
DV = AllocationInstructionAlertRequestAck
This message is used in a clearinghouse 3-party allocation model to acknowledge a AllocationInstructionAlertRequest <DU> message for an AllocationInstructionAlert <BM> message from the clearinghouse.
-
DW = TradeAggregationRequest
TradeAggregationRequest <DW> is used to request that the identified trades between the initiator and respondent be aggregated together for further processing.
-
DX = TradeAggregationReport
TradeAggregationReport <DX> is used to respond to the TradeAggregationRequest <DW> message. It provides the status of the request (e.g. accepted or rejected) and may also provide additional information supplied by the respondent.
-
EA = PayManagementReport
PayManagementReport <EA> may be used to respond to the PayManagementRequest <DY> message. It provides the status of the request (e.g. accepted, disputed) and may provide additional information related to the request.
PayManagementReport <EA> may also be sent unsolicited by the broker to a client. In which case the client may acknowledge and resolve disputes out-of-band or with a simple PayManagementReportAck <EB>.
PayManagementReport <EA> may also be sent unsolicited to report the progress status of the payment itself with PayReportTransType <2804>=2 (Status).
-
EB = PayManagementReportAck
PayManagementReportAck <EB> is used as a response to the PayManagementReport <EA> message. It may be used to accept, reject or dispute the details of the PayManagementReport <EA> depending on the business rules of the receiver. This message may also be used to acknowledge the receipt of a PayManagementReport <EA> message.
-
DY = PayManagementRequest
PayManagementRequest <DY> message is used to communicate a future or expected payment to be made or received related to a trade or contract after its settlement.
-
DZ = PayManagementRequestAck
PayManagementRequestAck <DZ> is used to acknowledge the receipt of the PayManagementRequest <DY> message (i.e. a technical acknowledgement of receipt). Acceptance or rejection of the request is reported in the corresponding PayManagementReport <EA>.
-
EC = SettlementStatusRequest
SettlementStatusRequest <EC> is used to request for the settlement status of a trade.
-
ED = SettlementStatusRequestAck
SettlementStatusRequestAck <ED> is used to respond to the SettlementStatusRequest <EC> to acknowledge the request and provide status for the request message.
-
EE = SettlementStatusReport
SettlementStatusReport <EE> is a response to the SettlementStatusRequest <EC> to provide settlement status for the requested trade. It may also be sent unsolicited without an explicit request message by the party able to provide the settlement status for the trade identifield in the report message.
-
EF = SettlementStatusReportAck
SettlementStatusReportAck <EF> is used to respond to the SettlementStatusReport <EE> to acknowledge or reject the report.
-
EG = SecurityRiskMetricsReport
SecurityRiskMetricsReport <EG> is used for publishing the risk metrics, valuation metrics or analytics of one or more securities, or for an option series.
-
EH = AlgoCertificateRequest
AlgoCertificateRequest <EH> is used to request for algo testing certificate information for one or more algorithms.
-
EI = AlgoCertificateRequestAck
AlgoCertificateRequestAck <EI> is used to respond to the AlgoCertificateRequest <EH> to acknowledge the request and provide status for the request message.
-
EJ = AlgoCertificateReport
AlgoCertificateReport <EJ> is a response to the AlgoCertificateRequest <EH> to certify an algo. It may also be sent unsolicited without an explicit request message by the party able to provide certificate information for the algo identified in the report message.
-
EK = AlgoCertificateReportAck
AlgoCertificateReportAck <EK> is used to respond to the AlgoCertificateReport <EJ> to acknowledge or reject the report message.
-
EL = TestSuiteDefinitionRequest
TestSuiteDefinitionRequest <EL> is used to convey to the test system the suite of test scenarios to perform.
-
EM = TestSuiteDefinitionRequestAck
TestSuiteDefinitionRequestAck <EM> is used to respond to the TestSuiteDefinitionRequest(35= EL) to acknowledge the request and provide status for the request message.
-
EN = TestActionRequest
TestActionRequest <EN> is used to manage test executions or request for testing activity state of the identified test suite.
-
EO = TestActionRequestAck
TestActionRequestAck <EO> is used to respond to the TestActionRequest <EN> to acknowledge the request and provide status for the request message.
-
EP = TestActionReport
TestActionReport <EP> is used to report the testing results of the identified test suite that has been executed with TestActionRequest <EN>. In the context of algorithmic trading, the results may be used to create a certificate for the algorithm upon meeting the success criteria.