Quantor

Strategy performance

How we publish performance — and what you should and shouldn't read into it. Last reviewed: 2026-09-02.

⚠️ Correction to the signed June 2026 snapshot — issued 2026-08-28

The published June 2026 snapshot reports a month total of −$6.03. Two of that month’s 137 closes were booked at prices the real market never printed — 54,852.76 and 58,891.15, against a real Binance BTCUSDT low of 58,115.01 across the whole of May and June 2026 — the result of a bad tick on our market-data feed. They account for −$8.27 of the reported loss. Corrected, June is +$2.25, not −$6.03. It was not a losing month.

The signed artifact is not being re-signed or replaced. The bytes published on 2026-07-02 are the bytes that were signed and the signature still verifies; nothing has been edited. That is the point of an append-only signed record — including when the correction would flatter us. A signature proves a record was not altered after publication. It does not prove the record was computed from sound data, and this is the first time that distinction has cost us something.

The underlying defect was fixed on 2026-06-16 and 2026-06-18 and both guards are deployed. July and August 2026 are unaffected: every fill in those months sits within 0.5% of the real market. Full method, figures and the limits of this correction are published in the repository as docs/performance-june-2026-correction-2026-08-28.md.

Second correction, 2026-09-02 — the sentence above, "It was not a losing month," is withdrawn. A measurement audit found that 102 of the same 137 June closes were booked gross: the 0.10% taker fee this page promises was never charged on them — $10.20 of fee the signed figure never paid (fee booking begins 2026-06-14; June mostly predates it). Restated on this page's own declared methodology, from the committed ledger pull: −$6.03 signed, +$8.27 bad-tick removal, −$10.10 unbooked fee net of the removed trips’ own — under the fee methodology this page declares, June 2026 restates to −$7.85: a losing month. To keep the three figures distinct: the signed artifact remains −$6.03 as published; the bad-tick-only, as-booked correction was +$2.25; the fee-consistent restatement is −$7.85 — and the page-declared methodology is the standard this project holds itself to. The first correction fixed the data defect and introduced a new overstatement in the same sentence; both now stand here, dated, because the record of being wrong is part of the record.

🎯 Public commitment

Monthly PAPER-portfolio snapshots per production strategy, signed with a dedicated Ed25519 key — verifiable the same flow as the build attestation on /security.

The runner bots are collecting data now. The first finalised month publishes here once it closes — no preview, no estimate.

Why this page exists

Selling discipline without showing data is asking for trust. This page commits, in public, to what we publish, when, and how to verify it.

What gets measured

The production strategies — EMA Cross, Breakout V1, TS Momentum V1, Quantor Adaptive Pro — each runs a PAPER portfolio on Binance market data. Correction, 2026-09-02: this sentence used to say "live market data". The worker's candles and paper fills actually come from the Binance spot testnet feed — the same market at retail scale (sampled deviation vs mainnet: worst fill 0.12%, most within 0.01%), but not the mainnet tape, and one June bad tick came from exactly this feed (see the June restatement below). A mainnet-data switch exists in the code and ships disabled; if it is ever enabled, the date will appear in the changelog below. (See the changelog for which runners are currently active):

What's in a snapshot

Single signed JSON, one row per strategy:

Snapshot JSON includes the period start/end ISO timestamps and the strategy rows listed above, and each snapshot is Ed25519-signed. Correction, 2026-09-02: this paragraph previously claimed the snapshot also contains the SHA-256 of the strategy source file and the build commit SHA. Neither field exists in the artifact, and the claim is withdrawn — what the signature proves is that the published bytes were not altered after signing, nothing more. Nothing in a snapshot is editable after publication — overwriting a past month breaks the signature and is visible on inspection.

Schedule

Monthly

1st of each month: signed JSON for the previous calendar month.

Quarterly

Jan / Apr / Jul / Oct: 90-day roll-up with regime breakdown (CALM / VOLATILE / DANGEROUS).

Annual

Once per year: written commentary on what worked + what didn't, signed alongside the data.

Methodology changelog

Every change to how the runner bots are configured is dated here — a mid-track change is never silent. The signed snapshots are dated and tamper-evident, so you can always check what ran when.

2026-09-14 — a sentence inside the signed snapshot said the wrong source; corrected going forward

Snapshots carry an openPositions disclosure with two counts and a note explaining them. The note said “Counts derive from the trade_events ledger” and covered both. That was true of openTradeGroups and false of dustParked, which is read from the bot decision log — an operational table pruned after 30 days. So a signed artifact attributed one of its numbers to the permanent ledger when it actually came from a log that gets deleted, which made the claim wrong and, after a month, impossible to check either way.

Nothing about the money moved. Every realized-PnL figure in every snapshot has always come from the trade_events ledger, whose rows are individually signed and never pruned. The error was in a sentence describing a disclosure counter, not in a number.

