Skip to main content

No-JVM ThetaData Terminal — native Rust SDK for direct market data access (Python bindings)

Project description

thetadatadx (Python)

Python SDK for ThetaData market data, powered by the thetadatadx Rust crate via PyO3.

This is NOT a Python reimplementation. Every call goes through compiled Rust - gRPC communication, protobuf parsing, zstd decompression, FIT tick decoding, and TCP streaming all happen at native speed. Python is just the interface.

Installation

pip install thetadatadx

# With pandas DataFrame support
pip install thetadatadx[pandas]

# With polars DataFrame support
pip install thetadatadx[polars]

# Both
pip install thetadatadx[all]

Or build from source (requires Rust toolchain):

pip install maturin
maturin develop --release

Quick Start

from thetadatadx import Credentials, Config, ThetaDataDx

# Authenticate and connect
creds = Credentials.from_file("creds.txt")
# Or inline: creds = Credentials("user@example.com", "your-password")
tdx = ThetaDataDx(creds, Config.production())

# Fetch end-of-day data
eod = tdx.stock_history_eod("AAPL", "20240101", "20240301")
for tick in eod:
    print(f"{tick['date']}: O={tick['open']:.2f} H={tick['high']:.2f} "
          f"L={tick['low']:.2f} C={tick['close']:.2f} V={tick['volume']}")

# Intraday 1-minute OHLC bars (shorthand or milliseconds)
bars = tdx.stock_history_ohlc("AAPL", "20240315", "1m")
print(f"{len(bars)} bars")

# Option chain
exps = tdx.option_list_expirations("SPY")
strikes = tdx.option_list_strikes("SPY", exps[0])

Greeks Calculator

Full Black-Scholes calculator with 22 Greeks, running in Rust:

from thetadatadx import all_greeks, implied_volatility

# All Greeks at once
g = all_greeks(
    spot=450.0, strike=455.0, rate=0.05, div_yield=0.015,
    tte=30/365, option_price=8.50, is_call=True
)
print(f"IV={g['iv']:.4f} Delta={g['delta']:.4f} Gamma={g['gamma']:.6f}")

# Just IV
iv, err = implied_volatility(450.0, 455.0, 0.05, 0.015, 30/365, 8.50, True)

API

Credentials

  • Credentials(email, password) - direct construction
  • Credentials.from_file(path) - load from creds.txt

Config

  • Config.production() - ThetaData NJ production servers
  • Config.dev() - Dev FPSS servers (port 20200, infinite historical replay)
  • Config.stage() / StageConfig() / Config::stage() - Stage FPSS servers (port 20100, testing, unstable)

ThetaDataDx(creds, config)

All 61 endpoints are available. Methods return lists of dicts.

Stock Methods (14)

Method Description
stock_list_symbols() All stock symbols
stock_list_dates(request_type, symbol) Available dates by request type
stock_snapshot_ohlc(symbols) Latest OHLC snapshot
stock_snapshot_trade(symbols) Latest trade snapshot
stock_snapshot_quote(symbols) Latest NBBO quote snapshot
stock_snapshot_market_value(symbols) Latest market value snapshot
stock_history_eod(symbol, start, end) End-of-day data
stock_history_ohlc(symbol, date, interval) Intraday OHLC bars. interval accepts ms ("60000") or shorthand ("1m").
stock_history_ohlc_range(symbol, start, end, interval) OHLC bars across date range. interval accepts ms or shorthand.
stock_history_trade(symbol, date) All trades for a date
stock_history_quote(symbol, date, interval) NBBO quotes. interval accepts ms or shorthand.
stock_history_trade_quote(symbol, date) Combined trade+quote ticks
stock_at_time_trade(symbol, start, end, time) Trade at specific time across dates
stock_at_time_quote(symbol, start, end, time) Quote at specific time across dates

Option Methods (34)

