Wickra is a family of 24 open-source trading libraries: a streaming-first indicator core and twenty-three data-driven products built on it. Every one of them is a Rust core with a CLI and the same ten-language binding surface — native Python, Node.js and WASM, plus a C ABI for C, C++, C#, Go, Java and R — released to crates.io, PyPI, npm, NuGet, Maven Central, the Go module proxy and R-universe from one pipeline, and checked byte-for-byte across all ten languages by a golden corpus in every repository.
▶ Live demos: all 514 indicators over real Binance market data, in your browser — live.wickra.org; a backtest whose equity curve builds bar by bar — backtest-live.wickra.org; one strategy spec running side by side in Python, Rust, JS and Go — playground.wickra.org. Zero backend, all of them.
Site: wickra.org · Docs: docs.wickra.org, and one site per product (table below)
The core in three lines, in Python:
import wickra as ta
rsi = ta.RSI(14)
for price in live_feed:
value = rsi.update(price) # O(1) — no recomputation over history
if value is not None and value > 70:
print("overbought")Six layers, twenty-four repositories. The release badge is each repository's latest published version; the docs column is its own documentation site.
| Repository | What it does | Release | Docs |
|---|---|---|---|
| wickra | main library (Rust core + Python / Node.js / WASM bindings + a C ABI for C / C++ / C# / Go / Java / R) | docs.wickra.org |
| Repository | What it does | Release | Docs |
|---|---|---|---|
| wickra-exchange | unified market-data + execution across ten crypto exchanges | exchange.wickra.org | |
| wickra-synth | deterministic synthetic market microstructure: OHLCV, order book, trades and funding from a single seed | synth.wickra.org | |
| wickra-timemachine | scrub the whole market like a video — every symbol, full order book, rewound to any moment via deterministic re-fold | timemachine.wickra.org | |
| wickra-genome | a vector database of the whole market: every asset a 514-dim live vector, for similarity search, clustering and anomaly detection | genome.wickra.org | |
| wickra-feature-store | OHLCV and microstructure streams into ML-ready feature matrices over 514 O(1) streaming indicators | feature-store.wickra.org |
| Repository | What it does | Release | Docs |
|---|---|---|---|
| wickra-backtest | event-driven backtester over the Wickra core | backtest.wickra.org | |
| wickra-screener | parallel multi-symbol screening over 514 streaming indicators | screener.wickra.org | |
| wickra-darwin | evolutionary strategy search at millions of backtests per second, mutating and crossing JSON specs across the 514-indicator space | darwin.wickra.org | |
| wickra-gym | a Gymnasium-compatible, microstructure-aware backtest environment with O(1) steps for deterministic RL rollouts | gym.wickra.org | |
| wickra-impact | the backtester that knows you would have moved the market: agent-based fills on the real historical L2 order book | impact.wickra.org |
| Repository | What it does | Release | Docs |
|---|---|---|---|
| wickra-verify | confirm or refute a claimed backtest report against its strategy and data, in ten languages | verify.wickra.org | |
| wickra-proof | Proof-of-Backtest: deterministic (spec, data) → report + blake3 hash, recomputable byte-for-byte in ten languages | proof.wickra.org | |
| wickra-zk | prove a backtest zero-knowledge — on-chain-verifiable performance without revealing the data or the strategy | zk.wickra.org | |
| wickra-strategy-ci | Jest for trading strategies: golden-pin the report, catch regressions in CI, property-test against fuzzed data | strategy-ci.wickra.org | |
| wickra-benchmark | reproducible, golden-verified benchmark suite — recompute any (strategy, dataset, report) in ten languages and confirm it byte-for-byte | benchmark.wickra.org |
| Repository | What it does | Release | Docs |
|---|---|---|---|
| wickra-terminal | the trading terminal: a TUI and a browser renderer over the stack | terminal.wickra.org | |
| wickra-xray | market-microstructure explorer: footprint, order-book heatmap, liquidation map, funding/OI divergence | xray.wickra.org | |
| wickra-radar | perp-universe alert radar: OI delta, funding flip, book imbalance, liquidation clusters, OI/price divergence | radar.wickra.org | |
| wickra-copilot | local market copilot grounded in real order-book, liquidation and funding microstructure | copilot.wickra.org | |
| wickra-shazam | match an asset's current microstructure fingerprint against its entire history | shazam.wickra.org |
| Repository | What it does | Release | Docs |
|---|---|---|---|
| wickra-compile | compile a strategy spec into a standalone deployable: a WASM module, a self-contained binary, or a no_std artifact |
compile.wickra.org | |
| wickra-embed | allocation-free, no_std streaming indicators for bare-metal and HFT, byte-for-byte identical to the core |
embed.wickra.org | |
| wickra-pico | the O(1) indicator core running bare-metal on a $5 Raspberry Pi Pico — the LED blinks on the EMA cross | pico.wickra.org |
The core, in every language:
| Language | Install |
|---|---|
| Python | pip install wickra |
| Rust | cargo add wickra |
| Node.js | npm install wickra |
| Browser / WASM | npm install wickra-wasm |
| C / C++ (C ABI) | pre-built header + library from releases |
| C# | dotnet add package Wickra |
| Go (cgo) | go get github.com/wickra-lib/wickra-go |
| Java (FFM) | org.wickra:wickra on Maven Central |
R (.Call) |
install.packages("wickra", repos = "https://wickra-lib.r-universe.dev") |
Every product installs the same way with its own name: pip install wickra-<name>, npm install wickra-<name> (and wickra-<name>-wasm for the
browser), cargo install wickra-<name> for the CLI, dotnet add package Wickra.<Name>, org.wickra:wickra-<name> on Maven Central,
go get github.com/wickra-lib/wickra-<name>-go, and the R package with the
hyphen dropped (wickracopilot, wickrafeaturestore, …) from r-universe. The
exact identifiers are the badges on each repository's README.
No C compiler, no headers, no Rust toolchain required to install the native packages — pre-built on every supported platform. The C ABIs ship the same way: a ready-to-link header + shared/static library per platform on every release.
Supported versions, family-wide: Rust 1.86 · Python 3.9 · Node.js 22 · WASM (any modern engine) · C99 · C++17 · .NET 8 · Go 1.23 · Java 22 · R ≥ 4.1 — the Requirements page has the per-language detail, and each product's README its own.
- One core, 514 indicators across twenty-four families, every one a state machine that updates in O(1) per new data point — the same code for the backtest and the live tick, and the same numbers in every product above.
- Data, not code. A strategy, a scan, a fingerprint, a proof — each is a JSON spec the Rust core executes, so the same spec runs unchanged from any of the ten languages and produces the same bytes.
- Identical across all 10 languages — proven, not promised. Every repository carries a golden corpus that CI replays through Rust, Python, Node.js, WASM, C, C++, C#, Go, Java and R and compares byte-for-byte.
- Zero third-party dependencies in every language,
unsafe-forbidden Rust cores, hash-locked CI, SHA-pinned actions, signed commits and build provenance on every release — the same supply chain in all twenty-four repos. - One release pipeline. A tag publishes to every registry at once; the org keeps a version snapshot of what each registry actually holds.
- wickra-docs — the core's documentation, live at docs.wickra.org: per-indicator deep-dives, quickstarts for every language, the cookbook and the TA-Lib migration guide
- webpage — the marketing site, live at wickra.org: landing page, live in-browser WASM demo, benchmarks
- wickra-live — live.wickra.org, every indicator over a real Binance feed in the browser
- wickra-backtest-live — backtest-live.wickra.org, the backtester compiled to WebAssembly
- wickra-playground — playground.wickra.org, one StrategySpec side by side in Python, Rust, JS and Go
wickra-<name>-site— one VitePress site per product, deployed at<name>.wickra.org;wickra-<name>-go— the published Go module of each product, mirrored frombindings/go/on every release
Please do not open a public issue for a security vulnerability in any repository
of the family. Report it privately through that repository's Security tab
("Report a vulnerability") or by email to support@wickra.org with a
subject line starting [wickra security]; every repository's SECURITY.md
carries the same policy.
Every repository is dual-licensed under MIT or Apache-2.0 — OSI-approved, permissive open source, at your option.
If Wickra saved you time, the cheapest way to say thanks is to ⭐ a repo.
