How MIZAN works

From a secret strategy to a proof anyone can check.

Every performance number on a credential is enforced by a proof, not a promise. Two journeys, end to end: the quant who proves an edge without revealing it, and the allocator who checks that proof on their own machine, taking no one's word for the numbers — including ours.

01The problem, in one question

A backtest is graded by the person who ran it, and the statistics that catch a lucky backtest — the Deflated Sharpe Ratio, PBO, and the rest — all lean on one number the person being judged gets to report: how many strategies did you try before this one worked? Understate it, and the correction for luck quietly disappears. The scale is no longer hypothetical: independent allocator research finds 72% of LLM-finance studies leave key biases unaddressed, and nine of ten frontier LLM trading agents show negative stock-selection alpha (SPEC Research, State of AI Alpha, Q3 2026). MIZAN's job is to make that entire evaluation checkable by a stranger.

02The pipeline

Commit
Your strategy is sealed behind a salted commitment; only the fingerprint is ever public. The market data is pinned the same way — canonical, Merkle-rooted — so results can't be cooked on friendly history. On the statistical tracks, your trials go into a committed ledger: a Merkle tree whose leaves are the configurations you tried and their results.
Evaluate — inside the proof
A zero-knowledge virtual machine re-runs the whole evaluation in-circuit: the backtest on the pinned data, net of a committed cost model (reference floor: 7 bp fee + 3 bp slippage per side — raisable, never lowerable), judged by a hash-pinned gate class — directional or market-neutral, the same bar for everyone in the class. Integer arithmetic throughout, so any verifier reproduces every digit.
Deflate for luck
On the Deflated-Sharpe track, the circuit recomputes N from the ledger itself — the number of committed leaves, not a number you typed — and proves the reported winner really was the best of them. The statistical seals — DSR, PBO across all 12,870 balanced splits (C(16,8) at S=16), purged CPCV, PSR (Bailey–López de Prado), SPA (Hansen), and a minimum-backtest-length check (verifier-side) — are each their own credential on the same committed strategy; the registry shows which seals a strategy carries.
Seal
Out comes a credential: a 219 KB STARK proof plus its public journal — verdict, metrics (if you chose disclosure), the committed cost model, the gate class, and the exact engine fingerprint that produced it. Anchor state is printed per credential — Bitcoin via OpenTimestamps plus RFC-3161 where stamped; no anchor shown, no claim made.
Verify — anywhere, forever
Anyone re-checks the credential offline in seconds: the proof, the data root, the gate, the statistics. A credential verifies against the engine era that minted it, permanently — and only that era: cross-era verification fails by design, so use the era binary printed on the tear sheet. Superseded is never revoked; an unrecognized engine is reported, never guessed at.

Within the committed ledger, the trial count is not a number you report. It is a fact the proof counts.

⚠ Three limits, before anything else

The ledger is forward-only. It counts every trial you committed and cannot be shrunk after the fact — but trials you ran outside it are invisible to it. That is exactly why a same-request N is labeled amber · self-declared on the credential, and the green badge is reserved for pre-registered ledgers: trials committed before the results existed.

A one-shot seal proves immutability, not foresight. Foresight is earned by anchoring the track before its window and extending it forward.

A credential attests a computation over committed history — never live execution, fills, capacity, or the future.

03Two ways in

Rules path
Your logic runs inside the proof

Express the strategy in MIZAN's spec — a weighted ensemble of rules, regime gates, sizing, up to full trend engines. It suits rule-based directional strategies; anything else — ML, stat-arb, discretion — belongs on the sealed path.

Full spec reference →

Sealed path
Your model stays home

Run your model anywhere you like and submit only its decisions — one position per bar-move, each pre-committed behind a salted hash. The circuit proves those exact decisions cleared the gate, and that not one was edited after the fact. Position sizing is provable too: fractional per-bar leverage with an in-circuit cap (local prover).

This is verifiable AI where it counts for finance: the model's performance, proven — not its internals, which stay yours. Verifiable inference remains a research frontier industry-wide; verifiable performance is live here today.

How the seal works, and its honest limits →

Whoever reads the credential sees the verdict and the metrics. Never the strategy.