Method Description
option_list_symbols() Option underlying symbols
option_list_dates(request_type, symbol, exp, strike, right) Available dates for a contract
option_list_expirations(symbol) Expiration dates
option_list_strikes(symbol, exp) Strike prices
option_list_contracts(request_type, symbol, date) All contracts for a date
option_snapshot_ohlc(symbol, exp, strike, right) Latest OHLC snapshot
option_snapshot_trade(symbol, exp, strike, right) Latest trade snapshot
option_snapshot_quote(symbol, exp, strike, right) Latest quote snapshot
option_snapshot_open_interest(symbol, exp, strike, right) Latest open interest
option_snapshot_market_value(symbol, exp, strike, right) Latest market value
option_snapshot_greeks_implied_volatility(symbol, exp, strike, right) IV snapshot
option_snapshot_greeks_all(symbol, exp, strike, right) All Greeks snapshot
option_snapshot_greeks_first_order(symbol, exp, strike, right) First-order Greeks
option_snapshot_greeks_second_order(symbol, exp, strike, right) Second-order Greeks
option_snapshot_greeks_third_order(symbol, exp, strike, right) Third-order Greeks
option_history_eod(symbol, exp, strike, right, start, end) EOD option data
option_history_ohlc(symbol, exp, strike, right, date, interval) Intraday OHLC bars
option_history_trade(symbol, exp, strike, right, date) All trades
option_history_quote(symbol, exp, strike, right, date, interval) NBBO quotes
option_history_trade_quote(symbol, exp, strike, right, date) Combined trade+quote
option_history_open_interest(symbol, exp, strike, right, date) Open interest history
option_history_greeks_eod(symbol, exp, strike, right, start, end) EOD Greeks
option_history_greeks_all(symbol, exp, strike, right, date, interval) All Greeks history
option_history_trade_greeks_all(symbol, exp, strike, right, date) Greeks on each trade
option_history_greeks_first_order(symbol, exp, strike, right, date, interval) First-order Greeks history
option_history_trade_greeks_first_order(symbol, exp, strike, right, date) First-order on each trade
option_history_greeks_second_order(symbol, exp, strike, right, date, interval) Second-order Greeks history
option_history_trade_greeks_second_order(symbol, exp, strike, right, date) Second-order on each trade
option_history_greeks_third_order(symbol, exp, strike, right, date, interval) Third-order Greeks history
option_history_trade_greeks_third_order(symbol, exp, strike, right, date) Third-order on each trade
option_history_greeks_implied_volatility(symbol, exp, strike, right, date, interval) IV history
option_history_trade_greeks_implied_volatility(symbol, exp, strike, right, date) IV on each trade
option_at_time_trade(symbol, exp, strike, right, start, end, time) Trade at specific time
option_at_time_quote(symbol, exp, strike, right, start, end, time) Quote at specific time

Index Methods (9)

Method Description
index_list_symbols() All index symbols
index_list_dates(symbol) Available dates for an index
index_snapshot_ohlc(symbols) Latest OHLC snapshot
index_snapshot_price(symbols) Latest price snapshot
index_snapshot_market_value(symbols) Latest market value snapshot
index_history_eod(symbol, start, end) End-of-day index data
index_history_ohlc(symbol, start, end, interval) Intraday OHLC bars
index_history_price(symbol, date, interval) Intraday price history
index_at_time_price(symbol, start, end, time) Price at specific time

Calendar Methods (3)

Method Description
calendar_open_today() Is the market open today?
calendar_on_date(date) Calendar info for a date
calendar_year(year) Calendar for an entire year

Rate Methods (1)

Method Description
interest_rate_history_eod(symbol, start, end) Interest rate EOD history

Streaming (via ThetaDataDx)

Real-time streaming is accessed through the same ThetaDataDx instance.

Per-contract subscriptions (stocks)

Method Description
subscribe_quotes(symbol) Subscribe to quote data for a stock
subscribe_trades(symbol) Subscribe to trade data for a stock
subscribe_open_interest(symbol) Subscribe to open interest data for a stock
unsubscribe_quotes(symbol) Unsubscribe from quote data for a stock
unsubscribe_trades(symbol) Unsubscribe from trade data for a stock
unsubscribe_open_interest(symbol) Unsubscribe from open interest data for a stock

Per-contract subscriptions (options)

Method Description
subscribe_option_quotes(symbol, exp_date, is_call, strike) Subscribe to option quote data
subscribe_option_trades(symbol, exp_date, is_call, strike) Subscribe to option trade data
subscribe_option_open_interest(symbol, exp_date, is_call, strike) Subscribe to option OI data
unsubscribe_option_quotes(symbol, exp_date, is_call, strike) Unsubscribe from option quotes
unsubscribe_option_trades(symbol, exp_date, is_call, strike) Unsubscribe from option trades

Full-type subscriptions

