Skip to main content

Wickra Feature Store — turn OHLCV and microstructure event streams into ML-ready feature matrices over 497 streaming indicators, deterministic across ten languages

CI codecov PyPI License: MIT OR Apache-2.0

Wickra Feature Store — Python


Turn OHLCV and microstructure event streams into ML-ready feature matrices over 497 O(1) streaming indicators — for Python. pip install wickra-feature-store — prebuilt wheels for Linux, macOS and Windows, nothing to compile.

Python bindings for wickra-feature-store, the data-driven feature-matrix core. Build a FeatureStore from a spec JSON, drive it with command JSONs, and read back feature matrices — the same command protocol every language binding speaks.

Install

pip install wickra-feature-store

Pre-built wheels ship for Linux, macOS and Windows — there is nothing to compile and no C library to track down.

Building from this repository (contributors)

maturin develop --release
pytest -q

Quick start

import json
from wickra_feature_store import FeatureStore

spec = json.dumps({
    "universe": ["AAA"],
    "features": [
        {"kind": "indicator", "name": "Sma", "params": [2]},
        {"kind": "price", "field": "close"},
    ],
    "labels": [{"kind": "forward_return", "horizon": 1}],
})

store = FeatureStore(spec)

def candle(ts, close):
    return {"ts": ts, "open": close, "high": close,
            "low": close, "close": close, "volume": 1.0}

response = store.command(json.dumps({
    "cmd": "build_batch",
    "data": {"AAA": [candle(0, 100.0), candle(1, 110.0), candle(2, 121.0)]},
}))

matrix = json.loads(response)
print(matrix["columns"])  # ['Sma(2)', 'price.close', 'fwd_return(1)']

# Straight into pandas:
#   import pandas as pd
#   df = pd.DataFrame(matrix["data"], columns=matrix["columns"])

API

Method Description
FeatureStore(spec_json) Build a feature store from a spec JSON (raises ValueError if invalid).
store.command(cmd_json) -> str Apply a command JSON, return the response JSON. Commands: set_spec, push, push_batch, build, build_batch, labels, reset, version.
FeatureStore.version() -> str The library version.

Arrow / Parquet output is a binary file format and is not available over this JSON surface; use the wickra-feature-store CLI for columnar output.

Benchmark

Every binding forwards to the same data-driven Rust core, so what this one adds is the call overhead of PyO3, not a different result. The core's throughput is measured by the repository's benchmark suite and the nightly bench.yml run; the numbers, the machine and how to reproduce them are in the repository BENCHMARKS.md.

Documentation

The full guide, the spec reference and the API documentation live in the main repository and the documentation site:

