← Finio home

FINIO v0.3 / BETA

One forecast.
Many financial questions.

Explore the chances, understand the uncertainty, and inspect the evidence. Every additional question reuses your saved forecast.

v0.1 historical model and original API ↗

Start with an asset.

Use a ticker such as NVDA or AAPL. Each successful forecast and answer is saved publicly. Market inputs use completed daily closes, not real-time prices. Data & limitations ↗

Advanced research input

Optional: use your own authorized adjusted daily closes. Imported history stays in this browser. Local research forecasts are not persisted or prospective evidence.

No file selected. Live forecasting will use the configured market feed.

Input format and model details
{"asset":"NVDA","benchmark":"SPY","rows":[
  {"date":"YYYY-MM-DD","asset":100,"benchmark":500}
]}

Supply 61–1260 aligned, ascending, unique completed-session closes with consistent adjustments. The learned distribution generates 512 paired asset/SPY scenarios from market state, with a calibrated shared scale and a statistical mixture component. All displayed scenarios have equal sampling weight. Learned weights are frozen. No training occurs when you ask a question. Probabilities have a resolution of 1/512 (about 0.2 percentage points). Drawdowns use daily closes, not intraday lows.

Choose an asset to generate a forecast.

v0.3 is a learned probabilistic forecasting model. Status is based on the published holdout benchmark. Probabilities are estimates, not guarantees.

v0.3 / Beta

Measured probabilities.

conditional-two-scale-joint-gaussian-statistical-mixture. Shared learned market state produces one joint asset/SPY scenario distribution for many supported questions.

Performance

Untouched final holdout: 1148 forecasts, 9184 event decisions. 2026-07-01 through 2026-10-29. Primary task: positive return after 5 trading sessions. Lower Brier and log loss are better.

Model / same final rowsBrierLog lossCalibration errorAccuracy
v0.3 learned distribution0.246780.686660.026100.55575
constant0.249850.692840.014590.51916
momentum0.250560.694280.012240.51916
logistic_regression0.261240.715950.103890.44425
v0.2 statistical scenarios0.249660.692580.031530.53136

Primary winner by Brier: v0.3. Release status: Beta. Status also requires pooled-event improvement and a conservative uncertainty gate. Pooled v0.3 Brier 0.22121; pooled v0.2 Brier 0.22181. No overall predictive edge is established.

Version comparison
VersionArchitectureComparable result
v0.1Historical classifierNot measured head-to-head: archived v0.1 metrics use different rows and training coverage. Original records and evidence retained.
v0.2Statistical scenario modelRecomputed on the same final rows above; archived results preserved
v0.3Learned probabilistic modelBeta

Calibration

If Finio says 60%, how often does the event happen? These are unsmoothed final-holdout bins for the primary 5-session event. Counts share market dates and are not independent trials.

Predicted rangeMean predictedObserved frequencyN
0.0 - 0.1No observationsNo observations0
0.1 - 0.2No observationsNo observations0
0.2 - 0.3No observationsNo observations0
0.3 - 0.4No observationsNo observations0
0.4 - 0.50.487530.35000120
0.5 - 0.60.543040.533401003
0.6 - 0.70.608440.7600025
0.7 - 0.8No observationsNo observations0
0.8 - 0.9No observationsNo observations0
0.9 - 1.0No observationsNo observations0

Calibration method: single shared trajectory scale selected by pooled Brier on separate calibration period; coherent scenario distribution. Selected scale: 1. Calibration data never enter final-test fitting.

Generalization

2 rolling-origin folds, 20160 event decisions. 33 entire symbols reserved from fitting, validation selection and calibration. Unseen primary Brier: 0.25174. Pooled unseen Brier: 0.22516.

Market state / all final eventsNBrier
market-drawdown0Not measured
rising-volatility44720.21951
other47120.22283

Efficiency

Local production-engine forecast median 1.55 ms, p95 4.56 ms. Additional query median 0.069 ms, p95 0.374 ms. 65 learned coefficients; 2864 artifact bytes. Network and D1 costs excluded; Cloudflare latency is not measured.

Prospective evidence

Production issued, resolved and pending totals are unavailable: no audited live ledger count endpoint or export is available here. The model card records a development snapshot as of 2026-11-01T12:41:22.115Z: No real v0.3 predictions issued by this task. Test fixtures excluded; production not queried. Those snapshot counts are not current production totals. Predictions and later resolutions append to the existing immutable D1 ledger using v0.3 IDs. No automatic retraining.

Data provenance

Existing local equity histories and an actual SPY chart cache. Training, evaluation, commercial use and redistribution rights: UNVERIFIED. Live Polygon access does not establish rights. Current-survivor selection and historical adjustments limit interpretation.

Technical methodology and limitations

Training assets: 254; windows: 8191; origin start 2022-11-01; final training target 2025-06-30. joint 20-session trajectory negative log likelihood plus L2 0.01; constants omitted. Inputs use returns, volatility, relative returns, beta, correlation and drawdown, without ticker embeddings. Normalizers use training only. Entire 20-session targets end before each split boundary. Validation chooses one of three compact candidates; separate calibration chooses one shared distribution scale; the selected artifact is frozen before final scoring.

512 equally weighted Monte Carlo draws from the combined joint distribution. Event probability is satisfying scenarios divided by 512. This is a sampling approximation, not an exact continuous-distribution probability. Daily-close drawdown and terminal returns have distinct meanings.

CandidateValidation BrierSelected
conditional-joint-gaussian0.21986No
conditional-two-scale-joint-gaussian0.21096No
conditional-two-scale-joint-gaussian-statistical-mixture0.20833Yes
  • Research Beta unless conservative primary and pooled baseline gates pass. No external comprehensive model comparison.
  • Current-survivor universe, revised adjusted prices and unverified data rights limit historical validity. Not a point-in-time investable backtest.
  • Training cache includes dividend adjustments; live feed is split-adjusted only.
  • Independent Gaussian innovations conditional on origin state; learned scale mixture if selected. No explicit intraday dynamics or volatility clustering within a component.
  • Daily-close drawdown only. Return queries use horizon end, not first-touch prices.
  • No OHLC/volume, fundamentals or sector inputs in this close-only production-compatible schema.
  • Monte Carlo error and market non-stationarity remain; calibration is historical and does not guarantee future reliability.
  • Few shared final market dates and cross-asset dependence limit confidence.
  • Walk-forward models refit only on each fold past; scale calibration not reused from future periods.
  • Existing D1 binding and market-data secret are required for manual production upload. v0.3 uses a separate kind namespace in the existing immutable table; no database migration required.

Model SHA-256: 50c304aa72c2fa8c84a6e5d2eee8e91d5cc0b6f8102398a373d7da59d0bdf2d4

Canonical model card · Scored final rows · Split audit · Frozen weights