On this page

Research Methodology

Principle

Research exists to produce falsifiable evidence. A candidate that cannot be falsified (no OOS, no replay parity, no provenance) is not a candidate — it is an opinion, and opinions do not touch the live path.

The pipeline

Full detail in Research Stack. Stages:

DATA → FEATURES → LABELING → TRAINING → BACKTEST → WALK-FORWARD → OOS GATE → ROBUSTNESS → COUNTERFACTUAL → REGISTRY → SHADOW → OPERATOR PROMOTION.

Every stage writes provenance (dataset ID, schema hash, git commit, effective purge/embargo) into run snapshots. NOT_RECORDED is written when truthfully unknown — never backfilled.

Evidence grading

Claims are graded CODE / TEST / INTEGRATION / LIVE / RELEASE VERIFIED. Documentation and reports must carry the grade, not just the claim. A "LIVE VERIFIED" claim means the behavior was observed on a running engine against a real broker feed — the strongest grade there is.

Research over moving implementations is forbidden

A repository rule born from a real failure (taskboard, 2026-08-19): analysis is blocked when the implementation under study is mid-change. Freeze first, measure second. Measuring a moving target produces numbers that belong to no version of the code.

Datasets

See Datasets. Canonical tick datasets are fingerprinted and immutable; bar datasets carry quality gates. Tick acquisition goes through the certified adapter surface (copy_ticks_range, COPY_TICKS_ALL), deduped and bounded, offline after acquisition.

Where results go

  • Candidate registry (content-addressed)
  • Forensics evidence vault (artifacts/forensics/, artifacts/validation/)
  • Taskboard + decision records
  • Public honest reporting in Project Status

What the methodology has actually produced

  • A rejected flagship: the 70D candidate failed OOS on real data — the

gates bite, and the rejection is published.

  • A validated filter: counterfactual walking of 2095 NO_TRADE decisions

showed the confidence gate filtered trades with mean R −0.506 (a valid filter), while flagging a SUPPORT-margin stratum (+1.35 mean R) for policy review — evidence that changed what the next question is.

  • Purge/embargo defaults silently disabled in the production research path

were found (BUG-183) and fixed with regression tests, and the effective values are now recorded in every run.

That is the methodology working: sometimes the result is "no", and "no" is a result.