European Energy Exchange
Dataset ID: XEEE.EOBI
European Energy Exchange (EEX) disseminates full depth-of-book data for their exchange through their EOBI (Enhanced Order Book Interface) feed, which Databento receives over UDP multicast in our FR2 data center. The XEEE.EOBI dataset does not disseminate data for EEX spot market, only for derivatives market.
The latest EOBI Specification is available from Eurex website.
Trading hours
The base trading hours on the EEX derivatives take place on weekdays from 08:00:00 CET to 17:00:00 CET. These trading hours can vary depending on the type of market.
EEX Japanese power futures trading hours are from 16:00 JST to 18:00 JST (08:00 CET to 10:00 CET).
EEX provides holiday calendars across different market types.
Timestamps
EEX EOBI messages received by Databento include multiple timestamps with nanosecond precision.
As with all of our datasets, we also collect a ts_recv timestamp when the packet was received by our capture server. More details about our timestamps are available in our timestamping guide.
| Databento Field | EEX EOBI Field | Description |
|---|---|---|
ts_recv |
N/A | The capture-server-received timestamp. |
ts_event |
RequestTime, TransactTime | RequestTime (Gateway request in timestamp) when available. TransactTime otherwise. |
ts_in_delta |
TransactTime from PacketHeader | Time when the feed handler writes packet on the wire. |
EOBI RequestTime field is not available for the off-market trades (EOBI message TES Trade Report), manual and auction trades (EOBI message Trade Report), and cross request (EOBI message Cross Request). Thus ts_event is populated with TransactTime field, which corresponds to the time when the transaction was processed by the exchange's matching engine.
The ts_event for passive trade messages (EOBI messages Partial Order Execution and Full Order Execution) is populated with the RequestTime from the aggressive order.
Definition normalization
Definition records are sourced daily from Reference Data Interface snapshot. Definition records for intra-day instruments are sourced from EOBI incremental feed.
| Databento Field | EEX RDI Field | Description |
|---|---|---|
appl_id |
PartitionId | Identifies the instrument's partition. |
asset |
MarketSegment | Identifies the instrument's market segment. This field is used by parent and continuous symbology. |
raw_symbol |
SecurityDesc | Instrument identifier (See Symbology section below). |
secsubtype |
ProductComplex | Identifies the type of instrument (See Symbology section below). |
underlying |
MarketSegment | The market segment of the underlying (if there is an underlying). |
Symbology
Raw symbols are sourced from SecurityDesc string field. The semantics varying according to the type of instrument (secsubtype in the normalized message). The table below describes each instrument type, based on the venue's documentation.
| Value | Instrument type | Format |
|---|---|---|
1 |
Simple Instrument | PROD SI YYYYMMDD SM ES C/P StrikePrice VN |
2 |
Standard option strategy | PROD.O.YYMMDD.IST.SEQ-NO |
3 |
Non-standard option strategy | PROD.O.YYMMDD.IST.SEQ-NO |
4 |
Volatility strategy | PROD.V.YYMMDD.IST.SEQ-NO |
5 |
Futures spread | PROD.S.MONYY.MONYY.SPD |
6 |
Inter-product spread | PROD.I.YYMMDD.IST.SEQ-NO |
7 |
Standard futures strategy | PROD.F.YYMMDD.IST.SEQ-NO |
8 |
Pack and bundle | PROD.B.MONYY.IST |
9 |
Strip | PROD.T.YYMMDD.SEQ-NO |
10 |
Flexible instrument | PROD FI YYYYMMDD SM ES C/P StrikePrice VN for options. PROD FI YYYYMMDD SM for futures. |
11 |
Commodity strip | PROD.C.YYMMDD.IST.SEQ-NO |
12 |
Scaled simple instrument | PROD SI YYYYMMDD SM ES C/P StrikePrice VN QSF |
13 |
Non-standard volatility strategy | PROD.D.YYYYMMDD.SEQ-NO |
14 |
Total return future strategy | PROD.R.YYYYMMDD.IST.SEQ-NO |
The acronyms from the table above correspond to:
SM: Settlement method (CSfor cash,PSfor Physical).ES: Exercise style (EUfor European,AMfor American).VN: Version number of an option. The version changes as a result of corporate events.IST: Standard strategy type for complex instrument, as detailed in the Trading parameters document.SEQ-NO: Unique sequence number of 6 characters per product.QSF: Quantity scaling factor of scaled simple instruments.YYYYMMDD: Contract date.MONYY: Contract month-year.YYMMDD: Creation date.O,N,V,D,F: Identify different strategy types.I: Identify inter-product spreads instruments.T: Identify strip instruments.C: Identify commodity strip instruments .
Expirations
EEX only provides date-granularity expiration data in MaturityDate field from the reference data.
As a result, the expiration field in the definition schema will always be at UTC midnight, even when the instrument expires during or after the trading day.
EEX also provides the MaturityMonthYear field in the reference data, which corresponds to the instrument expiration month, and may be in a different month than the MaturityDate field.
The MaturityMonthYear field is mapped to the fields maturity_year and maturity_month in the definition schema (maturity_day is not populated).
Statistics normalization
Databento provides the following statistics:
- Opening price: First trade price of the trading session.
- Trading session high price: Highest trade price of the trading session.
- Trading session low price: Lowest trade price of the trading session.
- Close price: Last trade price of the trading session.
- Cleared volume: Total on-exchange trading volume.
- Final Settlement price: Published daily around 19:25:00 CET.
- Open Interest: Published daily around 21:10:00 CET.
Settlement price and open interest are only provided for options and futures outrights that had any trades during the day. Settlement price and open interest are not provided for Freight Futures and Options.
Trading session high price, low price, close price, and cleared volume are published daily around 22:00:00 UTC, and only account for on-exchange trades.
On-exchange trades manually entered by T7 Market Supervision do not affect price statistics.
Off-market trades
Trades reported in TES Trade Report EOBI message are considered off-market. Off-market trades with the price field set to UNDEF_PRICE contain the non-disclosed trade volume during the day.
Off-market trades have their publisher_id set to XEEE.EOBI.XOFF to distinguish them from on-exchange trades, which have their publisher_id set to XEEE.EOBI.XEEE.
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 XEEE.EOBI.XEEE as the publisher_id and one with XEEE.EOBI.XOFF.
Order Identifier
EOBI does not provide an order identifier (order_id) field. Instead, it relies on two fields to uniquely identify an order of a given instrument: TrdRegTSTimePriority (priority timestamp) and Side.
Databento normalizes the order_id field in MBO schema by combining both priority timestamp and side. To extract the priority timestamp from the order_id, the most-significant bit can be masked, as below:
priority_timestamp = order_id & 0x7FFFFFFFFFFFFFFF
Data prior to 2025-03-09
Data prior to 2025-03-09 was not normalized from EEX full depth-of-book captures, but from EEX Market Data API. The definition, statistics, ohlcv-1d, and trades schemas are available prior to this date for options and futures.
The reported volume (in statistics and ohlcv-1d) and size (in trades) correspond to the number of traded contracts/lots reported by EEX Market Data API.
The raw_instrument_id field from definition schema is not populated, as it is not provided by the venue. The group field is populated according to the EEX instrument's commodity class: POWER, NATGAS, AGRI, EMISSIONS, and FREIGHT.
The following statistics are published: Opening price, trading session high price, trading session low price, close price, cleared volume, open interest, and settlement price. Cleared volume accounts for on and off-exchange traded volume.
Implied trades have no price reported by the venue, thus price will be UNDEF_PRICE (0x7fffffffffffffff, 9223372036854775808).
Due to not being generated from packet captures, both ts_event and ts_recv fields are set to midnight UTC, except:
- For
trades, where bothts_eventandts_recvreport the trade timestamp. - For
ohlcv-1d, wherets_eventmarks the start of the bar.