Skip to main content
Python function: getOptionsQuotes()
SpecificationValue
Delivery Frequencycontinuous
Data Frequencyreal-time, intraday (1-min), daily
Reporting LagLive snapshots every minute; daily EOD ~14 min before close
Coverage5,000+ U.S. equity options symbols, all strikes and expirations
HistorySince 2007-01-02
AvailabilityFree

Product Overview

Overview

Options Quotes provides comprehensive quote data for U.S. equity options — bid/ask/mid prices, contract metadata, implied volatilities, and full Greeks — at three granularity levels:
  • Live: The latest 1-minute snapshot for any option contract.
  • Intraday historical: 1-minute bars with full Greeks and IV, available from August 2020.
  • Daily historical: End-of-day quotes with additional fields (interest rate, dividend rate, exercise style), available from 2007.
The dataset covers 5,000+ underlying symbols across all U.S. options exchanges. Options are identified by their OPRA symbol (e.g., AAPL260213C00280000).

Data Pipeline

Live and Intraday Quotes

Live and intraday options quotes are sourced from a high-frequency options data pipeline that captures strike-level snapshots every minute during market hours:
  • 1-minute strike snapshots: Every minute, a snapshot is captured for each active strike across all expirations for 5,000+ underlying symbols.
  • Smoothed implied volatility: Raw market quotes are cleaned, normalized, and processed through a Smooth Market Value (SMV) system to produce accurate implied volatilities. The SMV system fits a non-arbitrageable smooth curve through strike implied volatilities (see the Options Greeks & Implied Volatility reference for full methodology).
  • Greeks derivation: Delta, gamma, theta, vega, rho, and phi are computed from the smoothed IV surface using a modified binomial pricing engine that accounts for dividends, interest rates, and early exercise (American-style options).
  • Bid/ask IV: Separate implied volatilities are calculated at the bid and ask prices, in addition to the smoothed mid-IV.

Daily Historical Quotes

Daily end-of-day quotes are sourced from archived Level 1 (L1) data files:
  • Near end-of-day snapshot: Captured approximately 14 minutes before market close to ensure representative end-of-day values.
  • Smoothed Greeks: Same SMV methodology as live/intraday, applied to end-of-day quotes.
  • Additional fields: Daily quotes include the risk-free interest rate, dividend rate, exercise style, and shares per contract.

Call/Put Parity

The system computes a single set of Greeks (delta, gamma, theta, vega, rho, phi) per strike that is consistent across both the call and the put. A residual yield rate is solved via put-call parity to align call and put implied volatilities, accounting for hard-to-borrow stocks and varying dividend assumptions.

Coverage

  • Underlying symbols: 5,000+ U.S. equities and ETFs with listed options.
  • Intraday history: August 2020 to present (1-minute granularity).
  • Daily history: 2007 to present (end-of-day snapshots).
  • Live data: Real-time 1-minute snapshots during market hours.

Supported Modes

ModeTriggerGranularity
LiveOmit start and endLatest 1-minute snapshot
Intraday historicalstart/end as 'YYYY-MM-DDTHH:MM:SS'1-minute bars
Daily historicalstart/end as 'YYYY-MM-DD'End-of-day
Note: Intraday mode supports a maximum of 20 trading days per call. For larger ranges, query in smaller chunks.

Querying the Data

Basic Usage

from scalarlib import getOptionsQuotes

# Live: latest snapshot with full Greeks
quotes = getOptionsQuotes(tickers=['AAPL260213C00280000'])
quote_df = quotes['AAPL260213C00280000']

# Live: call + put on the same strike
quotes = getOptionsQuotes(tickers=[
    'AAPL260213C00280000',
    'AAPL260213P00280000',
])

# Intraday historical: 1-minute bars
quotes = getOptionsQuotes(
    tickers=['AAPL260213C00280000'],
    start='2026-02-06T10:00:00',
    end='2026-02-06T10:30:00'
)

# Daily historical: end-of-day quotes
quotes = getOptionsQuotes(
    tickers=['AAPL260213C00280000'],
    start='2026-02-01',
    end='2026-02-06'
)

Parameters

ParameterTypeRequiredDescription
tickerslist of strYesOption symbols in OPRA format (e.g., ['AAPL260213C00280000']).
startstrNoStart date ('YYYY-MM-DD') or datetime ('YYYY-MM-DDTHH:MM:SS', New York time). Omit with end for live mode.
endstrNoEnd date or datetime. Omit with start for live mode.

Column Definitions

Live & Intraday Columns

ColumnTypeDescription
ts_recvdatetime64[ns]Timestamp in New York time.
tickerstringOption symbol in OPRA format.
Prices
bid_pxfloat64Best bid price.
ask_pxfloat64Best ask price.
mid_pxfloat64Theoretical mid-price (smoothed).
Sizes
bid_szint64Bid size (number of contracts).
ask_szint64Ask size (number of contracts).
Contract Metadata
underlying_tickerstringUnderlying symbol (e.g., AAPL).
contract_typestring'call' or 'put'.
expiry_datestringExpiration date (YYYY-MM-DD).
strike_pricefloat64Strike price.
days_to_expiryint64Calendar days until expiration.
years_to_expiryfloat64Years until expiration (days / 365.25).
Greeks
deltafloat64Rate of change of option price with respect to underlying price.
gammafloat64Rate of change of delta with respect to underlying price.
thetafloat64Rate of change of option price with respect to time (per day).
vegafloat64Rate of change of option price with respect to volatility.
rhofloat64Rate of change of option price with respect to interest rate.
phifloat64Rate of change of option price with respect to dividend yield.
Implied Volatilities
bid_ivfloat64Implied volatility at the bid price.
mid_ivfloat64Implied volatility at the mid price (smoothed).
ask_ivfloat64Implied volatility at the ask price.
Trading
volumefloat64Daily trading volume.
open_interestfloat64Open interest.

Additional Daily Historical Columns

Daily historical mode returns all columns above (except bid_sz / ask_sz) plus:
ColumnTypeDescription
interest_ratefloat64Risk-free interest rate used in pricing.
dividend_ratefloat64Dividend yield used in pricing.
exercise_stylestring'american' or 'european'.
shares_per_contractint64Shares per contract (typically 100).
mid_valuefloat64Theoretical mid-value.