10 min technical guide

Options Aggregates API Guide

A detailed guide to using options aggregates for historical OHLC bars, intraday research, event studies, backtests, dashboards, and daily reporting. The core idea is simple: use trade-derived bars when the question is price path and activity, and use quotes when the question is executable spread and fill realism.

Custom range bars

OHLCV, VWAP, and trade count over minute, hour, day, week, month, quarter, or year windows.

Daily open and close

One session summary for a contract, including regular-session OHLC and extended-hours context when available.

Previous day bar

Fast prior-session baseline for reports, dashboards, and live versus last-close comparisons.

Missing intervals

No bar usually means no qualifying trade in that interval, not a broken response.

Data model

What an options aggregate actually measures

An options aggregate is a compressed view of qualifying trades in a fixed time interval. For each interval, the response gives the open, high, low, close, volume, VWAP, timestamp, and trade count. This makes aggregates the natural input for charts, historical price paths, volume studies, and many first-pass backtests. They answer: what prices actually printed, how much volume traded, and how the contract moved over the selected bar width.

Aggregates are not the same as quotes. A bar can show where trades occurred without proving that a strategy could have bought at the low, sold at the high, or crossed the midpoint. For execution-sensitive research, use aggregate bars to define the path and quotes to validate fill assumptions. This separation keeps the research design honest: one dataset describes prints, the other describes available markets.

Endpoint shape

The three aggregate workflows

01

Custom range bars for research windows

Use the range endpoint when you need many bars across a contract life: minute bars around an event, daily bars across a holding period, or hourly bars for a dashboard.

02

Daily open and close for one session

Use the open-close endpoint when the question is one date: what did this contract open at, close at, and trade through during the regular session.

03

Previous day bar for baselines

Use the previous-day endpoint when a live screen only needs the last completed session as a reference point.

# Custom range bars
curl "https://api.cutemarkets.com/v1/options/aggs/O:SPY260515C00500000/5/minute/2026-05-01/2026-05-15/?limit=10000" \
  -H "Authorization: Bearer YOUR_API_KEY"

# One daily open-close snapshot
curl "https://api.cutemarkets.com/v1/options/open-close/O:SPY260515C00500000/2026-05-12/" \
  -H "Authorization: Bearer YOUR_API_KEY"

# Previous completed session
curl "https://api.cutemarkets.com/v1/options/aggs/O:SPY260515C00500000/prev/" \
  -H "Authorization: Bearer YOUR_API_KEY"

Use case 1

Backtesting option entries and exits without pretending every print was tradable

Aggregates are useful for defining candidate entry and exit times. For example, a 5-minute opening-range strategy can read 5-minute bars, identify the first range after the market opens, and measure whether the option contract later traded through a trigger level. This is the right first layer because it works on observed trade prices and can be computed efficiently across many contracts.

The second layer should be quote validation. If a backtest enters at a printed close without checking the bid-ask spread, it can overstate performance in thin contracts. A more defensible design uses aggregate bars to discover candidate moments, then queries quotes around those timestamps to estimate realistic fills, reject wide-spread contracts, and measure slippage sensitivity.

Use case 2

Intraday dashboards for contract movement and activity

A dashboard does not always need every trade tick. Aggregates can show the shape of the contract: where it opened, where it traded, whether volume is arriving, and whether the current bar is unusual compared with recent bars. This is especially useful for watchlists where dozens of contracts need a compact, comparable representation.

For dashboard stability, keep the bar width aligned with the user decision. One-minute bars are useful for active monitoring but noisy for slower research. Five-minute or fifteen-minute bars often give a cleaner view of option movement while still responding quickly enough for scanners and alert systems.

Use case 3

Event studies around earnings, CPI, Fed days, and OpEx

Event studies need consistent windows. Aggregates make it straightforward to pull bars before and after an event, compute return paths, compare volume profiles, and normalize the result across contracts. A clean study might compare the same moneyness bucket across several expirations, then measure how the bar path changes before and after the event timestamp.

The key is to avoid survivorship by starting from historical contract discovery. Find the contracts that were listed as of the event date, choose expirations and strikes by a pre-declared rule, then pull aggregate bars only for those contracts. That keeps the study from accidentally selecting contracts that look liquid only after the event is already known.

Use case 4

VWAP and volume features for scanners

