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.1.3

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.1.3
File Size Uploaded
wickra_feature_store-0.1.3.tar.gz 70.6 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for wickra-feature-store 0.1.3
File
wickra_feature_store-0.1.3-cp39-abi3-win_arm64.whl CPython 3.9 abi3 Windows ARM64 Details
wickra_feature_store-0.1.3-cp39-abi3-win_amd64.whl CPython 3.9 abi3 Windows x86-64 Details
wickra_feature_store-0.1.3-cp39-abi3-musllinux_1_2_x86_64.whl CPython 3.9 abi3 Linux musl 1.2+ x86-64 Details
wickra_feature_store-0.1.3-cp39-abi3-musllinux_1_2_aarch64.whl CPython 3.9 abi3 Linux musl 1.2+ ARM64 Details
wickra_feature_store-0.1.3-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.1.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.9 abi3 Linux glibc 2.17+ ARM64 Details
wickra_feature_store-0.1.3-cp39-abi3-macosx_11_0_arm64.whl CPython 3.9 abi3 macOS 11.0+ ARM64 Details
wickra_feature_store-0.1.3-cp39-abi3-macosx_10_12_x86_64.whl CPython 3.9 abi3 macOS 10.12+ x86-64 Details

Total release size: 5.9 MB

Release files / wickra_feature_store-0.1.3.tar.gz

Download URL wickra_feature_store-0.1.3.tar.gz
Size 70.6 kB
Tags Source
SHA-256 checksum
How to use checksums
05adaac1aba18665e0717a4f37762671e574fa28de58c9cb80242f4ad92cc78e
BLAKE2b-256 checksum
How to use checksums
13a4eeced0a33da3019acad234db7234ac72e03a086b84f79828c45a4866c294
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

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

Download URL wickra_feature_store-0.1.3-cp39-abi3-win_arm64.whl
Size 556.3 kB
Tags CPython 3.9 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
a66be623c8b0e57e952ddc470502f64cf4f40b8908df917e29da52613aa8a3c1
BLAKE2b-256 checksum
How to use checksums
2e8bd60eab690893f84fd43a86433d0b5371327c9d0117456799b80972d407a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Release history Release notifications | RSS feed

0.2.0

9 release files

0.1.4

9 release files

This release

0.1.3 This release

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