From Alpaca — Options Snapshots¶
Looking for a second source of option Greeks alongside Alpaca, or an alternative options API with dividend-aware, early-exercise-aware pricing and extended Greeks? Lavender delivers independently computed Greeks through Alpaca's own wire format — no code changes required.
Already fetching option snapshots from Alpaca? Swap the host — everything else stays the same.
Differences from Alpaca¶
Lavender matches Alpaca's wire format with two specific differences worth knowing when migrating:
latestTradeandlatestQuotearenull. Lavender computes Greeks; it does not redistribute OPRA quotes.- Auth headers accepted-but-ignored.
APCA-API-KEY-IDandAPCA-API-SECRET-KEYare accepted by the listener and discarded. Leave them or remove them.
For the modeling differences (American exercise, discrete dividends, calibrated borrow), see How Lavender's Greeks Differ below.
What Changes¶
Swap the host. Your Alpaca auth headers are accepted and ignored — leave them or remove them. Same path, same response shape.
Try it in your browser¶
Paste this into any browser to see Alpaca-format Greeks rendered as an HTML table. No code needed.
Same Response Format¶
The JSON you get back has the same structure — a snapshots dictionary keyed by OCC symbol:
{
"snapshots": {
"AAPL20261218C00230000": {
"greeks": {
"delta": 0.583,
"gamma": 0.0198,
"theta": -0.1425,
"vega": 0.312,
"rho": 0.301
},
"impliedVolatility": 0.245,
"latestTrade": null,
"latestQuote": null
},
"AAPL20261218P00230000": {
"greeks": {
"delta": -0.417,
"gamma": 0.0198,
"theta": -0.0983,
"vega": 0.312,
"rho": -0.269
},
"impliedVolatility": 0.248,
"latestTrade": null,
"latestQuote": null
}
},
"next_page_token": null
}
No market data
latestTrade and latestQuote are null. The greeks and impliedVolatility fields contain Lavender's computed values.
Endpoint¶
The underlying symbol is part of the URL path (e.g., /v1beta1/options/snapshots/SPY). Case-insensitive.
Query Parameters¶
All parameters are optional:
| Parameter | Type | Description |
|---|---|---|
type |
string | call or put |
limit |
integer | Max results (default 100, max 1000) |
page_token |
string | Pagination cursor (OCC symbol from next_page_token) |
expiration_date |
string | Exact expiration (YYYY-MM-DD) |
expiration_date_gte |
string | Expiration >= date |
expiration_date_lte |
string | Expiration <= date |
strike_price_gte |
number | Strike >= value |
strike_price_lte |
number | Strike <= value |
root_symbol |
string | Filter by root symbol |
Alpaca's feed and updated_since parameters are accepted but not applied. If your workflow depends on either, contact info@lavender-ts.com.
Response Fields¶
Top Level¶
| Field | Type | Description |
|---|---|---|
snapshots |
object | Dictionary of option contracts, keyed by OCC symbol (spaces removed) |
next_page_token |
string/null | Pagination cursor for next page, or null if no more results |
Per-Contract Snapshot¶
Each key in snapshots is an OCC symbol without spaces (e.g., AAPL20261218C00230000).
Greeks¶
| Field | Type | Description |
|---|---|---|
delta |
number | \(\partial V / \partial S\) |
gamma |
number | \(\partial^2 V / \partial S^2\) |
theta |
number | \(\partial V / \partial t\) — per calendar day |
vega |
number | \(\partial V / \partial \sigma\) |
rho |
number | \(\partial V / \partial r\) |
Volatility¶
| Field | Type | Description |
|---|---|---|
impliedVolatility |
number | Annualized implied volatility (decimal, e.g., 0.245 = 24.5%) |
Market Data¶
latestTrade and latestQuote are null — Lavender computes Greeks; it does not redistribute OPRA quotes.
Greek Scaling¶
Theta is returned per calendar day. All other Greeks pass through without rescaling. All output values are rounded to up to 4 decimal places.
How Lavender's Greeks Differ¶
Alpaca computes Greeks using Black-Scholes with European-style assumptions. While Alpaca supports American options for trading, its Greeks don't account for early exercise value. Running Lavender alongside Alpaca gives you:
- Early exercise — Lavender prices American options, capturing the early exercise premium that Black-Scholes misses — especially relevant for deep ITM options near ex-dividend dates
- Discrete dividends — Lavender uses the actual dividend schedule rather than a continuous yield approximation
- Implied borrow rates — Lavender solves for the borrow rate per expiry to enforce put-call parity, producing consistent call/put Greeks even in hard-to-borrow names
- Two views of time decay — conventional theta (\(\partial V / \partial t\)) on this endpoint, plus a separate decay metric (expected change to next trading day, accounting for weekends and holidays) on the Lavender API
- Extended Greeks — access vanna, charm, volga, speed, and more via the Lavender API
Migrating to the Lavender Native API¶
| Alpaca | Lavender API |
|---|---|
| OCC key in snapshots dict | osym (always included) |
greeks.delta |
delta (flat) |
impliedVolatility |
vol |
/{underlying} in path |
underlying= query param |
Error Responses¶
| Status | Condition |
|---|---|
200 |
Success |
400 |
Missing underlying symbol in path |
502 |
Upstream data unavailable |
Error response body¶
Errors return a JSON envelope:
See also¶
- Field Reference — every L1 field with units, source, and example values
- Greek Conventions — sign conventions, units, and the full extended Greeks catalog
- Verify the Greeks — derive each Greek from first principles and check against the API