From today the note names each count's own source and states plainly that dustParked is a point-in-time observation which a later recomputation will not reproduce. Past months are not rewritten. Their bytes and their signatures stand as published, with the inaccurate sentence in them — which is what an immutable record means. This entry is the correction.

2026-06-18 — Adaptive Pro (BTC) retired; TS Momentum (SOL) M5 paused

A fresh out-of-sample walk-forward review (6 strategies × 11 major pairs × 2 timeframes × 2 cost levels = 264 walk-forwards, after fees + slippage) found no strategy with a credible edge over buy-and-hold — and Quantor Adaptive Pro was the worst live performer. We paused the Adaptive Pro (BTC) runner rather than keep paying its noise-loss. Its prior signed decisions stay in the dated snapshots — nothing is deleted or back-edited.

We also paused TS Momentum (SOL) on M5: at the minute timeframe it over-trades into the ~0.3% round-trip cost floor — death by a thousand cuts. The runner slate going forward is EMA Cross (BTC, H1) and Breakout V1 (BTC, H1).

Why we're telling you this: quietly retiring a loser to flatter a track record is exactly the cherry-picking this page exists to prevent. So it's dated here, the history is retained, and the snapshots stay tamper-evident. We don't promise profit; we prove what happened.

2026-06-09 — Timeframe corrections: EMA Cross & Adaptive Pro (M1 → H1), Breakout V1 (M5 → H1)

Two of the four runner strategies (EMA Cross, Quantor Adaptive Pro) were running on the 1-minute timeframe. On M1, round-trip fees + slippage (~0.3%) dominate the signal, and these strategies' default parameters — tuned for 1h/4h — bleed against minute-bar noise. We moved both to their designed H1 timeframe on 2026-06-09.

In the same pass we also moved Breakout V1 (BTC) from M5 to H1. On M5 it was over-trading — roughly 28 round trips a day, chasing false breakouts on BTC's intraday chop and paying the spread each time (it was, frankly, the worst performer of the four). H1 makes it a fair test of real breakouts instead of noise. Only TS Momentum (SOL) stays on M5.

These were misconfiguration corrections, not parameter re-tunes, so the old timeframes were switched off rather than run in parallel — keeping a known-misconfigured bot live would only pile up more avoidable noise-loss.

Effect on the signed snapshots: the June 2026 month therefore spans both periods — M1 (Jun 1–9) and H1 (Jun 9 onward) — so read June as a transition month, not a clean baseline. July 2026 is the first clean full-month H1 snapshot. We'd rather show you the messy honest month with this note than quietly restart the track on a convenient date.

⏳ What you'll see here until the first snapshot publishes

No backtest charts, no cherry-picked windows. Until the first calendar month finishes, the only honest answer is «data is being collected — check back when it closes». When the first snapshot lands, the JSON URL + verify command appear above.

How to verify the signed snapshot

curl -sS https://quantorsaas.app/api/v1/public/performance/latest.json > snap.json
curl -sS https://quantorsaas.app/api/v1/public/performance/latest.sig  > snap.sig.b64
curl -sS https://quantorsaas.app/.well-known/quantor-perf-pubkey       > key.pem
base64 -d snap.sig.b64 > snap.sig 2>/dev/null || base64 -D snap.sig.b64 > snap.sig   # (-D on macOS)
openssl pkeyutl -verify -pubin -inkey key.pem -rawin -in snap.json -sigfile snap.sig
# Expected: "Signature Verified Successfully"
# Check you got the real key — its SHA-256 fingerprint (never changes):
openssl pkey -pubin -in key.pem -outform DER | openssl dgst -sha256
# → 3ea917ace8401383af503f27bed9205195b56f21df89af21bd44a94aec5a25e5
# A specific finalized month: swap latest.json / latest.sig for
#   snapshots/YYYY-MM.json  and  snapshots/YYYY-MM.sig

Public-key SHA-256 fingerprint 3ea917ac…5a25e5 (full value in the recipe above and on /security) never changes during the project's lifetime; any rotation is announced ≥30 days in advance with cross-over verification. The ed25519-perf:… string shown with each snapshot is our internal signing-key id — an operational label, not something you can recompute from the public key; the fingerprint above is the one you verify.

What this page does NOT promise

Quantor is built on discipline, transparency, and risk controls — not the idea that we beat the market. If a strategy loses money over a year, the snapshot shows it losing money. Surprised customers cancel.

We believe customers who get a fair picture of what they're buying — wins, losses, drawdowns and all — are the only customers we want long-term. Surprised customers cancel.

Quantor open beta — free PAPER trading on exchange market data with Telegram control

Open beta — free

Quantor is in open beta. Create a free account and run a PAPER bot on exchange market data today — real-money LIVE trading isn't enabled yet (we'll tell you well before it opens). No application, no waitlist.

All strategies are free during the open beta. No data resale, no mailing list.

Start free → Watch it trade live →

Replies read personally. Questions → bugs@quantorsaas.app.