Wickra Feature Store ships native bindings for Python, Node.js, WASM and Rust, plus a C ABI hub that any C-capable language (C, C++, C#, Go, Java, R) links against — all forwarding to the same data-driven, unsafe-forbidden Rust core.

Security

Found a security issue? Please don't open a public issue. Report it privately via the repository's Security tab ("Report a vulnerability") or email support@wickra.org with a subject line starting [wickra security]. Full policy: https://github.com/wickra-lib/wickra-feature-store/blob/main/SECURITY.md.

Disclaimer

wickra-feature-store is research and engineering tooling, not financial advice. A feature matrix describes historical data under the spec you provide; it makes no claim about the profitability or future performance of any model trained on it. Trading carries risk; you are responsible for your own decisions.

License

Licensed under either of Apache-2.0 or MIT at your option.

Metadata

Release files for wickra-feature-store 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wickra-feature-store 0.2.0
File Size Uploaded
wickra_feature_store-0.2.0.tar.gz 70.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for wickra-feature-store 0.2.0
File
wickra_feature_store-0.2.0-cp39-abi3-win_arm64.whl CPython 3.9 abi3 Windows ARM64 Details
wickra_feature_store-0.2.0-cp39-abi3-win_amd64.whl CPython 3.9 abi3 Windows x86-64 Details
wickra_feature_store-0.2.0-cp39-abi3-musllinux_1_2_x86_64.whl CPython 3.9 abi3 Linux musl 1.2+ x86-64 Details
wickra_feature_store-0.2.0-cp39-abi3-musllinux_1_2_aarch64.whl CPython 3.9 abi3 Linux musl 1.2+ ARM64 Details
wickra_feature_store-0.2.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 abi3 Linux glibc 2.17+ x86-64 Details
wickra_feature_store-0.2.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.9 abi3 Linux glibc 2.17+ ARM64 Details
wickra_feature_store-0.2.0-cp39-abi3-macosx_11_0_arm64.whl CPython 3.9 abi3 macOS 11.0+ ARM64 Details
wickra_feature_store-0.2.0-cp39-abi3-macosx_10_12_x86_64.whl CPython 3.9 abi3 macOS 10.12+ x86-64 Details

Total release size: 5.8 MB

Release files / wickra_feature_store-0.2.0.tar.gz

Download URL wickra_feature_store-0.2.0.tar.gz
Size 70.8 kB
Tags Source
SHA-256 checksum
How to use checksums
eea70ee4a3f26852569f0c091ca5d434c61dd47c7098b08a03eaa4378736a13f
BLAKE2b-256 checksum
How to use checksums
0571c943e0520969c72493bd6bdb91324f49ddbc15aca43a62bb510bfe818045
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / wickra_feature_store-0.2.0-cp39-abi3-win_arm64.whl

Download URL wickra_feature_store-0.2.0-cp39-abi3-win_arm64.whl
Size 557.8 kB
Tags CPython 3.9 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
6789a68cdf8d97c8d833b6c4db0a95abc6f40b597b2a4a903043777db8ed242a
BLAKE2b-256 checksum
How to use checksums
3774cd352a5719cfdaae3453c72ab3b24ee99d15934dff5e2c094b285fc86b06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / wickra_feature_store-0.2.0-cp39-abi3-win_amd64.whl

Download URL wickra_feature_store-0.2.0-cp39-abi3-win_amd64.whl
Size 633.9 kB
Tags CPython 3.9 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
b3cc279ab03466966edb09661ce0b3381c45578161fc234e0e77150e9c146e7c
BLAKE2b-256 checksum
How to use checksums
ec4bf4eb5cb239f53b26120a6a96b9b37d95dabe755017bc6c5f6c86cc1583a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / wickra_feature_store-0.2.0-cp39-abi3-musllinux_1_2_x86_64.whl

Download URL wickra_feature_store-0.2.0-cp39-abi3-musllinux_1_2_x86_64.whl
Size 964.9 kB
Tags CPython 3.9 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
d62590d351c198c526b9358da5fc5ba48f038e7b95dbdf191a279cd27a75229f
BLAKE2b-256 checksum
How to use checksums
1b2db1c3b16f0c17e63b0e6de4ef35a302bc4062f6ba1432f7aa3e20ff0cd695
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / wickra_feature_store-0.2.0-cp39-abi3-musllinux_1_2_aarch64.whl

Download URL wickra_feature_store-0.2.0-cp39-abi3-musllinux_1_2_aarch64.whl
Size 848.0 kB
Tags CPython 3.9 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
5b6bd70e946bb19419421926127c89c60c359d248dbf3d16820ec8ecf5990119
BLAKE2b-256 checksum
How to use checksums
f1cfbdc4d598745345672269510815f6670c525a7386e3cf2898bbab818ece26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / wickra_feature_store-0.2.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL wickra_feature_store-0.2.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 749.0 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
4d06da66784a6a7d11397d4c64499e58806d0226fb3b74577c3249e6ce37ae28
BLAKE2b-256 checksum
How to use checksums
61c9f7ae59986721d0a675c718f085011423b6c4975f734cbc5dae6539e30487
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / wickra_feature_store-0.2.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL wickra_feature_store-0.2.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 669.5 kB
Tags CPython 3.9 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
fc4920f74630e78c77946eaa9c19782a31736c574c5e2768357e280a4fb1e443
BLAKE2b-256 checksum
How to use checksums
0b9a16c895f4926e7677fa1b541e2ef389bc0ac68338fa66ce04822c8ca88992
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / wickra_feature_store-0.2.0-cp39-abi3-macosx_11_0_arm64.whl

Download URL wickra_feature_store-0.2.0-cp39-abi3-macosx_11_0_arm64.whl
Size 626.0 kB
Tags CPython 3.9 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d0fc3c06c1f55887517f69c3926b46cd7ed1d69e95afb53e3b3eeb3a019d9e00
BLAKE2b-256 checksum
How to use checksums
fdb0ecaf5dbbad3a1f4a94c456a95157f709fa298d5e1982f22b724fe92b2fde
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / wickra_feature_store-0.2.0-cp39-abi3-macosx_10_12_x86_64.whl

Download URL wickra_feature_store-0.2.0-cp39-abi3-macosx_10_12_x86_64.whl
Size 719.3 kB
Tags CPython 3.9 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
bdc9a9f8ef924c8ba45aaf972fb2214f740df4000afc61c03554aaa208ba8a05
BLAKE2b-256 checksum
How to use checksums
e89dd72fc5b2b599682629c3442ab4501991212b042583d267c3943ced3882cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release history Release notifications | RSS feed

This release

0.2.0 This release

9 release files

0.1.4

9 release files

0.1.3

9 release files

0.1.2

9 release files

0.1.1

9 release files

0.1.0

9 release 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