Skip to main content

Python client for tardis.dev - historical tick-level cryptocurrency market data replay API.

Project description

tardis-dev

PyPi Python Code style: black


Python tardis-dev package provides convenient access to tick-level historical cryptocurrency market data in exchange-native format. It focuses on two primary workflows: replaying historical market data and downloading historical market data as CSV files. If you need normalized replay or real-time streaming, use the Node.js client or Tardis Machine.

replay() accepts ISO date strings or Python datetime values. Naive datetimes are treated as UTC.


import asyncio
from tardis_dev import Channel, replay


async def main():
    async for local_timestamp, message in replay(
        exchange="binance",
        from_date="2024-03-01",
        to_date="2024-03-02",
        filters=[Channel("trade", ["btcusdt"]), Channel("depth", ["btcusdt"])],
        api_key="YOUR_API_KEY",
    ):
        print(local_timestamp, message)


asyncio.run(main())

Features



  • support for many cryptocurrency exchanges — see docs.tardis.dev for the full list



Installation

Requires Python 3.9+ installed.

pip install tardis-dev


Development

This repository uses uv for dependency management, locking, builds, and release automation.

uv sync --locked --group dev
uv run black --check tardis_dev tests
uv run pytest tests/ -q -m "not live"
uv build --no-sources


Documentation

See official docs



Examples

Replay historical market data

import asyncio
from tardis_dev import Channel, replay


async def main():
    async for local_timestamp, message in replay(
        exchange="binance",
        from_date="2024-03-01",
        to_date="2024-03-02",
        filters=[Channel("trade", ["btcusdt"]), Channel("depth", ["btcusdt"])],
    ):
        print(local_timestamp, message)


asyncio.run(main())

Download CSV datasets

from tardis_dev import download_datasets


download_datasets(
    exchange="binance",
    data_types=["trades", "incremental_book_L2"],
    symbols=["BTCUSDT"],
    from_date="2024-03-01",
    to_date="2024-03-02",
    api_key="YOUR_API_KEY",
)

Migration from tardis-client

This package is the v3 API. Existing tardis-client and tardis_dev.datasets.download() users should migrate to the new top-level functions:

  • replay: TardisClient().replay(...) -> replay(...)
  • datasets: from tardis_dev import datasets; datasets.download(...) -> from tardis_dev import download_datasets
  • cache cleanup: tardis_client.clear_cache() -> clear_cache()

See Migration Notice for the full migration guide.



See the tardis-dev docs for more examples.

Project details


Download files

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

Source Distribution

tardis_dev-4.2.1.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

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

tardis_dev-4.2.1-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file tardis_dev-4.2.1.tar.gz.

File metadata

  • Download URL: tardis_dev-4.2.1.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tardis_dev-4.2.1.tar.gz
Algorithm Hash digest
SHA256 f2dbfe75aa3ee031c8aa6bd8e2efd0a7b8a7b7007dc5e9fb8753d7d04b4f0571
MD5 9bca8dc8fb0b492f890b15dff47402e0
BLAKE2b-256 bc4be0c9bd8414e1924bde7c1ca1562bc5446f061298a20ca2d42352b84388e6

See more details on using hashes here.

File details

Details for the file tardis_dev-4.2.1-py3-none-any.whl.

File metadata

  • Download URL: tardis_dev-4.2.1-py3-none-any.whl
  • Upload date:
  • Size: 20.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tardis_dev-4.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d388101c3355af032b9f937c9823819318fbf339ace28031a082a1f78eaf15be
MD5 bd26e7634f42cb20ca07b57b3d320b8c
BLAKE2b-256 20a23db842bdfdaf80901d5aef5b75b9e28c911d0e7aa6c247b987d6e5f3db1a

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