ICE Europe Commodities iMpact
ICE disseminates FOD (full order depth), MBP (market by price), TOB (top-of-book) and market statistics data for futures and options on futures via their iMpact feed, which Databento receives over UDP multicast in our Aurora DC3 data center.
For futures, ICE publishes both FOD and MBP-5. Databento only normalizes the FOD messages. For options, ICE publishes MBP-10, MBP-5 and top-of-book. Databento only normalizes the MBP-10 messages.
This means that for options, only the top 10 levels of the book are available even in the MBO schema. For futures the full market is shown.
Timestamps
ICE iMpact messages received by Databento will generally include two timestamps with microsecond precision.
As with all of our datasets, we also collect a ts_recv
timestamp when the packet was received by our capture server.
Databento Field | ICE Field | Description |
---|---|---|
ts_recv |
N/A | The capture-server-received timestamp. |
ts_event |
TransactDateTime and SequenceWithinMillis | The matching-engine-processed timestamp with sub-microsecond sequence number. |
ts_in_delta |
SentDateTime | The matching-engine-sending timestamp. |
ICE provides microsecond granularity timestamps along with sub-microsecond sequence numbers for ordering that are normalized as nanosecond timestamps for consistency in ordering with other datasets.
More details about our timestamps are available in our timestamping guide.
Matching Engine Location
ICE Europe Commodities has matching engines both in Chicago and Basildon. Currently, the products offered by Databento all trade in the ICE silo, located in 350 E Cermak, Chicago. Databento captures the data in our Aurora DC3 location.
MBO normalization
For options, the ICE iMpact feed only includes market-by-price, which matches Databento's MBP-10 schema. We do not offer these messages in our MBO schema. They are only available on MBP-10 and other downstream schemas.
Each ICE "Trade Message" is normalized into a single MBO record with the Trade action, and the message's "TradeID" field is used as the order_id
.
ICE does not disseminate information about the passive side of the trade. The corresponding Fill record will have side
equal to N
and the same order_id
value as the Trade record.
When ICE does not specify the aggressing side, Trade records will have side
equal to N
.
System priced legs
A system priced leg is the result of a trade in the outright spread. These trades, as published by the exchange, can have prices that are 10% or more off from the best bid and offer. ICE recommends that the price of these trades isn't counted towards market statistics.
Databento normalizes system priced legs as a Trade record with side
equal to N
and an UNDEF_PRICE
(0x7fffffffffffffff
, 9223372036854775808) value for the price.
These trades are counted towards OHLCV volume, but not towards the open, high, low or close values. This means that OHLCV messages can have some (or even all) price values as UNDEF_PRICE
.
Off-market trades
Trades marked by the exchange as off-market have their publisher_id
set to IFEU.IMPACT.XOFF
to distinguish them from on-exchange trades.
This distinction is also reflected on the OHLCV schemas - if an interval contains both on-market and off-market trades for an instrument, two OHLCV messages will be published for that instrument on that interval, one with IFEU.IMPACT.IFEU
as the publisher_id
and one with IFEU.IMPACT.XOFF
.
Statistics
Stat flags
The IsOfficial
field in the ICE iMpact Settlement Price Message and IsSettlePriceOfficial
in
the Market Snapshot Message are normalized to the first (least-significant) bit of stat_flags
where the bit is set if
IsOfficial
is Y
.
This is consistent with the behavior for CME Globex MDP 3.0.
Symbology
ICE uses separate symbology for outrights and strategies.
Outrights
For outrights — individual futures and options — raw symbols are sourced from ContractSymbol
field.
If ContractSymbolExtra
is present, it's appended to the ContractSymbol
.
Outright contract symbols are composed of several parts indicating different aspects of the instrument.
For example, the Brent August 2024 futures contract's symbol is BRN FMQ0024!
.
This can be broken down as follows:
Component | Name | Description |
---|---|---|
BRN |
Contract code | The parent symbol or product this instrument belongs to. |
F |
Contract type | Indicates whether the instrument is a future (F ), swap, or other type of contract. |
M |
Term | The contract term, usually month (M ). |
Q |
Month | The expiration month, e.g. Q for August. |
00 |
Day | The effective date of the contract. 00 for monthly contracts. |
24 |
Year | The two-digit expiration year. |
! |
Switch character | Indicates additional distinguishing information about the contract. ! indicates no additional data. |
Options begin with their underlying future's symbol followed by an underscore (_
) and the option block.
Using the Brent August 2024 87.00 call BRN FMQ0024_OMCA0000087002062524
as an example, the option block breaks down as:
Component | Name | Description |
---|---|---|
O |
Option indicator | Will always be O for options. |
M |
Option type | The option term, e.g. M onthly or W eekly. |
C |
Put or call | Whether the option is a C all or P ut. |
A |
Option style | The exercise style of the option, e.g. A for American. |
000008700 |
Strike | The zero-padded nine-digit strike price. |
2 |
Strike decimal | The number of decimal places in the strike price. Applying two decimal places to 8700 gives a strike price of 87.00. |
062524 |
Expiration date | The MMDDYY expiration date of the option. BRN options expire before the contract month, in this case the August options expire June 25, 2024. |
Refer to ICE's Instrument Naming Convention document for a full explanation of the format of contract symbols. Because each dataset has a separate symbology namespace, Databento omits the MIC code from the fully-qualified symbol in ICE's examples.
Strategies
For spreads and strategies where ICE does not define a ContractSymbol
, raw symbols are sourced from `StrategySymbol``.
Strategy symbols are composed of several parts, however, due to the use of numeric identifiers, strategy raw symbols are harder to interpret than those for outrights.
The Brent options iron condor BRN 40 30775617
can be broken down as follows:
Component | Name | Description |
---|---|---|
BRN |
Contract code | The parent symbol or product this instrument belongs to. |
40 |
Strategy code | A left space-padded three-digit number identifying the type of strategy, e.g. 40 for iron condor. Refer to the table in this document for a complete list of strategy codes. |
30775617 |
Market ID | A left space-padded 10-digit unique identifier. The same as instrument_id . |
Databento MBO snapshot
ICE Europe Commodities iMpact daily trading hours cross 00:00:00 UTC. To make it easier to work with historical MBO data, Databento includes an order book snapshot at 00:00:00 UTC each weekday (Monday-Friday).
Definitions
MarketTypeId
is normalized tomarket_segment_id
MICCode
is normalized toexchange
when it is provided: only for futures and future strategies
Expirations
ICE only provides date-granularity expiration data in OptionsExpirationDate
and ScreenLastTrade
fields.
As a result, the expiration
field in the definition schema will always be at UTC midnight, even when the option expires during or after the trading day.