Projects / ChronoFund

Point-in-time data engine

ChronoFund: Point-in-Time Fundamentals Engine

A backtest is only as honest as its data. ChronoFund dates every fundamental to the second the SEC accepted the filing, so a strategy can never see a number before the market could.

Key facts

4 layers
independent checks that enforce the as-of cutoff
65 tests
across cutoff logic, company-ID mapping, schema validation and parsers
10 req/s
rate-limited SEC ingestion with retries
0 fills
nothing forward-filled; delisted firms stay in the universe

How it works

  • Filings are gated on the SEC acceptance timestamp, not the filing date or the period end: a fiscal 2016 report filed in February 2017 is invisible on 31 December 2016.
  • Four independent layers (filing index, filing selection, fact selection, Bloomberg column gating) each enforce the cutoff; a violation raises an error at parse time instead of silently inflating a backtest months later.
  • Priority-ordered accounting-tag mapping for XBRL, typed Parquet tables for company master records, filings and statements, and Bloomberg PDF and XLSX parsers with period-end gating.
  • Survivorship-free by design: delisted firms are kept and nothing is forward-filled.

Built with

Python, SEC EDGAR, XBRL, Bloomberg exports, pandas, Parquet, pytest

What it does not show

  • It is a data layer, not a strategy. The Regime-Aware Factor Strategy is the first thing built on it.

Tanishk Yadav

MS Financial Engineering at New York University, graduating May 2027, and looking for full-time quantitative research roles. My master's thesis measures, in real time, when US debt dynamics turn self-reinforcing.

Related

Related work

Fundamental equity backtest

Regime-Aware Factor Strategy

A walk-forward regime-switching fundamental strategy on ChronoFund data, 2008 to 2026, net of 2/15 fees. Fama-French five-factor attribution reports alpha decay rather than hiding it: 8.37% (t = 2.73) in 2008 to 2017, fading to an insignificant 2.42% over the full period.

SSRN preprintOctober 2026

Too Big to Co-Move

Concentrated sectors co-move less with the rest of the market: a one-point rise in top-three share lowers monthly R² by 0.75 points (permutation p = 0.04), though concentration does not explain why markets disconnected.