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.1.tar.gz (14.9 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.1-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: sysstra_data-0.1.1.tar.gz
  • Upload date:
  • Size: 14.9 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.1.tar.gz
Algorithm Hash digest
SHA256 582342bd4306711801a36855679ea1e3ae92a4d2a5894b103f7beca8f83c1b3d
MD5 487027ce9f82556f01cb6cd4a4083be0
BLAKE2b-256 b5a767bcabb517483b5111497dee3e55f0ff6ad1a3fba39d0c01017dd0b8a191

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sysstra_data-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 14.9 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 20fb6453ef21a1d4c1f0d1c48149381f29efd6ae588fc032cd0264b87288fea0
MD5 cb55aec2d828a6dc04836827809ef02e
BLAKE2b-256 b6e50624066ba0f421084999fb002e72f8bd32980634df3333b1423d16836f31

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 files

0.1.0

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