CME Historical Market Depth Data on Google Cloud Platform
As of December 1, 2022, CME Historical Market Depth Data on Google Cloud Platform (GCP) is available for clients to access through Google BigQuery services and is easily discoverable through Google Analytics Hub. This service enables customer to query data from 2014 to the present day and can handle the heaviest workloads.
This topic provides a technical overview of CME Historical Market Depth Data on GCP.
For complete details regarding Google Cloud Services, including BigQuery and Analytics Hub, please refer to:
- Service Accounts
- Analytics Hub:
- BigQuery:
Contents
Revision History
Date | Description |
---|---|
6/14/2023 | Revised Onboarding section. |
12/1/2022 | Initial publication. |
Key Events and Dates
Date | Milestone |
---|---|
12/1/2022 | Production |
Certification
Certification for Historical Market Depth Data on Google Cloud Platform is not required.
Onboarding
Customers access CME Group data products on Google Cloud (GCP) through any BigQuery discovery service, including Analytics Hub.
Customers interested in accessing the CME Historical Market Depth Data on GCP dataset should contact CME Group Data Sales, complete the Information License Agreement (if required) and pay the applicable fee.
Access Products
The following steps are required for onboarding and entitlements to the CME Historical Market Depth Data on GCP dataset in BigQuery:
- Confirm/Obtain your CME Group Login ID. See additional information about creating a CME Group Login account as needed.
- Confirm/Obtain your Google Cloud account and Project. Navigate to cloud.google.com to login.
- From your Google Account, select the Google Cloud menu ( ), then navigate to BigQuery > AnalyticsHub.
- Select Search Listings.
- Enter "CME Group" and select from the following products
- CME Group Historical Market Depth Data
- New York Mercantile Exchange 10 Level Order Book
- Commodities Exchange Center 10 Level Order Book
- Chicago Mercantile Exchange 10 Level Order Book
- Chicago Board of Trade 10 Level Order Book
- Select Request Access to begin the licensing workflow to fill out the Schedule 6 and share your Google account to gain access.
Sample Queries
This T+1 service gives customers the ability to directly access the CME database from January 2014 to the present day. After gaining access, customers will be able to streamline data into other cloud services, such as Google Sheets, BigQuery Machine Learning and Google Vertex AI,etc.
The historical market depth dataset contains 3 different data tables:
Statistics: Data examples include Settlements, Open, High, Low, Close, aggregated volume
Depth of Book: All market data for 10 Levels deep in futures and 5 level deep in options.
Quotes: User Defined Spread data. Customers can query when instruments were RFQ'd.
These tables allow customers to recreate the book or easily query for Top of Book or Time and Sales. More advance users will be able to extract market analytics such as 200 MA, TWAP, and VWAP, etc., from these two tables.
Top of Book
SELECT transaction_ts, glbx_sym, bid_level_1_qty,bid_level_1_px,ask_level_1_px,ask_level_1_qty FROM customersProject.prod_cme_globex_10_level_order_book.v_orderbook_10_lvl_futuresandoptions WHERE cycle_date = "2022-09-09" AND glbx_sym= "MBTU2" ORDER BY transaction_ts
Time and Sales (Trades)
SELECT transaction_ts,glbx_sym,last_trade_px, last_trade_qty FROM customersProject.prod_cme_globex_10_level_order_book.v_orderbook_10_lvl_futuresandoptions WHERE cycle_date = "2022-09-09" AND glbx_sym= "BTCU2" and rpt_type = 'TRD' ORDER BY transaction_ts
Settlements
SELECT tranaction_ts, glbx_sym,settle_px, security_type,transaction_ts_hour FROM customersProject.prod_cme_globex_10_level_order_book.v_statistics_futuresandoptions WHERE cycle_date between "2022-08-01" AND "2022-08-31" AND glbx_sym = "MBTZ2" AND rpt_type = "SETL" AND transaction_ts_hour= 20 ORDER BY tranaction_ts
Accumulated Volume
SELECT tranaction_ts, glbx_sym,volume_qty, security_type,transaction_ts_hour FROM customersProject.prod_cme_globex_10_level_order_book.v_statistics_futuresandoptions WHERE cycle_date between "2022-08-01" AND "2022-08-31" AND glbx_sym = "MBTZ2" AND rpt_type = "MDV" ORDER BY tranaction_ts
Historical Market Depth Data Schema
Order Book (v_orderbook_10_lvl_futuresandoptions)
Order Book Schema
Column Name | Data Type | Description | Values | Example | ||
---|---|---|---|---|---|---|
Order Book Snapshot | Implied Order Book Snapshot | Trade | ||||
transaction_ts_nanos | INT | Nanosecond portion of timestamp | 360885579 | 138139943 | 205200529 | |
transaction_ts | Timestamp | Transaction Time To The Nearest Microsecond UTC | 2022-09-27 02:58:45.360885 UTC | 2022-09-27 03:37:46.138139 UTC | 2022-09-26 15:56:04.205200 UTC | |
rpt_seq_nbr | VARCHAR | Message Sequence Number | 8559 | 49119 | 11762834 | |
px_quote_ccy | VARCHAR | Currency Code | 3-Letter ISO Code | USD | JPY | USD |
contract_period | VARCHAR | Maturity Month/Year | 202211 | 202303 | 202212 | |
glbx_security_id | VARCHAR | Security ID | 51623 | 218 | 206323 | |
glbx_sym | VARCHAR | Symbol | BTCX2-BTCZ2 | NIYH3 | ESZ2 | |
security_type | VARCHAR | Security Type | OPT=Option, FUT=Future, MLEG=Spreads | FUT | FUT | FUT |
und_sec_type | VARCHAR | Underlying Product Type | OPT=Option, FUT=Future, MLEG=Spreads | NONE | NONE | NONE |
market_segment_id | VARCHAR | Market Segment ID | 74 | 68 | 64 | |
last_trade_aggressor_side_ind | VARCHAR | Trade Aggressor Side | null | null | B | |
last_trade_qty | DECIMAL(22.9) | Trade Quantity | null | null | null | |
session_high_px | DECIMAL(22.9) | Session High Trade Price | null | null | 373050 | |
session_high_px_display | VARCHAR | Session High Trade Price Display | null | null | 3730.5 | |
session_low_px | DECIMAL(22.9) | Session Low Trade Price | null | null | 367150 | |
session_low_px_display | VARCHAR | Session Low Trade Price Display | null | null | 3671.5 | |
last_trade_px | VARCHAR | Last Trade Price Display | null | null | 3694 | |
last_trade_px_display | DECIMAL(22.9) | Last Trade Price | null | null | 369400 | |
rpt_type | VARCHAR | Archived Market Data Row Type (Used By Client To Filter) | OBS = Order Book Snapshot, TRD=Trade | OBS | OBS | TRD |
implied_book_ind | VARCHAR | Implied Book Indicator | Y=Implied Snapshot, N=Not Implied | N | Y | N |
user_defined_ind | VARCHAR | Is Instrument User Defined Spread? | H=CME, U=User Defined | H | H | H |
ask_level_1_px | DECIMAL(22.9) | level1askprice | 28 | 26335 | null | |
ask_level_1_px_display | VARCHAR | level1askdisplayprice | 28 | 26335 | null | |
ask_level_1_qty | DECIMAL(22.9) | level1askquantity | 1 | 1 | null | |
ask_level_1_order_count | INT | level1askorder | 1 | 0 | null | |
bid_level_1_px | DECIMAL(22.9) | level1bidprice | 16 | 26230 | null | |
bid_level_1_px_display | VARCHAR | level1biddisplayprice | 16 | 26230 | null | |
bid_level_1_qty | DECIMAL(22.9) | level1bidquantity | 2 | 1 | null | |
bid_level_1_order_count | INT | level1bidorder | 2 | 0 | null | |
ask_level_2_px | DECIMAL(22.9) | level2askprice | 45 | 26340 | null | |
ask_level_2_px_display | VARCHAR | level2askdisplayprice | 45 | 26340 | null | |
ask_level_2_qty | DECIMAL(22.9) | level2askquantity | 2 | 1 | null | |
ask_level_2_order_count | INT | level2askorder | 1 | 0 | null | |
bid_level_2_px | DECIMAL(22.9) | level2bidprice | 14 | 26225 | null | |
bid_level_2_px_display | VARCHAR | level2biddisplayprice | 14 | 26225 | null | |
bid_level_2_qty | DECIMAL(22.9) | level2bidquantity | 2 | 1 | null | |
bid_level_2_order_count | INT | level2bidorder | 1 | 0 | null | |
ask_level_3_px | DECIMAL(22.9) | level3askprice | 55 | 0 | null | |
ask_level_3_px_display | VARCHAR | level3askdisplayprice | 55 | 0 | null | |
ask_level_3_qty | DECIMAL(22.9) | level3askquantity | 1 | 0 | null | |
ask_level_3_order_count | INT | level3askorder | 1 | 0 | null | |
bid_level_3_px | DECIMAL(22.9) | level3bidprice | 13 | 0 | null | |
bid_level_3_px_display | VARCHAR | level3biddisplayprice | 13 | 0 | null | |
bid_level_3_qty | DECIMAL(22.9) | level3bidquantity | 1 | 0 | null | |
bid_level_3_order_count | INT | level3bidorder | 1 | 0 | null | |
ask_level_4_px | DECIMAL(22.9) | level4askprice | 57 | 0 | null | |
ask_level_4_px_display | VARCHAR | level4askdisplayprice | 57 | 0 | null | |
ask_level_4_qty | DECIMAL(22.9) | level4askquantity | 2 | 0 | null | |
ask_level_4_order_count | INT | level4askorder | 1 | 0 | null | |
bid_level_4_px | DECIMAL(22.9) | level4bidprice | 11 | 0 | null | |
bid_level_4_px_display | VARCHAR | level4biddisplayprice | 11 | 0 | null | |
bid_level_4_qty | DECIMAL(22.9) | level4bidquantity | 1 | 0 | null | |
bid_level_4_order_count | INT | level4bidorder | 1 | 0 | null | |
ask_level_5_px | DECIMAL(22.9) | level5askprice | 59 | 0 | null | |
ask_level_5_px_display | VARCHAR | level5askdisplayprice | 59 | 0 | null | |
ask_level_5_qty | DECIMAL(22.9) | level5askquantity | 1 | 0 | null | |
ask_level_5_order_count | INT | level5askorder | 1 | 0 | null | |
bid_level_5_px | DECIMAL(22.9) | level5bidprice | 10 | 0 | null | |
bid_level_5_px_display | VARCHAR | level5biddisplayprice | 10 | 0 | null | |
bid_level_5_qty | DECIMAL(22.9) | level5bidquantity | 1 | 0 | null | |
bid_level_5_order_count | INT | level5bidorder | 1 | 0 | null | |
ask_level_6_px | DECIMAL(22.9) | level6askprice | 64 | null | null | |
ask_level_6_px_display | VARCHAR | level6askdisplayprice | 64 | null | null | |
ask_level_6_qty | DECIMAL(22.9) | level6askquantity | 2 | null | null | |
ask_level_6_order_count | INT | level6askorder | 1 | null | null | |
bid_level_6_px | DECIMAL(22.9) | level6bidprice | 5 | null | null | |
bid_level_6_px_display | VARCHAR | level6biddisplayprice | 5 | null | null | |
bid_level_6_qty | DECIMAL(22.9) | level6bidquantity | 1 | null | null | |
bid_level_6_order_count | INT | level6bidorder | 1 | null | null | |
ask_level_7_px | DECIMAL(22.9) | level7askprice | 67 | null | null | |
ask_level_7_px_display | VARCHAR | level7askdisplayprice | 67 | null | null | |
ask_level_7_qty | DECIMAL(22.9) | level7askquantity | 1 | null | null | |
ask_level_7_order_count | INT | level7askorder | 1 | null | null | |
bid_level_7_px | DECIMAL(22.9) | level7bidprice | 0 | null | null | |
bid_level_7_px_display | VARCHAR | level7biddisplayprice | 0 | null | null | |
bid_level_7_qty | DECIMAL(22.9) | level7bidquantity | 2 | null | null | |
bid_level_7_order_count | INT | level7bidorder | 2 | null | null | |
ask_level_8_px | DECIMAL(22.9) | level8askprice | 68 | null | null | |
ask_level_8_px_display | VARCHAR | level8askdisplayprice | 68 | null | null | |
ask_level_8_qty | DECIMAL(22.9) | level8askquantity | 1 | null | null | |
ask_level_8_order_count | INT | level8askorder | 1 | null | null | |
bid_level_8_px | DECIMAL(22.9) | level8bidprice | -56 | null | null | |
bid_level_8_px_display | VARCHAR | level8biddisplayprice | -56 | null | null | |
bid_level_8_qty | DECIMAL(22.9) | level8bidquantity | 1 | null | null | |
bid_level_8_order_count | INT | level8bidorder | 1 | null | null | |
ask_level_9_px | DECIMAL(22.9) | level9askprice | 74 | null | null | |
ask_level_9_px_display | VARCHAR | level9askdisplayprice | 74 | null | null | |
ask_level_9_qty | DECIMAL(22.9) | level9askquantity | 1 | null | null | |
ask_level_9_order_count | INT | level9askorder | 1 | null | null | |
bid_level_9_px | DECIMAL(22.9) | level9bidprice | -90 | null | null | |
bid_level_9_px_display | VARCHAR | level9biddisplayprice | -90 | null | null | |
bid_level_9_qty | DECIMAL(22.9) | level9bidquantity | 1 | null | null | |
bid_level_9_order_count | INT | level9bidorder | 1 | null | null | |
ask_level_10_px | DECIMAL(22.9) | level10askprice | 78 | null | null | |
ask_level_10_px_display | VARCHAR | level10askdisplayprice | 78 | null | null | |
ask_level_10_qty | DECIMAL(22.9) | level10askquantity | 1 | null | null | |
ask_level_10_order_count | INT | level10askorder | 1 | null | null | |
bid_level_10_px | DECIMAL(22.9) | level10bidprice | -110 | null | null | |
bid_level_10_px_display | VARCHAR | level10biddisplayprice | -110 | null | null | |
bid_level_10_qty | DECIMAL(22.9) | level10bidquantity | 1 | null | null | |
bid_level_10_order_count | INT | level10bidorder | 1 | null | null | |
clr_sym | VARCHAR | Asset Code | BTC | NIY | ES | |
trading_status_ind | VARCHAR | Trade type DailyOpeningPrice is the only possible value | null | null | ||
transaction_ts_hour | VARCHAR | The hour of day the message was produced | 2 | 3 | 15 | |
transaction_ts_display | VARCHAR | String Representation Of Transaction Time To The Nearest Nanosecond | 2022-09-27 02:58:45.360885579 UTC | 2022-09-27 03:37:46.138139943 UTC | 2022-09-26 15:56:04.205200529 UTC | |
cycle_date | VARCHAR | Cycle Date, this is populated by the transaction time on the messages yyyy-MM-dd | 2022-09-26 | 2022-09-26 | 2022-09-26 | |
exchange_mic | VARCHAR | Exchange | XCBT=Chicago Board of Trade XCME=Chicago Mercantile Exchange XNYM=New York Mercantile Exchange XCEC= COMEX (Commodities Exchange Center) NYUM=XNYM-DUMX inter-exchange spread MGCB=XMGE-XCBT inter-exchange spread CBCM=XCME-XCBT inter-exchange spread XFXS=CME FX Link spread GLBX=FX Spot leg | XCME | XCME | XCME |
underlying_product | VARCHAR | Asset sub class, e.g. Energy, Equitiy, Interest Rates | 2=Commodity/Agriculture 4=Currency 5=Equity 6=Government 10=Mortgage 12=Other 13=Financing 14=Interest Rate 15=FX Cash 16=Energy 17=Metals | Equity | Equity | Equity |
Statistics (v_statistics_futuresandoptions)
Statistics Schema
Column Name | Data Type | Description | Values | Example | |||
---|---|---|---|---|---|---|---|
Settlements | Trade Volume | Indicative Opening Price | Opening Summary | ||||
px_quote_ccy | VARCHAR | Currency Code | 3-Letter ISO Code | USD | USD | USD | USD |
rpt_seq_nbr | INT | Message Sequence Number | 2089762 | 1618958 | 612157 | 75084269 | |
market_segment_id | VARCHAR | Market Segment ID | 74 | 74 | 74 | 74 | |
contract_period | VARCHAR | Maturity Month/Year | 202212 | 202212 | 202212 | 202212 | |
transaction_ts_nanos | INT | Nanosecond portion of timestamp | 961243279 | 282900153 | 201095677 | 87994367 | |
glbx_security_id | VARCHAR | Security ID | 49745 | 49745 | 49745 | 49745 | |
security_type | VARCHAR | Security Type | OPT=Option, FUT=Future, MLEG=Spreads | FUT | FUT | FUT | FUT |
glbx_sym | VARCHAR | Symbol | BTCZ2 | BTCZ2 | BTCZ2 | BTCZ2 | |
indicative_opening_px | DECIMAL(22.9) | Indicative Opening Price | 18705 | ||||
transaction_ts | Timestamp | Transaction Time To The Nearest Nanosecond | 2022-09-30 21:37:30.961243 UTC | 2022-09-30 07:13:07.282900 UTC | 2022-09-25 23:04:01.201095 UTC | 2022-09-30 12:25:59.087994 UTC | |
user_defined_ind | VARCHAR | Is Instrument User Defined Spread? | H=CME, U=User Defined | H | H | H | H |
clr_sym | VARCHAR | Asset Code | BTC | BTC | BTC | BTC | |
settle_px_display | VARCHAR | Settlement Price - Formatted | 19470 | ||||
settle_px | DECIMAL(22.9) | Settlement Price - Decimal | 19470 | ||||
volume_qty | DECIMAL(22.9) | Volume Quantity | 5 | ||||
session_high_px | VARCHAR | Session High Price - Formatted | 0 | ||||
session_high_px_display | DECIMAL(22.9) | Session Low Price - Decimal | 0 | ||||
session_low_px | VARCHAR | Session Low Price - Formatted | 19470 | ||||
session_low_px_display | DECIMAL(22.9) | Session Low Price - Decimal | 19470 | ||||
settle_dt | DATE | Settlement Date | 30/09/2022 | ||||
rpt_type | VARCHAR | Archived Market Data Row Type (Used By Client To Filter) | IOP=Indicative Opening Price, MDV=Trade Volume, SETL= Settlements, OPNS=Opening Summary | SETL | MDV | IOP | OPNS |
transaction_ts_hour | INT | The hour of day the message was produced | 21 | 7 | 23 | 12 | |
exchange_mic | VARCHAR | Exchange | XCBT=Chicago Board of Trade XCME=Chicago Mercantile Exchange XNYM=New York Mercantile Exchange XCEC= COMEX (Commodities Exchange Center) NYUM=XNYM-DUMX inter-exchange spread MGCB=XMGE-XCBT inter-exchange spread CBCM=XCME-XCBT inter-exchange spread XFXS=CME FX Link spread GLBX=FX Spot leg | XCME | XCME | XCME | XCME |
underlying_product | VARCHAR | Asset sub class, e.g. Energy, Equitiy, Interest Rates | 2=Commodity/Agriculture 4=Currency 5=Equity 6=Government 10=Mortgage 12=Other 13=Financing 14=Interest Rate 15=FX Cash 16=Energy 17=Metals | Equity | Equity | Equity | Equity |
transaction_ts_display | VARCHAR | String Representation Of Transaction Time To The Nearest Nanosecond | |||||
cycle_date | VARCHAR | Cycle Date, this is populated by the transaction time on the messages yyyy-MM-dd | 30/09/2022 | 30/09/2022 | 25/09/2022 | 30/09/2022 |
Quotes Table (v_quote_request_futuresandoptions)
Quotes Schema
Column Name | Data Type | Description | Values | Example | |
---|---|---|---|---|---|
Possible Values | Quote | ||||
rpt_type | VARCHAR | Archived Market Data Row Type (Used By Client To Filter) | QREQ=Quotes | QREQ | |
transaction_ts | Timestamp | Transaction Time To The Nearest Nanosecond | 2022-09-27 11:55:08.526788 UTC | ||
transaction_ts_nanos | INT | Nanosecond portion of timestamp | 526788031 | ||
glbx_sym | VARCHAR | Symbol | UD:0A: 12 0927869730 | ||
security_type | VARCHAR | Security Type | OPT=Option, FUT=Future, MLEG=Spreads | OPT=Option, FUT=Future, MLEG=Spreads | OPT |
glbx_security_id | VARCHAR | Security ID | 869730 | ||
px_quote_ccy | VARCHAR | Currency Code | 3-Letter ISO Code | 3-Letter ISO Code | USD |
user_defined_ind | VARCHAR | Is Instrument User Defined Spread? | H=CME, U=User Defined | H=CME, U=User Defined | U |
contract_period | VARCHAR | Maturity Month/Year | 202210 | ||
market_segment_id | VARCHAR | Market Segment ID | 88 | ||
quote_req_id | VARCHAR | Quote Request ID | CME00869730288506535 | ||
order_qty | DECIMAL(22.9) | Order Quantity | 0 | ||
side_ind | VARCHAR | Side | Buy, Sell, Cross, N/A | Buy, Sell, Cross, N/A | N/A |
quote_type | VARCHAR | Quote Type | TR=Tradeable | TR=Tradeable | TR |
clr_sym | VARCHAR | Asset Code | ADU | ||
transaction_ts_hour | INT | The hour of day the message was produced | 11 | ||
exchange_mic | VARCHAR | Exchange | XCBT=Chicago Board of Trade XCME=Chicago Mercantile Exchange XNYM=New York Mercantile Exchange XCEC= COMEX (Commodities Exchange Center) NYUM=XNYM-DUMX inter-exchange spread MGCB=XMGE-XCBT inter-exchange spread CBCM=XCME-XCBT inter-exchange spread XFXS=CME FX Link sp | XCBT=Chicago Board of Trade XCME=Chicago Mercantile Exchange XNYM=New York Mercantile Exchange XCEC= COMEX (Commodities Exchange Center) NYUM=XNYM-DUMX inter-exchange spread MGCB=XMGE-XCBT inter-exchange spread CBCM=XCME-XCBT inter-exchange spread XFXS=CME FX Link spread GLBX=FX Spot leg | XCME |
underlying_product | VARCHAR | Asset sub class, e.g. Energy, Equitiy, Interest Rates | 2=Commodity/Agriculture 4=Currency 5=Equity 6=Government 10=Mortgage 12=Other 13=Financing 14=Interest Rate 15=FX Cash 16=Energy 17=Metals | 2=Commodity/Agriculture 4=Currency 5=Equity 6=Government 10=Mortgage 12=Other 13=Financing 14=Interest Rate 15=FX Cash 16=Energy 17=Metals | |
transaction_ts_display | VARCHAR | String Representation Of Transaction Time To The Nearest Nanosecond | |||
cycle_date | VARCHAR | Cycle Date, this is populated by the transaction time on the messages yyyy-MM-dd | 27/09/2022 |
Contact Information
- For Service Procurement Inquiries, please contact CMEDataSales@cmegroup.com
- For Customer Support, please contact GCC@cmegroup.com
How was your Client Systems Wiki Experience? Submit Feedback
Copyright © 2024 CME Group Inc. All rights reserved.