Skip to main content

sysstra-data

Lightweight, generalized market data client for the Sysstra trading platform. Wraps sysstra-data-services with a typed, domain-namespaced Python interface.

Install

pip install sysstra-data

Quickstart

from sysstra_data import SysstraData

client = SysstraData(api_key="sk-...")

# Equities
eod = client.equities.eod("SBIN", "2025-01-01", "2025-06-30", exchange="XNSE")
intraday = client.equities.candles("SBIN", "2025-01-01", "2025-01-02", interval=5)

# Futures & Options
futures = client.futures.candles("NIFTY", "2025-01-01", "2025-01-31")
options = client.options.candles("BANKNIFTY", "2025-01-01", "2025-01-31",
                                 option_type="CE", strike=48000)
chain = client.options.chain("BANKNIFTY", date="2025-01-15")

# Crypto & Forex
btc = client.crypto.candles("BTCUSDT", "2025-01-01", "2025-01-02", interval="1h")
eurusd = client.forex.candles("EURUSD", "2025-01-01", "2025-01-02", interval="1h")

# Reference data
exchanges = client.market.exchanges(market="IN")
symbols = client.market.symbols(exchange="XNSE", query="RELIANCE")

# Fundamentals
fii_dii = client.fundamentals.fii_dii("2025-01-01", "2025-01-31")

# Account (your own key/credits only)
me = client.account.me()
keys = client.account.list_keys()

A process-wide default client is also available for scripts that only need one:

import sysstra_data as sd

sd.set_api_key("sk-...")
candles = sd.equities.eod("SBIN", "2025-01-01", "2025-06-30")

Error handling

Every non-2xx response raises a specific exception, all subclassing SysstraDataError:

Exception Meaning
SysstraAuthError Missing/invalid API key, or insufficient privilege
SysstraValidationError Bad request shape
SysstraSymbolNotFoundError Symbol doesn't exist
SysstraAmbiguousSymbolError Symbol resolves to multiple exchanges — .candidates lists them
SysstraInsufficientCreditsError Account is out of API credits
SysstraServiceUnavailableError Backend reference/warehouse store unreachable
SysstraConnectionError Network-level failure (timeout, DNS, SSL)
SysstraAPIError Any other non-2xx response — carries .status_code

Not yet implemented server-side

A few methods exist on the client for API symmetry but raise NotImplementedError until sysstra-data-services grows the matching route: options.greeks(), equities.announcements(), equities.fundamentals(), fundamentals.earnings_calendar(), fundamentals.earnings_transcript().

Development

pip install -e ".[dev]"
pytest tests/ --ignore=tests/test_uat_integration.py

tests/test_uat_integration.py boots a real sysstra-data-services instance in-process and needs that package importable plus a provisioned test API key.

License

MIT

Download files

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

Source Distribution

sysstra_data-0.1.0.tar.gz (15.0 kB view details)

Uploaded Source

Built Distribution

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

sysstra_data-0.1.0-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file sysstra_data-0.1.0.tar.gz.

File metadata

  • Download URL: sysstra_data-0.1.0.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for sysstra_data-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1c36c00456560f2a700e80a20ecbcdbb99a415cf15282ad028f50223e538f2cd
MD5 34ec0462cfbf9ff7e9e446b62c2b3438
BLAKE2b-256 678df6c9d3ea20f6c871b602e01ce1beeddf0f267f440bd826181c55b064edbc

See more details on using hashes here.

File details

Details for the file sysstra_data-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: sysstra_data-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 15.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for sysstra_data-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fde01b9fb97fc25ad7f654e8eb8e79e76e37649e0b62971f0df498a43c25853b
MD5 0ef25d39186720db3dd5cc41584d192b
BLAKE2b-256 25111dabb3de13d0997ec7a26e116c0e7471c5dd98740db6a81b821daa435b33

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.1

2 files

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page