CME proof ledger
Do the signals work yet?
Result measured, no control yetThis page is where Convexly proves, over time, whether its Coherence Signals turned into useful settled outcomes. Of 844 resolved signals, 425 have a PnL the model actually computed, leg by leg. Across those, realized net at prescribed size is -$403.0k, with 41.2% of them positive (175 of 425, 95% CI 36.6% to 45.9%). That is a loss, published as-is.
The other 419 are excluded because nothing about them was measured. Their emitted signals carried no per-leg trades, so the resolution model assumed both sides: a total loss of stake on the unfavourable ones, and the emitter's own modeled expectation on the favourable ones. Neither direction is a result, so neither is counted. The code no longer does this; the rows it already wrote are excluded here rather than rewritten.
Four limits on the figure above, all of which cut against reading it as a verdict.
- It is selected on data availability, on whether the emitter recorded a per-leg position, which is not known to be independent of outcome.
- The two cohorts are date-disjoint: every excluded signal was emitted between 2026-04-29 and 2026-05-12, every included one from 2026-05-13 onward. So this is one era of the pipeline, not a sample across its life.
- The included signals are not independent observations. They span 33 distinct markets across 425 signals, so the same event groups are re-emitted many times and any total built on them is pseudo-replicated.
- The pre-registered matched-control test (#294035) has not accumulated enough resolved pairs to say whether these signals beat a control, so nothing here separates the result from the market conditions it was earned in.
One finding the exclusion would otherwise have hidden, so it is stated here rather than deleted with the rows. Among the excluded baskets built on event groups typed mutually exclusive, 143 of 143 legs resolved the same way. Under mutual exclusivity at most one of them can. Those groups were therefore not mutually exclusive, which falsifies the classifier that typed them rather than the arithmetic that priced them. That is a methodology defect in the signal construction, and it is the more useful thing on this page than the dollar figure.
What is live
Emitted ledger
Every signal is versioned and hash-linked.
What is measured
-$403.0k
Realized net across 425 signals priced leg by leg. Negative, uncontrolled, and selected on data availability.
Next proof gate
Walk-forward
V0.2 is tracked under Manifest #288046.
Track-record caveat
Related-market consistency checks stay experimental until markets resolve. Positive realized-net rate, realized PnL, and matched controls govern any performance claim.
Evidence mechanics
Aggregate positive realized-net rate and cumulative gross + net PnL are public. Per-signal evidence, including resolved date, settlement direction, Z-score, and realized net PnL per row, is gated to Researcher.
Manifest #288046 tracks the V0.2 methodology. Each emitted row keeps its feed version, and /research/verify walks the SHA-256 chain that locks every row.
The resolution tracker runs daily at 12:00 UTC; this page refreshes within five minutes after new rows land.
Realized track record · last 90d
13.3% profitable(11 of 83 decided)
generated 2026-09-20
Emitted
2,090
signals
Resolved
83
4.0% of emitted
Pending
2,007
7 matured; awaiting settlement
Cumulative net PnL
-$144.5K
modeled, post-fees
Median time-to-resolution
—
across resolved signals
1. Emitted
ready2,090
Signals are written to the audit ledger with the methodology version and expected-resolution date.
2. Due soon
watch401
Inside the 14-day validation cohort or already past expected resolution.
3. Source settled
ready83
Only source-confirmed settlements move into realized PnL. Pending source markets do not count as wins or losses.
4. Claim permission
ready13.3%
Performance language stays gated until resolved rows create a denominator.
Lifecycle ledger
Emitted
2,090
written to signals_emitted
Pending
2,007
no source-confirmed outcome yet
Checkpointed
401
short-horizon validation cohort
Matured
7
past expected resolution
Resolved
83
source-confirmed rows
Evaluable
83
profit/loss denominator
Invalid/voided
0
excluded from profitability
Disputed
not wired
not separately wired yet
Stale
not wired
not separately wired yet
How it adds up: profitability rate counts resolved rows with positive net PnL; voided + ambiguous resolutions are excluded. A signal with zero PnL is treated as not-profitable (the trade was take + close at the same price). Net PnL is post-fee, post- slippage as modeled at signal-emit time.
Matched-control forward test: accrual state
A pre-registered forward comparison (AsPredicted #294035, external public receipt pending verification) replays each resolved signal against its 20 matched control markets. It is deliberately slow evidence: signals emit inside the 2026-06-01 to 2026-08-31 window with 119 to 212 day resolution horizons, and a pair counts only when the signal market and all 20 controls have resolved. Current status: Insufficient resolved matched pairs to test yet (a valid pre-registered outcome).
Resolved pairs
18 / 30
floor before any read
Daily inputs
90
hash-locked reports
Placebo replays
9
pipeline exercised
Last computed
2026-09-19
daily verdict cron
First pair resolutions become possible from late September 2026; the 30-pair floor realistically accumulates into 2027. An insufficient-sample state or a null result is a valid pre-registered outcome, published either way.
Emitted
6,290
cumulative ledger
Resolvable
6,144
146 excluded (partial)
Resolved
844
425 with a computable PnL
Positive, of computed
41.2%
175 of 425, 95% CI [36.6%, 45.9%]
Net PnL, computed rows
-$403.0k
over 425 signals priced leg by leg; gross -$388.8k. 419 assumed rows excluded, in both directions.
Resolution-quality denominator
6,144 of 6,290
146 partial-provenance rows excluded
Proof ladder
What has to happen before CME can make stronger claims.
This is the plain-English lifecycle from structural signal to performance evidence. If a step is blocked, the public claim stays conservative.
1. Emit
readySignals are written to the ledger
6,290 emitted
This proves the pipeline is producing versioned candidates. It does not prove those candidates made money.
2. Mature
collectingMarkets reach settlement windows
6,144 resolvable
Only full-provenance rows with enough settlement linkage can enter realized-performance math.
3. Resolve
readySource-confirmed outcomes land
425 resolved
This is the current proof bottleneck. Until rows resolve, modeled EV remains a review signal rather than a performance claim.
4. Compare
pendingMatched controls and failures publish
1/30 primary pairs
Convexly needs primary K=20 measured matched-control pairs, visible failures, and formal paired analysis before stronger public language is allowed.
5. Upgrade
blockedClaim language can improve only after evidence
6.9% resolved
The product graduates by published outcome and matched-control evidence, not by shipping a prettier dashboard or a higher modeled-EV number.
146 signals have partial provenance and are excluded from positive realized-net rate, resolved PnL, and any other resolution-quality metric on this page.
These rows were reconstructed from a sanitized public archive after the original private archive went uncommitted; their condition_id fields are NULL so the resolution-tracker cannot match them to Polymarket settlements. They count toward Emitted only. See the audit chain for the full provenance breakdown per row.
Per-signal evidence - Researcher tier
425 resolved signals on the ledger.
The aggregate view above is open: how many signals have fired, the positive realized-net rate, and cumulative net PnL establish the credibility loop. The per-row methodology evidence - resolved date, settlement direction, Z-score, net EV, realized net PnL - is exclusive to the Researcher tier so paying customers retain the methodology disclosure they pay for.
How this ledger is locked
- Append-only: the signal-emission ledger is service-role-only and append-only. Each row carries a SHA-256 input hash bound to the canonical-JSON serialization of the signal at emit time.
- Resolution-locked: signals_resolved is FK + PK against signals_emitted. The resolution-tracker cron writes one row per resolved signal with a SHA-256 resolution hash chaining the outcome to the original input hash.
- Methodology status: Each emitted row carries its own feed version. The V0.2 threshold + sizing + cost model + metrics were frozen ex-ante at git SHA 8616a63 per Manifest #288046.
- Verifiable: walk the chain in your browser at /research/verify.