What it is, why it matters, who it’s for.
A no-code platform where traders compose strategies on a visual canvas and replay years of market data with bit-exact reproducibility.
Backtests are only useful if they replay identically. Drift breaks trust and quietly invalidates research.
Quant-curious traders without a Python background, and analysts who need to share runs that reviewers can reproduce.
Samestrategy,samedata,samehash.Everytime.
- 01Single 8-core node — no horizontal scaling for v1
- 02Sub-second feedback while editing 100k-node graphs
- 03Versioned, forkable strategies with instant rollback
- 04Non-engineering users on the editing surface
Determinism in trading sims is a quiet, expensive problem. Floats, RNGs, system clocks, even map iteration order will drift a result enough to invalidate a year of research.
Decisions, in order of stakes.
- 01
Fix every clock, every float
Replaced `time.Now()` with a monotonic event clock, swapped float64 for fixed-point Q32.32, and seeded a deterministic RNG keyed by run hash.
- 02
Strategies as immutable hashes
Every strategy compiles to a canonical JSON body and is stored content-addressed. Forks reference parents; the engine only ever runs by hash.
- 03
Engine in Go, UI on the side
Replaced the Python prototype with a zero-allocation Go engine. The SvelteKit canvas talks to it through a thin RPC layer and never blocks on a sim.
The sim engine is a single tight loop. Indicators update in place against pre-sized ring buffers, the strategy emits a typed signal, and the orderbook settles fills in fixed-point arithmetic.
Strategies are stored as hashes. A run never references a mutable row; reviewers can re-execute by hash months later and get the same equity curve down to the satoshi.
12×faster,bit-exact,andquietlyforkable.
Closed beta with 80 traders. Every reported run is reproducible by hash. P95 API stayed under 100ms through the launch month while strategies grew to 2.3k versions.
- ·
Determinism is a feature, not a tax. Lock it in early or rebuild later.
- ·
Hashing strategies turned versioning, forking, and audit into the same primitive.
- ·
Fixed-point is unfashionable and saves more arguments than it loses.
- →
Ship a visual diff between strategy versions earlier — users want to see what changed before re-running.
- →
Move the analyzer registry behind a signed plugin API in v1, not v2.