Method Description
subscribe_full_trades(sec_type) Subscribe to ALL trades for a security type ("STOCK", "OPTION", "INDEX")
subscribe_full_open_interest(sec_type) Subscribe to ALL OI for a security type
unsubscribe_full_trades(sec_type) Unsubscribe from ALL trades for a security type
unsubscribe_full_open_interest(sec_type) Unsubscribe from ALL OI for a security type

Full trade stream behavior: When subscribed via subscribe_full_trades("OPTION"), the ThetaData FPSS server sends a bundle for every trade across ALL option contracts:

  1. Pre-trade NBBO quote
  2. OHLC bar for the traded contract
  3. The trade itself
  4. Two post-trade NBBO quotes

Events arrive as a mix of quote, trade, and ohlcvc kinds. Use contract_id to identify which contract each event belongs to, and filter on kind to select the data types you care about:

tdx.start_streaming()
tdx.subscribe_full_trades("OPTION")

# Build a contract ID -> symbol map as assignments arrive
contracts = {}

while True:
    event = tdx.next_event(timeout_ms=100)
    if event is None:
        continue

    # Track contract assignments
    if event["kind"] == "contract_assigned":
        contracts[event["id"]] = event["detail"]
        continue

    contract = contracts.get(event.get("contract_id"), "unknown")

    # Filter by type - you choose what you want
    if event["kind"] == "trade":
        print(f"[{contract}] TRADE {event['price']:.2f} x {event['size']}")
    elif event["kind"] == "quote":
        print(f"[{contract}] QUOTE bid={event['bid']:.2f} ask={event['ask']:.2f}")
    # Skip ohlcvc if you don't need bars

tdx.stop_streaming()

You can also subscribe to per-contract streams if you only need specific symbols rather than the full firehose.

State & lifecycle

Method Description
contract_map() Get dict mapping contract IDs to string descriptions
contract_lookup(id) Look up a single contract by ID (returns str or None)
active_subscriptions() Get list of active subscriptions (list of dicts with "kind" and "contract")
next_event(timeout_ms=5000) Poll for the next event (returns dict or None on timeout)
shutdown() Graceful shutdown

to_dataframe(data)

Convert a list of tick dicts to a pandas DataFrame. Requires pip install thetadatadx[pandas].

_df method variants

All 61 ThetaDataDx data methods have _df variants that return DataFrames directly: stock_history_eod_df(), stock_history_ohlc_df(), option_list_expirations_df(), index_history_eod_df(), etc.

all_greeks(spot, strike, rate, div_yield, tte, price, is_call)

Returns dict with 22 Greeks: delta, gamma, theta, vega, rho, iv, vanna, charm, vomma, veta, speed, zomma, color, ultima, d1, d2, dual_delta, dual_gamma, epsilon, lambda.

implied_volatility(spot, strike, rate, div_yield, tte, price, is_call)

Returns (iv, error) tuple.

Architecture

graph TD
    A["Python code"] - "PyO3 FFI" --> B["thetadatadx Rust crate"]
    B - "tonic gRPC / TLS TCP" --> C["ThetaData servers"]

No HTTP middleware, no Java terminal, no subprocess. Direct wire protocol access at Rust speed.

FPSS Streaming

Real-time market data via ThetaData's FPSS servers:

from thetadatadx import Credentials, Config, ThetaDataDx

creds = Credentials.from_file("creds.txt")
# Or inline: creds = Credentials("user@example.com", "your-password")
tdx = ThetaDataDx(creds, Config.production())

# Start streaming and subscribe to real-time data
tdx.start_streaming()
tdx.subscribe_quotes("AAPL")
tdx.subscribe_trades("SPY")

# Poll for events
while True:
    event = tdx.next_event(timeout_ms=5000)
    if event is None:
        break  # timeout, no event received
    if event["kind"] == "quote":
        print(f"Quote: {event['contract']} bid={event['bid']} ask={event['ask']}")
    elif event["kind"] == "trade":
        print(f"Trade: {event['contract']} price={event['price']} size={event['size']}")

tdx.stop_streaming()

pandas DataFrame Conversion

Convert any result to a pandas DataFrame:

from thetadatadx import Credentials, Config, ThetaDataDx, to_dataframe

creds = Credentials.from_file("creds.txt")
# Or inline: creds = Credentials("user@example.com", "your-password")
tdx = ThetaDataDx(creds, Config.production())

