> ## Documentation Index
> Fetch the complete documentation index at: https://scalarfield.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Options Quotes

> Live, intraday (1-minute), and daily historical options quotes with bid/ask/mid prices, contract metadata, and full Greeks. Covers 5,000+ US equity options symbols with intraday history back to August 2020.

<Info>**Python function:** `getOptionsQuotes()`</Info>

| Specification      | Value                                                           |
| ------------------ | --------------------------------------------------------------- |
| Delivery Frequency | continuous                                                      |
| Data Frequency     | real-time, intraday (1-min), daily                              |
| Reporting Lag      | Live snapshots every minute; daily EOD \~14 min before close    |
| Coverage           | 5,000+ U.S. equity options symbols, all strikes and expirations |
| History            | Since 2007-01-02                                                |
| Availability       | Free                                                            |

# 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

| Mode                | Trigger                                  | Granularity              |
| ------------------- | ---------------------------------------- | ------------------------ |
| Live                | Omit `start` and `end`                   | Latest 1-minute snapshot |
| Intraday historical | `start`/`end` as `'YYYY-MM-DDTHH:MM:SS'` | 1-minute bars            |
| Daily historical    | `start`/`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

```python theme={null}
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

| Parameter | Type        | Required | Description                                                                                                      |
| --------- | ----------- | -------- | ---------------------------------------------------------------------------------------------------------------- |
| `tickers` | list of str | Yes      | Option symbols in OPRA format (e.g., `['AAPL260213C00280000']`).                                                 |
| `start`   | str         | No       | Start date (`'YYYY-MM-DD'`) or datetime (`'YYYY-MM-DDTHH:MM:SS'`, New York time). Omit with `end` for live mode. |
| `end`     | str         | No       | End date or datetime. Omit with `start` for live mode.                                                           |

# Column Definitions

## Live & Intraday Columns

| Column                   | Type            | Description                                                      |
| ------------------------ | --------------- | ---------------------------------------------------------------- |
| `ts_recv`                | datetime64\[ns] | Timestamp in New York time.                                      |
| `ticker`                 | string          | Option symbol in OPRA format.                                    |
| **Prices**               |                 |                                                                  |
| `bid_px`                 | float64         | Best bid price.                                                  |
| `ask_px`                 | float64         | Best ask price.                                                  |
| `mid_px`                 | float64         | Theoretical mid-price (smoothed).                                |
| **Sizes**                |                 |                                                                  |
| `bid_sz`                 | int64           | Bid size (number of contracts).                                  |
| `ask_sz`                 | int64           | Ask size (number of contracts).                                  |
| **Contract Metadata**    |                 |                                                                  |
| `underlying_ticker`      | string          | Underlying symbol (e.g., `AAPL`).                                |
| `contract_type`          | string          | `'call'` or `'put'`.                                             |
| `expiry_date`            | string          | Expiration date (`YYYY-MM-DD`).                                  |
| `strike_price`           | float64         | Strike price.                                                    |
| `days_to_expiry`         | int64           | Calendar days until expiration.                                  |
| `years_to_expiry`        | float64         | Years until expiration (days / 365.25).                          |
| **Greeks**               |                 |                                                                  |
| `delta`                  | float64         | Rate of change of option price with respect to underlying price. |
| `gamma`                  | float64         | Rate of change of delta with respect to underlying price.        |
| `theta`                  | float64         | Rate of change of option price with respect to time (per day).   |
| `vega`                   | float64         | Rate of change of option price with respect to volatility.       |
| `rho`                    | float64         | Rate of change of option price with respect to interest rate.    |
| `phi`                    | float64         | Rate of change of option price with respect to dividend yield.   |
| **Implied Volatilities** |                 |                                                                  |
| `bid_iv`                 | float64         | Implied volatility at the bid price.                             |
| `mid_iv`                 | float64         | Implied volatility at the mid price (smoothed).                  |
| `ask_iv`                 | float64         | Implied volatility at the ask price.                             |
| **Trading**              |                 |                                                                  |
| `volume`                 | float64         | Daily trading volume.                                            |
| `open_interest`          | float64         | Open interest.                                                   |

## Additional Daily Historical Columns

Daily historical mode returns all columns above (except `bid_sz` / `ask_sz`) plus:

| Column                | Type    | Description                              |
| --------------------- | ------- | ---------------------------------------- |
| `interest_rate`       | float64 | Risk-free interest rate used in pricing. |
| `dividend_rate`       | float64 | Dividend yield used in pricing.          |
| `exercise_style`      | string  | `'american'` or `'european'`.            |
| `shares_per_contract` | int64   | Shares per contract (typically 100).     |
| `mid_value`           | float64 | Theoretical mid-value.                   |