Option VWAP is a compact activity feature. It can help distinguish a contract that prints once at an odd price from one that trades repeatedly near a stable level. When paired with trade count and volume, VWAP can become a quality filter before a scanner spends quota on deeper quote or snapshot checks.

A practical scanner can rank contracts by fresh volume, compare the latest close to intraday VWAP, then require a minimum trade count. This does not prove the signal is profitable, but it improves the measurement surface by excluding contracts where a single stale or isolated print dominates the bar.

Use case 5

Daily P&L attribution and report baselines

Daily bars are useful for explaining what happened, even when the actual execution logic runs on quotes or trades. A daily report can show the previous close, current open, high, low, close, volume, and VWAP for each monitored contract. This gives product users a compact audit trail for why a position or watchlist item changed.

The previous-day endpoint is the fastest path when the dashboard only needs a baseline. It avoids scanning a date range and returns the last completed daily bar directly. For larger historical reports, the range endpoint remains the better choice because it gives consistent pagination and explicit date windows.

Quality controls

Rules that keep aggregate-based research defensible

01

Treat missing bars as information

A missing interval usually means no qualifying trade occurred. Do not forward-fill option bars unless the research design explicitly models stale prices.

02

Separate discovery from measurement

Discover historical contracts with as-of rules before pulling bars, so the test does not select contracts using future knowledge.

03

Validate fills with quotes

Use aggregates for price path and activity, then use NBBO quote history to test whether the assumed entry and exit were plausible.

04

Log contract identity

Store the full OCC ticker, expiration, strike, and contract type with every bar-derived feature so results can be reproduced.

05

Measure sensitivity

Recompute the same idea on 1-minute, 5-minute, and 15-minute bars. If the result only works at one arbitrary bar width, treat it cautiously.

Implementation pattern

From expiration to contract to aggregate bars

The clean sequence is expiration discovery, contract selection, aggregate retrieval, and optional quote validation. Each stage narrows the question. The expiration endpoint prevents invalid dates, the contracts endpoint gives concrete OCC symbols, aggregate bars describe the trade path, and quotes validate execution assumptions around the timestamps that matter.

# 1. Find listed expirations
curl "https://api.cutemarkets.com/v1/tickers/expirations/SPY/" \
  -H "Authorization: Bearer YOUR_API_KEY"

# 2. Select contracts for one expiration
curl "https://api.cutemarkets.com/v1/options/contracts/?underlying_ticker=SPY&expiration_date=2026-05-15&limit=100" \
  -H "Authorization: Bearer YOUR_API_KEY"

# 3. Pull bars for the selected OCC ticker
curl "https://api.cutemarkets.com/v1/options/aggs/O:SPY260515C00500000/5/minute/2026-05-01/2026-05-15/?limit=10000" \
  -H "Authorization: Bearer YOUR_API_KEY"

# 4. Validate candidate fills with quote history
curl "https://api.cutemarkets.com/v1/options/quotes/O:SPY260515C00500000/?timestamp.gte=2026-05-15T13:30:00Z&limit=100" \
  -H "Authorization: Bearer YOUR_API_KEY"

Use aggregates when the question is path

Charts, VWAP, volume, trade count, daily reports, event windows, and initial strategy screens are natural aggregate use cases.

Use quotes when the question is execution

Bid, ask, midpoint, spread, quote age, and fill realism require quote history. Aggregates alone cannot prove tradability.

Use trades when the bar needs explanation

If a bar looks strange, inspect raw trades to see whether one print, a condition code, or a cluster of small trades created the value.

Use snapshots when the question is state

Greeks, IV, open interest, underlying price, and latest quote or trade belong in chain and contract snapshot workflows.

Last verified

Date-sensitive calendar references on this page were checked on April 27, 2026. Calendar math is useful for planning, but listed contracts and exchange calendars should still be verified before production workflows run.

Options aggregates FAQ

What are options aggregates?

Options aggregates are OHLC bars built from qualifying option trades. CuteMarkets returns open, high, low, close, volume, VWAP, timestamp, and trade count for each bar.

Why are some option aggregate intervals missing?

If an option contract has no qualifying trades in an interval, the interval is omitted. That gap usually means no trade occurred in that window, not that the API failed.

Should I use options aggregates or quotes for backtesting?

Use aggregates for trade-derived price paths, volume, VWAP, and charting. Use quotes when fill realism, bid-ask spread, NBBO, and execution quality are the main research questions.

Related pages