Stock Endpoints
ThetaDataDx provides 14 endpoints for US equity data: listing available symbols and dates, real-time snapshots, historical OHLC/trade/quote data, and point-in-time lookups.
List
Discover what data is available before requesting it.
| Endpoint | Description |
|---|---|
| List Symbols | All available stock ticker symbols |
| List Dates | Available dates for a stock by request type |
Snapshots
Latest market state for one or more symbols in a single call.
| Endpoint | Description |
|---|---|
| Snapshot OHLC | Current-day OHLC bar |
| Snapshot Trade | Most recent trade |
| Snapshot Quote | Current NBBO quote |
| Snapshot Market Value | Latest market value |
TIP
Snapshot endpoints accept multiple symbols in a single call. Batch your requests to reduce round-trips.
History
Historical bars and tick-level data.
| Endpoint | Description |
|---|---|
| History EOD | End-of-day OHLC + closing quote across a date range |
| History OHLC | Intraday OHLC bars (single date or date range) |
| History Trade | All trades for a date |
| History Quote | NBBO quotes at a configurable interval |
| History Trade+Quote | Combined trade and prevailing quote ticks |
At-Time
Point-in-time lookups across a date range.
| Endpoint | Description |
|---|---|
| At-Time Trade | Trade at a specific time of day across dates |
| At-Time Quote | Quote at a specific time of day across dates |
Streaming (Rust)
For endpoints returning millions of rows, the Rust SDK provides _stream variants that process data chunk by chunk without holding everything in memory:
rust
tdx.stock_history_trade_stream("AAPL", "20240315", |chunk| {
println!("Got {} trades in this chunk", chunk.len());
Ok(())
}).await?;
tdx.stock_history_quote_stream("AAPL", "20240315", "0", |chunk| {
println!("Got {} quotes in this chunk", chunk.len());
Ok(())
}).await?;TIP
Use streaming variants when fetching tick-level data for active symbols. A single day of AAPL trades can exceed 100,000 rows.