Be precise about what transits where. On the hosted paths, MIZAN's prover computes on your submission as a private input — the spec (rules path) or the position stream (sealed path) — and the credential never reveals either; the disclosed metrics themselves don't invert for any real strategy family (a one-rule spec is brute-forceable; three rules ≈ 10²⁰ candidates — the studio warns you and offers PASS/FAIL-only disclosure). If even transit is outside your threat model, the local prover runs the whole engine on your hardware and nothing leaves it but the finished credential, which the studio re-verifies with the pinned era verifier before listing.

04What you need, and what's covered

Where the product stands: production-grade and complete, in open testing — anyone can sign in and test the full flow; real GPU proof mints are issued on request during the test phase. Nothing here is a mockup: the registry, the verifier, and every credential are live.

Datasets are canonical and Merkle-pinned — you pick one, you never upload prices. Sealed and Deflated-Sharpe mints: BTC (4h and daily) and SPY — the SPY series now sourced from a our US equity data feed (1997→, 7,184 bars, test phase). NIFTY and gold are withdrawn until rebuilt from an authoritative exchange source: we pulled our own datasets rather than keep minting on scraper data, and prior credentials verify forever. Rules-path mints add multi-asset majors books, window variants, and — new in test phase — the first survivorship-free US equity universe: a 30-stock point-in-time panel (2016→) in which delisted names stay in the data instead of vanishing, plus 639 US single names as separate datasets; the picker (and GET /api/*-datasets) is authoritative, with bar counts. Sealed submissions: a JSON array of integers, one per bar-move, length exactly bars − 1, up to 13,000 positions. Deflated-Sharpe: up to 64 trials per ledger, winner first. Quotas: 3 sealed and 3 DSR mints per account per day, 2 self-serve rules mints. Own-data tier (worldwide markets): a quant in Tokyo, São Paulo, or Riyadh doesn't wait for our canonical menu — the local SDK mints on any market's data they commit, binding their CSV's Merkle root into the proof. (The SDK kit is issued on request during the test phase — watermarked, under NDA; verifying needs no kit, the public verifier checks any credential.) A checker then verifies with their own copy of that market's history (--any-data): if the roots match, the credential was proven on data identical to the checker's copy — no trust in MIZAN or the submitter required. The verifier labels these submitter-committed, loudly, every run; canonical remains the tier where we vouch for provenance, and the public registry lists canonical credentials only. Want your market at the canonical tier instead? Any asset with a clean authoritative source is ~15–30 min to pin: request a dataset. And the honest boundary: dynamic universe selection (choosing which stocks to hold over time) and tick-level strategies aren't certifiable today — fixed cross-sectional panels are (the PIT-30 universe, test phase) — the coverage roadmap says what's next, and HFT is refused permanently.

05The quant's path: zero to credential

No sales call, no onboarding meeting; the whole flow is self-serve at studio.mizan.market.

Kick the tires first — no account needed
Run the preset strategy library through the live engine, or load the one-click examples in the Prove tab. You'll see real verdicts, real metrics, and honest FAILs in seconds — the minting engine itself, running in preview.
Sign in
Email + password or Google. The account exists so your mints, credentials, and track extensions have an owner — nothing else is collected.
Prepare your submission
Rules path: write your strategy in the spec editor — every field is documented in the spec reference.
Sealed path: export your model's decisions as the positions array (one per bar-move, bars − 1 long; the picker shows bar counts). The salts that blind your commitments are generated in your browser.
Choose your dataset, gate class, and disclosure
Every gate number is shown before you submit:
DIRECTIONAL-V1   Sharpe ≥ 1.20 · CAGR ≥ 20%/yr · OOS ≥ 0.50 · MaxDD ≤ 25% · worst bar ≥ −12% · ≥ 3 trades
MARKET-NEUTRAL-V1 Sharpe ≥ 1.50 · CAGR ≥ 5%/yr · OOS ≥ 0.75 · MaxDD ≤ 10% · worst bar ≥ −4% · ≥ 5 trades

Drawdown is marked against intrabar wicks — stricter than close-to-close — and a CAGR within 40 bp of the floor is refused (the drift margin is biased against false passes). Yes, CAGR depends on leverage: the gate judges the book as sized, drawdown and worst bar included, because that is the claim a credential makes. Disclosure is your call: full metrics, or PASS/FAIL-only.
Preview free, then mint
Every submission runs an instant preview first. If the gate refuses you, you're told exactly why: SharpeTooLow, DrawdownTooHigh, WorstBarTooLow — ten named reasons in all. It costs nothing and records nothing. Which is also why preview-shopping can't earn the green N badge: only a pre-registered ledger, committed before results exist, can. If it passes, the real STARK mints on the GPU prover — minutes to around an hour, with live progress; heavy books longer, and you're told up front.
What you walk away with
A credential bundle (219 KB STARK + public journal — yours to download and send to anyone), a permanent credential page, a printable tear sheet, and a place on the public registry (private mints stay off the wall). Anchoring to Bitcoin + RFC-3161 makes the date unarguable.
Bind your owner key
Generate an Ed25519 keypair on your machine — the private key never touches MIZAN — and bind the public key to your credential. From then on, authorship is provable to anyone in seconds: they pick a nonce, you sign it. First-write-locked: a bound key can never be silently replaced. keygen → bind-key in the CLI.
Extend it into a live track
A credential isn't frozen at mint. As new bars accrue, one click re-proves the same committed strategy over the strictly longer window, cryptographically chained to its parent. A backtest that keeps surviving new data, link by verifiable link, is the credential allocators weight most.
Or do all of it from code
Everything above is an HTTP API, and mizan-cli.py (one file, no dependencies) wraps the whole flow: login → preview → mint-sealed → watch → fetch → bind-key. Built for the engineer told "go mint us a credential."

06What it costs

Minting is free during the launch window, and a refused mint always costs nothing — you're never charged for a FAIL you didn't get to keep. Verifying is free forever, for everyone: charging to check would corrupt the one thing the standard exists to protect.

When paid tiers switch on: a flat credential fee ($6K/yr per active strategy; $25K/yr institutional tier with the full disclosing report), and you pay for the examination, not the outcome. The fee covers what's alive — chain extensions and registry presence. A minted credential itself verifies free, forever, paid or not.

07The allocator's path: link to conviction

A manager sends you a credential link. Here is the whole workflow — none of it on trust:

Read the tear sheet
One printable page per credential: identity and era, anchor state, the gate class with every parameter verbatim, committed performance, the statistical verdicts (DSR with its trial count labeled self-declared or pre-registered, PSR, SPA), and a boxed list of what the credential does not cover. On the registry, skip entries flagged sandbox — engineering mints, honestly labeled, not decision-grade supply.
Verify it — pick your level of paranoia
Browser: studio.mizan.market → Verify — client-side, no server, including the STARK seal itself.
Terminal: download the era verifier + canonical data at mizan.market/verify and run the one command printed on the tear sheet. Use the credential's own era — cross-era fails by design.
Reproduce: ~200 lines of dependency-free Python recompute every committed statistic to the digit — mizan.market/research/reproduce.
Check the five things that matter
① The engine era is a published one. ② The anchor predates what it claims to predate. ③ The gate class fits the mandate — a market-neutral book judged by the market-neutral bars. ④ The N tier — amber self-declared vs green pre-registered. ⑤ For live tracks, the chain: each extension strictly grows the window from the same commitment.
Make sure it's really theirs
The name on a credential is a label, not proof. When an owner key is bound, authorship is one challenge away: you pick a nonce, they sign it with the key bound at mint, you check the signature — via the API or offline with openssl. The binding is first-write-locked and the private key never touches MIZAN. No key bound? Fall back to the manual challenges: have them extend the track in front of you, or open one sealed commitment (a position + salt that re-hashes to the committed value). An imposter fails all of it. This proves control of the minting key — cryptographic authorship, not legal identity; KYC stays yours.
Then do the diligence the proof can't
Live execution and fills, capacity, operations, custody, counterparties. The tear sheet names this list explicitly — a credential is evidence for one specific claim, not a substitute for ODD.

08Why you can believe the referee

✓ The credential that fails its author

The reference credential on our wall is our own flagship strategy — and it reads NOT SIGNIFICANT at the 95% bar Marcos López de Prado defined. We shipped that failure and left it standing, next to more than forty of our own retracted strategies with the exact bug named on each. A verifier that only ever confirms good news is worth nothing; the credibility is in the refusal.

⚠ The full boundary map

Everything a credential does not do, in one place: no forecasts, no live-fill attestation, no capacity claims, no operations coverage; off-ledger trials invisible; one-shot seals prove immutability, not foresight; high-frequency strategies refused permanently, because bar data cannot honestly verify them. Every era carries a published status in the append-only era registry, and our findings — including against ourselves — are published. The complete map: The MIZAN Standard.

That is the whole machine. The fastest way to believe it is to run it.