End-of-day option chains for 5,800+ US stocks, ETFs and indices plus 4,000+ delisted stocks from January 2010, with bid/ask quotes, implied volatility and full Greeks.
| Column | Type | Description |
|---|---|---|
| Trade Date | date | Trading day of the snapshot (yyyy-MM-dd) |
| Strike | float | Strike price |
| Expiry Date | date | Expiration date (yyyy-MM-dd) |
| Call/Put | string | c = call, p = put |
| Last Trade Price | float | Last traded price of the contract |
| Bid Price | float | Bid quote |
| Ask Price | float | Ask quote |
| Bid Implied Volatility | float | Implied volatility from the bid |
| Ask Implied Volatility | float | Implied volatility from the ask |
| Open Interest | integer | Open contracts |
| Volume | integer | Contracts traded that day |
| Delta | float | Delta |
| Gamma | float | Gamma |
| Vega | float | Vega |
| Theta | float | Theta |
| Rho | float | Rho |
Trade Date,Strike,Expiry Date,Call/Put,Last Trade Price,Bid Price,Ask Price,Bid Implied Volatility,Ask Implied Volatility,Open Interest,Volume,Delta,Gamma,Vega,Theta,Rho 2023-07-03,50,2023-07-07,c,142.29,142.2,142.35,0,4.8375,0,0,1,0,0,-0.0085,0.0057 2023-07-03,60,2023-07-07,c,131.19,131.1,131.25,0,4.1518,0,0,1,0,0,-0.0102,0.0068
One CSV per underlying ticker, with calls and puts ordered by expiry and strike. History is delivered as quarterly zip archives, e.g. all 2020-Q1 data in one archive.
The end-of-day snapshot is taken 30 seconds before the close, so that large closing rebalancing orders don't distort the prices. Data is sourced directly from exchanges and is tested and validated with each daily update. Implied volatility is given separately for the bid and the ask.
@misc{frd_us_options_eod,
title = {US Options — End of Day},
author = {FirstRate Data},
year = {2026},
url = {https://firstratedata.com/ai/datasets/us-options-eod}
}