Trading Digital Assets FIX Trading Community Copyright 2023, FIX Protocol, Limited 2023-03-07 Baseline recommended set of FIX fields used for sending order related FIX messages between trading counterparties when trading digital assets. The full set of fields for these messages and components can be found in the [online specification](https://www.fixtrading.org/online-specification/). [FIX Recommended Practices for Trading Digital Assets](https://www.fixtrading.org/packages/recommended-practices-for-digital-asset-trading/) Message Order handling and execution messages float field representing a price. Note the number of decimal places may vary. For certain asset classes prices may be negative values. For example, prices for options strategies can be negative under certain market conditions. Refer to Volume 7: FIX Usage by Product for asset classes that support negative price values. float field representing a price. Note the number of decimal places may vary. For certain asset classes prices may be negative values. For example, prices for options strategies can be negative under certain market conditions. Refer to Volume 7: FIX Usage by Product for asset classes that support negative price values. Alpha-numeric free format strings, can include any character or punctuation except the delimiter. All String fields are case sensitive (i.e. morstatt != Morstatt). Alpha-numeric free format strings, can include any character or punctuation except the delimiter. All String fields are case sensitive (i.e. morstatt != Morstatt). int field representing the length in bytes. Value must be positive. int field representing the length in bytes. Value must be positive. float field capable of storing either a whole number (no decimal places) of "shares" (securities denominated in whole units) or a decimal value containing decimal places for non-share quantity asset classes (securities denominated in fractional units). float field capable of storing either a whole number (no decimal places) of "shares" (securities denominated in whole units) or a decimal value containing decimal places for non-share quantity asset classes (securities denominated in fractional units). string field representing a currency type using ISO 4217 Currency code (3 character) values (see Appendix 6-A). string field representing a currency type using ISO 4217 Currency code (3 character) values (see Appendix 6-A). string field representing a market or exchange using ISO 10383 Market Identifier Code (MIC) values (see"Appendix 6-C). string field representing a market or exchange using ISO 10383 Market Identifier Code (MIC) values (see"Appendix 6-C). int field representing a message sequence number. Value must be positive. int field representing a message sequence number. Value must be positive. string field representing date and time combination Universal Time Coordinated (UTC), also known as Greenwich Mean Time (GMT). Its value space is described as the combination of date and time of day in the Chapter 5.4 of ISO 8601. Valid values are in the format YYYY-MM-DDTHH:MM:SS.s where YYYY = 0000-9999 year, MM = 01-12 month, DD = 01-31 day, HH = 00-23 hour, MM = 00-59 minute, SS = 00-60 second (60 only if UTC leap second), and optionally one or more digits representing a decimal fraction of a second. The punctuation of "-", ":" and the string value of "T" to separate the date and time are required. The "." is only required when sub-second time precision is specified. Leap Seconds: Note that UTC includes corrections for leap seconds, which are inserted to account for slowing of the rotation of the earth. Leap second insertion is declared by the International Earth Rotation Service (IERS) and has, since 1972, only occurred on the night of Dec. 31 or Jun 30. The IERS considers March 31 and September 30 as secondary dates for leap second insertion, but has never utilized these dates. During a leap second insertion, a UTCTimestamp field may read "1998-12-31T23:59:59", "1998-12-31T23:59:60", "1999-01-01T00:00:00". (see http://tycho.usno.navy.mil/leapsec.html) string field representing time/date combination represented in UTC (Universal Time Coordinated, also known as "GMT") in either YYYYMMDD-HH:MM:SS (whole seconds) or YYYYMMDD-HH:MM:SS.sss* format, colons, dash, and period required. Valid values: YYYY = 0000-9999, MM = 01-12, DD = 01-31, HH = 00-23, MM = 00-59, SS = 00-60 (60 only if UTC leap second), sss* fractions of seconds. The fractions of seconds may be empty when no fractions of seconds are conveyed (in such a case the period is not conveyed), it may include 3 digits to convey milliseconds, 6 digits to convey microseconds, 9 digits to convey nanoseconds, 12 digits to convey picoseconds; Other number of digits may be used with bilateral agreement. Leap Seconds: Note that UTC includes corrections for leap seconds, which are inserted to account for slowing of the rotation of the earth. Leap second insertion is declared by the International Earth Rotation Service (IERS) and has, since 1972, only occurred on the night of Dec. 31 or Jun 30. The IERS considers March 31 and September 30 as secondary dates for leap second insertion, but has never utilized these dates. During a leap second insertion, a UTCTimestamp field may read "19981231-23:59:59", "19981231-23:59:60", "19990101-00:00:00". (see http://tycho.usno.navy.mil/leapsec.html) string field representing a Date of Local Market (as opposed to UTC) in YYYY-MM-DD format. This is the "normal" date field used by the FIX Protocol. Valid values: YYYY = 0000-9999, MM = 01-12, DD = 01-31. string field representing a Date of Local Market (as opposed to UTC) in YYYYMMDD format. This is the "normal" date field used by the FIX Protocol. Valid values: YYYY = 0000-9999, MM = 01-12, DD = 01-31 float field typically representing a Price times a Qty float field typically representing a Price times a Qty int field representing the number of entries in a repeating group. Value must be positive. Sequence of digits without commas or decimals and optional sign character (ASCII characters "-" and "0" - "9" ). The sign character utilizes one byte (i.e. positive int is "99999" while negative int is "-99999"). Note that int values may contain leading zeros (e.g. "00023" = "23"). CUSIP SEDOL ISIN ISO Currency Code (ISO 4217) Financial Instrument Global Identifier (FIGI) Digital Token Identifier (ISO 24165) Identifies class or source of the Currency(15) value. Too late to cancel Unknown order Broker / Exchange Option Code to identify reason for cancel rejection. Order cancel request Order cancel/replace request Identifies the type of request that a Cancel Reject is in response to. All or none (AON) Instructions for order handling on exchange trading floor. If more than one instruction is applicable to an order, this field can contain multiple instructions separated by space. *** SOME VALUES HAVE BEEN REPLACED - See "Replaced Features and Supported Approach" *** (see Volume : "Glossary" for value definitions) Proprietary / Custom code MIC (ISO 10383 - Market Identifier Code) The ID source of ExDestination New Canceled Replaced Rejected Calculated Restated (ExecutionReport(35=8) message sent unsolicited by sellside, with ExecRestatementReason(378) set) Order Status Trade (partial fill or fill) Trade Correct Describes the specific ExecutionRpt (e.g. Pending Cancel) while OrdStatus(39) will always identify the current order status (e.g. Partially Filled). GT corporate action GT renewal / restatement (no corporate action) Verbal change The reason for restatement when an ExecutionReport(35=8) or TradeCaptureReport(35=AE) message is sent with ExecType(150) = D (Restated) or used when communicating an unsolicited cancel. Automated execution order, private, no Broker intervention Automated execution order, public, Broker intervention OK Manual order, best execution Instructions for order handling on Broker trading floor Agent Cross as agent Cross as principal Broker capacity in order execution ExecutionReport OrderCancelReject NewOrderSingle OrderCancelRequest OrderCancelReplaceRequest OrderStatusRequest 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 *** Broker / Exchange Option Unknown symbol Exchange Closed Code to identify reason for order rejection. Note: Values 3, 4, and 5 will be used when rejecting an order due to pre-allocation information errors. New Partially filled Filled Identifies current status of order. *** SOME VALUES HAVE BEEN REPLACED - See "Replaced Features and Supported Approach" *** (see Volume : "Glossary" for value definitions) Market Limit Stop/Stop Loss Stop Limit Order type. *** SOME VALUES ARE NO LONGER USED - See "Deprecated (Phased-out) Features and Supported Approach" *** (see Volume : "Glossary" for value definitions) Legal Entity Identifier (ISO 17442) LEI Generally accepted market participant identifier (e.g. NASD mnemonic) Proprietary / Custom code. Custom ID schema used between counterparties, trading platforms and repositories. Identifies class or source of the PartyID (448) value. Required if PartyID is specified. Note: applicable values depend upon PartyRole (452) specified. See "Appendix 6-G - Use of <Parties> Component Block" Executing Firm Client ID Identifies the type or role of the PartyID (448) specified. Firm Type of PartySubID(523) value. Per unit (i.e. per share or contract). Use for Cryptotokens (i.e. per token) representing other assets (ICOs). Fixed amount (absolute value). Use for Cryptocurrency with Price(44) in Currency(15) units Code to represent the price type. CUSIP SEDOL ISIN ISO Currency Code (ISO 4217) Financial Instrument Global Identifier (FIGI) Digital Token Identifier (ISO 24165) Identifies class or source of the SecurityID(48) value. Digital Asset. Asset that exists only in digital form or which is the digital representation of another asset (Source: ISO 24165 - Terms and Definitions). Indicates type of security. Security type enumerations are grouped by Product(460) field value. NOTE: Additional values may be used by mutual agreement of the counterparties. Buy Sell Side of order (see Volume : "Glossary" for value definitions) Day (or session) Good Till Cancel (GTC) Immediate Or Cancel (IOC) Specifies how long the order remains in effect. Absence of this field is interpreted as DAY. NOTE not applicable to CIV Orders. Execution Time Time in Time out Trading / Regulatory timestamp type. Note of applicability: Values are required in various regulatory environments: required for US futures markets to support computerized trade reconstruction, required by MiFID II / MiFIR for transaction reporting and publication, and required by FINRA for reporting to the Consolidated Audit Trail (CAT). [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag6.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag8.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag9.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag10.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag11.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag14.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag15.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag17.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag18.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag19.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag21.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag22.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag29.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag30.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag31.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag32.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag34.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag35.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag37.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag38.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag39.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag40.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag41.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag44.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag48.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag49.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag52.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag54.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag55.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag56.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag58.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag59.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag60.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag75.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag99.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag100.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag102.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag103.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag106.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag107.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag119.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag120.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag150.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag151.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag152.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag167.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag207.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag378.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag452.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag434.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag447.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag448.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag452.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag453.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag454.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag455.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag456.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag523.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag768.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag769.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag770.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag790.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag802.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag847.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag1056.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag1133.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag2897.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag2899.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/tag2957.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/cmp1003.html) Used to specify order quantity in number of tokens. Used to specify the order quantity as a total amount of ccy1 currency. [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/cmp1011.html) FIXT.1.1 (Always unencrypted, must be first field in message) (Always unencrypted, must be second field in message) (Always unencrypted, must be third field in message) (Always unencrypted) (Always unencrypted) (Can be embedded within encrypted data section.) (Can be embedded within encrypted data section.) The standard FIX message header. (Always unencrypted, always last field in message) The standard FIX message trailer. The Parties component block is used to identify and convey information on the entities both central and peripheral to the financial transaction represented by the FIX message containing the Parties Block. The Parties block allows many different types of entities to be expressed through use of the PartyRole(452) field and identifies the source of the PartyID(448) through the the PartyIDSource(447). [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/cmp1012.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/cmp2077.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/cmp2071.html) [See complete definition online (FIX Latest).](https://fiximate.fixtrading.org/en/FIX.Latest/cmp1020.html) MsgType = D Can be used to identify the destination Cryptoexchange. Time this order request was initiated/released by the trader, trading system, or intermediary. Required for OrdType(40)=3 (Stop) or OrdType(40)=4 (Stop limit). 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. MsgType = 8 Required for Trade Cancel and Trade Correct ExecType(150) messages. For optional use with ExecType(150)=8 (Rejected) Required for ExecType(150)=D (Restated) Required if specified on the order. Required if specified on the order. Absence of this field indicates Day order. If ExecType(150)=F (Trade), indicates the market where the trade was executed. If ExecType(150)=0 (New), indicates the market where the order was routed. Not required for markets where average price is not calculated by the market. Conditionally required otherwise. Used when reporting other than current day trades. The execution report message is used to: 1. confirm the receipt of an order 2. confirm changes to an existing order (i.e. accept cancel and replace requests) 3. relay order status information 4. relay fill information on working orders 5. relay fill information on tradeable or restricted tradeable quotes 6. reject orders 7. report post-trade fees calculations associated with a trade MsgType = G Unique identifier of most recent order as assigned by sell-side (broker, exchange, ECN). Required for OrdType(40)=3(Stop) or OrdType(40) =4(Stop limit). Absence of this field indicates Day order. 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. MsgType = F Unique ID of cancel request as assigned by the institution. Time this order request was initiated/released by the trader or trading system. 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). MsgType = 9 If CxlRejReason(102)=1 (Unknown order), specify "NONE". 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. MsgType = H Conditionally required if ClOrdID(11) is not provided. Either OrderID(37) or ClOrdID(11) must be provided. The ClOrdID(11) of the order whose status is being requested. Conditionally required if the OrderID(37) is not provided. Either OrderID(37) or ClOrdID(11) must be provided. Optional, can be used to uniquely identify a specific OrderStatusRequest(35=H) message. Echoed back on ExecutionReport(35=8) if provided. The order status request message is used by the institution to generate an order status message back from the broker.