{"charter":{"id":"PM-CHARTER-1","pillar":"personal","objective":"Find short-term, non-sports prediction-market questions where an independently researched probability beats the market price, and prove that on paper before any real money is considered.","thesis":"A model that only reads the price adds nothing. The edge has to come from information the crowd has not priced yet: fresh reporting and q08's own signal sources (Hacker News, GDELT and Wikipedia, the same sources as the research ledger behind q08 forecasts), read by several model families that never see the price. The literature says to expect no edge by default (a retrieval-augmented ensemble scored Brier 0.179 against 0.149 for the human crowd, Halawi et al. 2024), so every claim of an edge is measured here against the market price and against simply backing the market favourite.","mode":"paper","universe":{"sports":"excluded","quant":"excluded: price brackets and post counts have no news signal","horizon_days":14,"min_volume24":10000,"price_band":[0.05,0.95]},"method":{"evidence":["gdelt","hacker-news","wikipedia-search","wikipedia-current-events"],"optional_evidence":"q08-forecasts: q08's own open forecasts on the same entity, one labelled line each, off unless Q08_EVIDENCE is on, never counted toward the three pieces of evidence","ensemble_min_members":2,"max_spread":0.25,"min_gap":0.1,"price_hidden_from_model":true,"hold":"to resolution; early exit only on convergence to the estimate","recalibration":"logistic slope and shift learned from resolved first forecasts, ridge-pulled to the identity, bounded, applied after 50 resolved","blend":"weight on the model chosen by Brier score on resolved forecasts, default 0.5","sizing":"quarter Kelly on the blended probability, capped at the position limit","scoring":"the first forecast on each market, with lead time; log loss reported beside Brier","log":"append-only and hash-chained, public at /api/track-record","domains":"proof split by domain; a domain significantly worse than the price after 20 resolved forecasts is switched off for 14 days","max_market_spread":0.05,"paper":"/whitepaper"},"risk":{"start_cash":10000,"position_pct":0.05,"exposure_pct":0.3,"max_open":8,"slippage":0.01,"breaker_drawdown_pct":15},"graduation":{"min_days":30,"min_resolved_estimates":100,"min_resolved_trades":30,"max_drawdown_pct":20,"confidence":0.95,"frozen_sample":true,"rule":"on forecasts made under the current, frozen parameters only: the model (or model+market blend) beats the market price on Brier, shadow ROI after costs is above zero, and signal trades beat backing the market favourite, each with the 95% bootstrap interval clear of zero"},"live":{"enabled":false,"why":"Real orders need a wallet-signed key, an API key, funding and a jurisdiction and terms-of-service review: the owner's identity, accounts and money. This worker contains no live executor. When the graduation gate passes, the owner decision is requested as an IDENTITY-BOUND item whose default is to stay on paper."},"loops":["tick every 5 minutes: fetch, filter sports, settle estimates that resolved, estimate up to 2 new markets, trade clear gaps, exit on resolution or convergence","review on every tick: score resolved first forecasts, apply the drawdown/accuracy circuit breaker with an expiry, and tune within bounds (minimum gap 8-20 points, recalibration, blend weight, switching off a losing domain) at most weekly; every parameter change starts a new frozen evaluation sample and is logged in pt_decision with a rollback","publish: metric_registry values (including pm_chain_ok, the forecast-log integrity check) and the worker heartbeat in qnfo-audit, where the fleet's metric triggers file breaches as issues","graduation: evaluated continuously; never flips live by itself"]},"mode":"paper","control":{"min_edge":0.1,"paused_until":null,"paused_reason":null,"recal_a":1,"recal_b":0,"blend_w":0.5,"params_version":1,"version_started_at":"2026-11-09T07:05:26.240Z","last_tune_at":null,"domains_off":{},"chain_ok":true,"chain_checked_at":"2026-11-10T17:45:27.701Z","paused":false},"evaluation":{"n":2,"brier_model":0.22624999999999998,"brier_market":0.04712499999999999,"brier_blend":0.11478124999999997,"brier_gain":-0.17912499999999998,"brier_gain_ci":{"lo":-0.19527499999999995,"hi":-0.162975},"blend_gain":-0.06765624999999997,"blend_gain_ci":{"lo":-0.07098124999999997,"hi":-0.06433124999999998},"shadow_n":0,"shadow_roi":null,"shadow_roi_ci":null,"control_roi":null,"edge_over_control":null,"edge_over_control_ci":null,"by_confidence":{"low":{"n":2,"note":"fewer than 30 resolved forecasts"}}},"evaluation_frozen":{"n":2,"brier_model":0.22624999999999998,"brier_market":0.04712499999999999,"brier_blend":0.11478124999999997,"brier_gain":-0.17912499999999998,"brier_gain_ci":{"lo":-0.19527499999999995,"hi":-0.162975},"blend_gain":-0.06765624999999997,"blend_gain_ci":{"lo":-0.07098124999999997,"hi":-0.06433124999999998},"shadow_n":0,"shadow_roi":null,"shadow_roi_ci":null,"control_roi":null,"edge_over_control":null,"edge_over_control_ci":null},"graduation":{"ready":false,"reasons":["only 1.5 of 30 days of paper trading","2 of 100 resolved estimates","0 of 30 resolved qualifying trades","neither the model nor the model+market blend beats the market price on Brier with 95% confidence","shadow ROI after slippage is not above zero with 95% confidence","signal trades do not beat backing the market favourite with 95% confidence"],"mode":"paper","live_enabled":false},"context":{"days":1.5847397685185185,"frozen_days":1.4756606944444444,"max_drawdown_pct":10.928628213420502,"drawdown_pct":10.802892025120613,"min_edge":0.1,"last_equity":9443.883805092551},"estimates_pending":8,"by_domain":{"crypto":{"n":2,"brier_gain":-0.17912499999999998,"brier_gain_ci":{"lo":-0.19527499999999995,"hi":-0.162975}}},"probes":{"n":2,"sample_pct":20,"tolerance":{"sum":0.15,"date":0.2,"days_back":30},"inconsistent":0,"inconsistent_share":0,"lookahead":0,"lookahead_share":0},"arbitrage":{"note":"separate from the forecasting evaluation: baskets that buy every outcome of a mutually exclusive event, kept in their own paper ledger","min_return":0.01,"gaps_seen":0,"best_return":null,"baskets_open":0,"open_cost":0,"baskets_settled":0,"realised_pnl":0,"realised_return":null,"last_scan_at":"2026-11-10T18:10:27.252Z"},"log_loss":{"n":2,"model":0.6454920906577828,"market":0.21919434493824203},"lead_hours":{"n":2,"median":15.659235277777778},"params":{"version":1,"started_at":"2026-11-09T07:05:26.240Z","recal":{"a":1,"b":0},"blend_w":0.5,"min_edge":0.1,"domains_off":{},"last_tune_at":null},"track_record":{"count":81,"head_hash":"8e4818fc3ae9f39e875cf390b10d1b9a33910a30c81b9f69d525607534d6ab9f","chain_ok":true,"chain_checked_at":"2026-11-10T17:45:27.701Z"},"calibration":{"n":2,"brier_model":0.22624999999999998,"brier_market":0.04712499999999999,"buckets":[{"b":4,"n":1,"p":0.44999999999999996,"f":0},{"b":5,"n":1,"p":0.5,"f":0}]},"decisions":[]}