Skip to main content

Python binding for Finterion Charts — declarative ChartSpec builder, validator, and codec.

Project description

finterion-charts (Python)

Python binding for Finterion Charts.

This package does not render anything. It builds, validates, and encodes ChartSpec JSON — the same JSON contract consumed by @finterion/charts-spec. Rendering is done in the browser by @finterion/charts-core, so charts produced from Python are pixel-identical to charts produced from TypeScript.

Install

From PyPI (once published):

pip install finterion-charts          # core: builder + cheap validator + codec
pip install "finterion-charts[schema]"   # add jsonschema-based strict validation
pip install "finterion-charts[pandas]"   # add pandas/numpy ergonomic builders
pip install "finterion-charts[jupyter]"  # add IPython iframe display helper
pip install "finterion-charts[all]"

From this monorepo (editable):

cd bindings/python
pip install -e ".[all,dev]"

Quickstart

from finterion_charts import ChartSpec, Indicator, Price, Marker

spec = (
    ChartSpec(theme="finterion-dark", background="#131722", grid="horizontal")
    .with_bars(time=time, open=o, high=h, low=l, close=c, volume=v)
    .with_column("rsi14", rsi)
    .add_panel(Price(id="price", weight=3, title="AAPL", type="candles"))
    .add_panel(Indicator.panel(
        id="rsi", weight=1, title="RSI 14",
        values="rsi14", color="#a3ff12",
        ref_lines=[30, 70], y_range=(0, 100),
    ))
    .add_marker(Marker(time=ts, side="buy",  price=lo, label="B"))
    .add_marker(Marker(time=ts, side="sell", price=hi, label="S"))
)

spec.validate()                   # raises ValueError on invalid spec
spec.to_json("chart.json")
url = spec.embed_url()            # https://charts.finterion.com/embed/#spec=…

See examples/aapl_supertrend.py for an end-to-end example with OHLC, RSI, SuperTrend overlay, and buy/sell markers.

Licence

Finterion Community Licence v1.0 (source-available, not OSI-approved). Free to use — including commercially — as long as the default "Powered by Finterion" badge stays visible on rendered charts. To remove the badge or to build a competing hosted charting service, you need a commercial licence: contact licensing@finterion.com. See the LICENSE file shipped with the wheel, or the full text on GitHub.

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

finterion_charts-1.0.0.tar.gz (526.1 kB view details)

Uploaded Source

Built Distribution

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

finterion_charts-1.0.0-py3-none-any.whl (91.1 kB view details)

Uploaded Python 3

File details

Details for the file finterion_charts-1.0.0.tar.gz.

File metadata

  • Download URL: finterion_charts-1.0.0.tar.gz
  • Upload date:
  • Size: 526.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for finterion_charts-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d78be7b6a46d4daab56132c987bedf9a04cd08d855c1ad280742b1d924e06d5b
MD5 950a675ad9a6c747feb5363c0b03ac1e
BLAKE2b-256 3b400084d7a70490b2b47477d6a92640177b208dcd1bb96c1fbab03a017d6ad5

See more details on using hashes here.

Provenance

The following attestation bundles were made for finterion_charts-1.0.0.tar.gz:

Publisher: release-python.yml on Finterion/charts

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file finterion_charts-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for finterion_charts-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6fffc422dcbfe21071b02d67fd537c92140ef5c5bf77bfcddea3ca0658eb5528
MD5 f273c02c5a277ddcea4bdbdbfd7274bb
BLAKE2b-256 e9a8558289f0faab91677a20c258ae773257d0726c85261c5425cd6b4240b9c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for finterion_charts-1.0.0-py3-none-any.whl:

Publisher: release-python.yml on Finterion/charts

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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