# Option 1: convert an existing result
eod = tdx.stock_history_eod("AAPL", "20240101", "20240301")
df = to_dataframe(eod)
print(df.head())

# Option 2: use _df convenience methods
df = tdx.stock_history_eod_df("AAPL", "20240101", "20240301")
df = tdx.stock_history_ohlc_df("AAPL", "20240315", "1m")
df = tdx.option_list_expirations_df("SPY")

Install with: pip install thetadatadx[pandas]

Project details


Release history Release notifications | RSS feed

This version

5.0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

thetadatadx-5.0.1.tar.gz (154.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

thetadatadx-5.0.1-cp314-cp314-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.14Windows x86-64

thetadatadx-5.0.1-cp314-cp314-manylinux_2_38_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.38+ x86-64

thetadatadx-5.0.1-cp314-cp314-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

thetadatadx-5.0.1-cp313-cp313-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.13Windows x86-64

thetadatadx-5.0.1-cp313-cp313-manylinux_2_38_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.38+ x86-64

thetadatadx-5.0.1-cp313-cp313-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

thetadatadx-5.0.1-cp312-cp312-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.12Windows x86-64

thetadatadx-5.0.1-cp312-cp312-manylinux_2_38_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.38+ x86-64

thetadatadx-5.0.1-cp312-cp312-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

thetadatadx-5.0.1-cp311-cp311-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.11Windows x86-64

thetadatadx-5.0.1-cp311-cp311-manylinux_2_38_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.38+ x86-64

thetadatadx-5.0.1-cp311-cp311-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

thetadatadx-5.0.1-cp310-cp310-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.10Windows x86-64

thetadatadx-5.0.1-cp310-cp310-manylinux_2_38_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.38+ x86-64

thetadatadx-5.0.1-cp310-cp310-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

thetadatadx-5.0.1-cp39-cp39-win_amd64.whl (4.3 MB view details)

Uploaded CPython 3.9Windows x86-64

thetadatadx-5.0.1-cp39-cp39-manylinux_2_38_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.38+ x86-64

thetadatadx-5.0.1-cp39-cp39-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file thetadatadx-5.0.1.tar.gz.

File metadata

  • Download URL: thetadatadx-5.0.1.tar.gz
  • Upload date:
  • Size: 154.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for thetadatadx-5.0.1.tar.gz
Algorithm Hash digest
SHA256 f2158ccc2a97760e7834c7b6ded0cf90aed2434ab118b4581f497c0ef4c72791
MD5 c27bced1d8185001a1795ebde11ed5ea
BLAKE2b-256 2a0ca0380c442a22d157678fc2d482a87faf3ab51a5e82e0b2ea4f27c3fc83b8

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 3d8c8de44aeaff1f2f57ff415a9b0aaa70beb2d04e573455543152dcef0a258c
MD5 d73eced1d0dd265022e6c69d9a2759d7
BLAKE2b-256 62e4ea2f68c49858a1eae063aef99907aea36f8cf2daf4da2f4da1e819bdfeff

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp314-cp314-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp314-cp314-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 94d176fd279ff3eda500b54d0581cc75ca5036690d5b88ccf482660d71a5137e
MD5 f5615a10f9f448f9bd7c555d0cd9c8e2
BLAKE2b-256 0a180efd367ae7fadba38b446a19f391d22323b1b0ee59e6d3d80553dfc5a9c4

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4f02016e172024e84d813183afdeba9fe0d1916bd5d568db2a17362364c4f55a
MD5 88730ff73f52227033d04c5e6308da1a
BLAKE2b-256 784778b872a57af6811af0e0ed4daf71d200271c4868786e84a1490ac4e7bf40

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 9b9a3213ab3cab80e009be35889378dc9c7848e2a0c80847d7359b54ba956ea5
MD5 399513a9b77f19dedd9a6705b1d801d8
BLAKE2b-256 994e26e3eac550a20832d109100eec17a56a1687cebcae03a364ffebeda83b03

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp313-cp313-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp313-cp313-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 62437ab20fb17aabb1fdb8c6c9fedad553b3b2cc7da25c16bf8da9126a07ba2c
MD5 5ecddf87d8fed96c17bd137807591326
BLAKE2b-256 6b14726587df913c4587652d0c6c8b52c2e98e894a51300caca639ed27589a74

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 842a5846adee6bc605ffc7ae59797d14d9a6c24466c4103644094f5d44047764
MD5 b6c8e795bdf41cfce41c26cad5bc6b4d
BLAKE2b-256 5bb594610db7b1525f39d6b03676d5f1dc3bf306dead96c2c692eaecfc6f4cab

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a1741a217245d80df7afc22b4223123aad4f305e3634fb1ea60582ee63bbf440
MD5 b8f61373e09b9e1c072cd190836f3562
BLAKE2b-256 f36e8eba47f37dcc8067b1779aed4b4baafa9b42f677a3805ddc8a8dab8782cb

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp312-cp312-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp312-cp312-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 3a74a14210615106aac6c1a4b42db761d7fa4a5f2587a947f2a293d3efc44374
MD5 3d67b85b7d886f5d40c892549ad9cfde
BLAKE2b-256 d2e67fa4f538709eeb1b4c7d3b5ce1ea673304e1efe8a6bbbbb556c759ecb6dd

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8f57de57620bf20abff2b6d637b166d49bb2a91ffa8a855625864387511a4ccf
MD5 c9ebbb4d1f06b7e44bbee670455efc21
BLAKE2b-256 07c8e5fee45411acc0dbda3a1f489530417f2aa32a6d1d93d7bf6007ffa79560

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0815e088278accf526ce56f749bc62bf84cbca584b41427ca3a7d9de69cb3416
MD5 b314b80b6e6ed88ce880ccdafa0f102c
BLAKE2b-256 e84a7a7355558b5915c3012cbf2242c50f4ff6c50256e5ef47b9b80e156441db

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp311-cp311-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp311-cp311-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 f8119787aadbc72a62406751582c6d853dea5ed2246b05ea6df6533c143b10c1
MD5 fd723f7652a12d7c2a356aa7e77f4836
BLAKE2b-256 54c8fa33106d7fa3e024dc1b614f9139aeb627f269e521070142eac986b58e16

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b707ea18914cfbb0b4db10444be42adf8050b81dbd30aadd9988f0dd93852f45
MD5 03688178d62efa26fb5cf5bcd097721a
BLAKE2b-256 c14d19d0cc9d5e29901bb74d2e1400fde7f3741b388d05b8d81df29954fe198b

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 985675ccbb250ccbd7f401e76ebd4e58ed02b5daf6d6c7d069d79f4fa6240be0
MD5 1b8d5a8a88f44146815e6d7d0adf251f
BLAKE2b-256 df903c32b3d3301af18335da0676a2e863506bfd2ceeffb41f6e5c7f16d950d2

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp310-cp310-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp310-cp310-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 cc0cbe2a47b5d8d6a29dd1e9ff488387f39bc0900e6e28423b3be052276dea42
MD5 cc6bba3297ea2c25cbfe62e650edecc9
BLAKE2b-256 4abc78d8c0cd2ffa1063dc8e91e1b360d202c9fbe4d634f56304eedf08a0e2e6

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dee397a72425a068e008954ab1a5d9066c480de3139b8a967a8422d12c77a83c
MD5 a0a24628ae61bf8353e3781381f5449e
BLAKE2b-256 5cb501f9ae65868281e355061104b836e76987aca52d1fa4eb7b95c6d26804b7

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: thetadatadx-5.0.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 4.3 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for thetadatadx-5.0.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 d3d32dbe4d0793e5ab3a162ad02a85d9da6c19c7df7d2ccf62a7574b76610877
MD5 c3b7e513311a589f8bbeb3ce5f525e55
BLAKE2b-256 5e1f110b3922f050c8c43683cc26ae4aa3b65530b310f4d122c0ee2866eacbea

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp39-cp39-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp39-cp39-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 3389b36ed157063caa03d3ad0eaf90d289688b4e4397b7ace8f1e889b3bb238e
MD5 c16215c251adc3d83d735bac934e12ea
BLAKE2b-256 b885198f51f6ae6c91a46b0291bf64d131de0e6727ae7fbb60309404df6bce6c

See more details on using hashes here.

File details

Details for the file thetadatadx-5.0.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for thetadatadx-5.0.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bf63665157eca59b3979e512ab75d5a0f6a135b6c253706d2f6dfccd447a98d1
MD5 c5b9eb5e7278552ec58d94bf962c63f7
BLAKE2b-256 6ac4f3643f104f415fb6f81e42d05aab532306a5104870b28034f37f47911533

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page