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

Uploaded Python 3

File details

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

File metadata

  • Download URL: finterion_charts-1.1.0.tar.gz
  • Upload date:
  • Size: 950.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.1.0.tar.gz
Algorithm Hash digest
SHA256 b53295afe49ca088c9a7306303fb5f3412baaaacf94cb920eb2ab265d2f4cbc8
MD5 a94d9cf789176bc3f24ff2cb9baceb12
BLAKE2b-256 2d93ec0a7b7a39c2335096f44ab325c02745f41d37d097625fe097f6614e7e7d

See more details on using hashes here.

Provenance

The following attestation bundles were made for finterion_charts-1.1.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.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for finterion_charts-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3fd3e748008420ca777ffbb3e3977047b2d6c8861e7bbb92cffca2a80addc754
MD5 e47ebe4163e03607594a7cd8e484b89e
BLAKE2b-256 bbb0c549f0fd1c8574fff9ec3c46c65de1c98398164f536adb89f2c415f9a793

See more details on using hashes here.

Provenance

The following attestation bundles were made for finterion_charts-1.1.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