Skip to content

ThetaDataDxEvery ThetaData endpoint, however you work.

Historical, streaming, and bulk market data through whatever fits how you build: a REST API, four native SDKs, or an MCP server for your AI.

A quote in seconds

The latest NBBO quote for AAPL, four ways. Pick the one that fits your stack. Same data, same fields, from a free or paid subscription.

bash
# Start the server once: thetadatadx-server --api-key "$THETADATA_API_KEY" &
curl 'http://127.0.0.1:25503/v3/stock/snapshot/quote?symbol=AAPL'
python
from thetadatadx import Client

client = Client(api_key="your_api_key")
[q] = client.market_data.stock_snapshot_quote(["AAPL"])
print(q.bid, q.ask)
typescript
import { Client } from 'thetadatadx-ts';

const client = await Client.connectWith({ apiKey: 'your_api_key' });
const [q] = await client.marketData.stockSnapshotQuote(['AAPL']);
console.log(q.bid, q.ask);
rust
let client = thetadatadx::Client::builder().api_key("your_api_key").connect().await?;
let rows = client.market_data().stock_snapshot_quote(&["AAPL"]).await?;
println!("{} {}", rows[0].bid, rows[0].ask);

What are you building?

GoalStart here
A research notebookPython SDK: install, authenticate, pull history into pandas or polars.
A live signal or dashboardStreaming: typed quote, trade, and open-interest events over WebSocket.
An AI assistant or agentMCP for AI: give any LLM client a tool per endpoint, no code.
A backend or existing toolREST API or the self-host server: plain HTTP on the v3 routes.

Install

Install

The SDK ships as per-language packages at 0.1.0: thetadatadx-rs (crates.io), thetadatadx-py (PyPI), and thetadatadx-ts (npm). Install directly below.

bash
pip install thetadatadx-py            # Python 3.12+
npm install thetadatadx-ts            # Node.js 20+
cargo add thetadatadx-rs              # Rust async client

C++ links the same C ABI: build thetadatadx-ffi, then include thetadatadx-cpp/include/thetadatadx.hpp. Full steps in the Quickstart.

Released under the Apache-2.0 License.