Skip to content

Remove next-day availability lookahead from public validation - #78

Merged
initial-d merged 3 commits into
mainfrom
codex/public-revalidation-20261017
Oct 18, 2026
Merged

initial-d merged 3 commits into
mainfrom
codex/public-revalidation-20261017

Conversation

@initial-d

Copy link
Copy Markdown
Owner

Summary

Both public validation scripts used the forward-label mask (t and t+1 observed) for portfolio selection and out-of-sample prediction. A stock halted tomorrow therefore disappeared from today's portfolio. This separates signal-date eligibility from historical label eligibility in both paths; training and trailing IC retain forward-label filtering, while selection and inference use today's mask.

A same-input synthetic replay shows the affected equal-weight position moving from zero to 1/12 on the day before the halt, with zero on the actual halt. Returns change in both directions; this is a causality fix, not performance evidence. New metadata records availability_protocol, and archived reports and README headline results link the protocol caveat.

Evidence and limitations

  • docs/audits/public-revalidation-20261017/ preserves the predeclared scope, environment and dependency freeze, exact commands, checksums, old-code assertion failures, and replay script/results.
  • The intended public A-share rerun was data-blocked: AkShare single-attempt probes for 600519 and 000001 both disconnected without data. The log and timestamps are preserved. No public-data result or proprietary-paper reproduction is claimed.
  • No raw market data is committed. Execution across halts/limits remains simplified; equal evaluation windows and real all-factor/MLP coverage need separate validation.

Validation

  • Both portfolio causality regressions fail on base ccdcf16 for the affected zero holding and pass after the fix.
  • Full suite: 143 passed.
  • Ruff on src/tests and the affected scripts: passed.
  • Synthetic CPU CLI demo: completed.
  • Same-input replay and generated synthetic report audit: passed.
  • Documentation links, evidence JSON, checksums, and git diff --check: passed.

Type: bug fix, tests, documentation. Solo contribution; no external messages or market data publication.

@initial-d
initial-d marked this pull request as ready for review October 17, 2026 03:24
@initial-d
initial-d merged commit a0b3349 into main Oct 18, 2026
3 checks passed
@initial-d
initial-d deleted the codex/public-revalidation-20261017 branch October 18, 2026 01:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant