CME Group APIcmegroup.com ↗
Access CME Group futures quotes, settlements, options chains, FedWatch rate probabilities, and volume/OI data across all asset classes via a single API.
What is the CME Group API?
This API exposes 7 endpoints covering CME Group market data across all major asset classes, from interest rates to metals, energy, and equity indexes. The get_fedwatch endpoint returns FOMC meeting dates with ease/no-change/hike probability breakdowns and historical comparisons at 1-day, 1-week, and 1-month intervals. Other endpoints cover futures quotes, settlement prices, options chains, volume and open interest history, and a full product catalog.
No input parameters required.
curl -X POST 'https://api.parse.bot/scraper/16d53d6b-f0dd-4ddd-b59b-fff50d2f3a5c/get_fedwatch' \
-H 'X-API-Key: $PARSE_API_KEY' \
-H 'Content-Type: application/json' \
-d '{}'Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace cmegroup-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""
CME Group Market Data API - Usage Example
Get your API key from: https://parse.bot/settings
"""
from parse_apis.cme_group_market_data_api import CME, AssetClass, Product
cme = CME()
# Get FedWatch interest rate probabilities
fedwatch = cme.fedwatches.get()
print(fedwatch.data_timestamp, fedwatch.current_probabilities.ease, fedwatch.current_probabilities.no_change)
for prob in fedwatch.target_rate_probabilities:
print(prob.target_rate_bps, prob.is_current, prob.now, prob.one_day)
# Browse the product catalog by asset class
catalog = cme.productcatalogs.list(asset_class=AssetClass.METALS)
for cat in catalog.categories:
print(cat.category)
for p in cat.products:
print(p.code, p.name)
# Get live futures quotes for gold
gold = cme.product(code="gold")
for quote in gold.quotes():
print(quote.code, quote.month, quote.last, quote.change, quote.is_front_month)
# Get settlements
for settlement in gold.settlements():
print(settlement.month, settlement.settle, settlement.estimated_volume)
# Get volume/OI history
for entry in gold.volume(days="10"):
print(entry.date, entry.futures_volume, entry.futures_open_interest)
# Get options chain
for strike in gold.options_quotes():
print(strike.strike_price, strike.call.prior_settle, strike.put.prior_settle)
# Discover option expirations
for opt_type in gold.option_expirations():
print(opt_type.name, opt_type.weekly)
for exp in opt_type.expirations:
print(exp.label, exp.underlying_future, exp.last_trade_date)
Retrieves CME FedWatch Tool data: upcoming FOMC meeting dates, target rate probabilities (Ease/No Change/Hike), and a detailed probability distribution across rate ranges with current, 1-day, 1-week, and 1-month comparisons. Data sourced from 30-Day Federal Funds futures pricing. Returns a single snapshot object.
No input parameters required.
{
"type": "object",
"fields": {
"meeting_dates": "array of strings - upcoming FOMC meeting dates",
"data_timestamp": "string or null - when data was last updated",
"current_meeting_info": "object with meeting_date, contract, expires, mid_price, prior_volume, prior_oi",
"current_probabilities": "object with ease, no_change, hike percentage values",
"target_rate_probabilities": "array of objects with target_rate_bps, is_current, now, 1_day, 1_week, 1_month"
},
"sample": {
"data": {
"meeting_dates": [
"17 Jun26",
"29 Jul26",
"16 Sep26"
],
"data_timestamp": "Data as of 10 Jun 2026 06:13:03 CT",
"current_meeting_info": {
"expires": "30 Jun 2026",
"contract": "ZQM6",
"prior_oi": "248,571",
"mid_price": "96.3800",
"meeting_date": "17 Jun 2026",
"prior_volume": "18,118"
},
"current_probabilities": {
"ease": "1.6 %",
"hike": "0.0 %",
"no_change": "98.4 %"
},
"target_rate_probabilities": [
{
"now": "1.6%",
"1_day": "0.8%",
"1_week": "2.7%",
"1_month": "6.6%",
"is_current": false,
"target_rate_bps": "325-350"
},
{
"now": "98.4%",
"1_day": "99.2%",
"1_week": "97.3%",
"1_month": "93.4%",
"is_current": true,
"target_rate_bps": "350-375"
}
]
},
"status": "success"
}
}About the CME Group API
FedWatch and Interest Rate Probabilities
The get_fedwatch endpoint returns upcoming FOMC meeting dates alongside a current_probabilities object (ease, no_change, hike as percentages) and a target_rate_probabilities array. Each row in that array carries a target_rate_bps value, an is_current flag, and probability readings for now, 1-day ago, 1-week ago, and 1-month ago. This makes it straightforward to track how market expectations for rate moves have shifted over time without any additional calculation.
Futures Quotes and Settlements
get_futures_quotes accepts either a numeric product_id (e.g. '437' for Gold) or a friendly name like gold, crude_oil, or silver. It returns all listed contract months with fields including last, change, percentage_change, prior_settle, open, high, low, volume, and high_limit. Note that quote data is delayed by 10 minutes; the quote_delayed boolean in the response confirms this. get_settlements covers the same product scope but returns official daily settlement prices — settle, estimated_volume, and prior_day_oi — and accepts an optional trade_date in MM/DD/YYYY format to retrieve historical settlement data.
Options and Expirations
get_options_quotes returns a near-the-money options chain with call and put objects at each strike_price, each containing last, change, prior_settle, open, high, low, and volume. An optional expiration_month parameter accepts labels like 'Jun 2026' or an underlying future code like 'GCM6'. The available_expirations field in the response groups expirations by option type (American, weekly Mon–Fri, etc.). For a standalone list of all option types and expiration dates without chain data, use get_option_expirations.
Volume, Open Interest, and Product Catalog
get_volume returns a configurable number of days of futures and options volume/OI split — futures_volume, options_volume, futures_open_interest, and options_open_interest per day. get_product_catalog enumerates all products within a given asset_class (accepted values: metals, energy, agriculture, interest-rates, equity-index, fx), returning product code, name, and url grouped by category.
The CME Group API is a managed, monitored endpoint for cmegroup.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when cmegroup.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official cmegroup.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track FOMC rate-hike probabilities over time using target_rate_bps and 1-week/1-month comparisons from get_fedwatch
- Build a futures dashboard showing live contract-month quotes for gold, crude oil, or any CME product via get_futures_quotes
- Pull historical settlement prices for backtesting by specifying trade_date in get_settlements
- Monitor daily futures and options volume and open interest trends over a rolling window with get_volume
- Display near-the-money options chains with call/put Greeks-ready data from get_options_quotes
- Enumerate all available CME products by asset class using get_product_catalog to build dynamic product selectors
- Identify all weekly and American option expiration dates for a product with get_option_expirations
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does CME Group offer an official developer API?+
Are the futures quotes real-time?+
get_futures_quotes and get_options_quotes endpoints return data delayed by 10 minutes. The quote_delayed boolean in each response will be true to confirm this. Settlement data from get_settlements reflects end-of-day official prices, not intraday ticks.What does get_fedwatch return and how far back do the probability comparisons go?+
target_rate_probabilities array with per-basis-point probabilities at four points in time: now, 1-day prior, 1-week prior, and 1-month prior. It does not return a longer historical time series of probabilities; the comparison window is fixed to those four snapshots.Can I retrieve CME market data for individual traders or block trade reports?+
get_volume, settlement prices via get_settlements, and quote snapshots via get_futures_quotes. It does not expose individual trade records, block trade reports, or participant-level data. You can fork this API on Parse and revise it to add an endpoint targeting those data sources if CME makes them publicly available.Which asset classes are supported by get_product_catalog, and does it cover OTC products?+
asset_class values are metals, energy, agriculture, interest-rates, equity-index, and fx. OTC-cleared products and CME's alternative markets are not included in the catalog endpoint. You can fork this API on Parse and revise it to add coverage for additional asset class identifiers if needed.