← Work

Sole author · 2026

FilingEdge

A machine-learning research system that tests whether SEC filings predict abnormal returns, using only data available at filing time.

  • Python
  • DuckDB
  • LightGBM
  • SEC EDGAR
  • Streamlit

System

  1. SEC, FRED, prices
  2. DuckDB
  3. Purged CV
  4. LogReg + LightGBM
  5. Streamlit

Problem

Financial ML models often look good because of leakage: labels that overlap the training window, fundamentals that were revised later, or macro data published after the date being tested. FilingEdge asks one question using only data that was public when a 10-Q or 10-K was accepted: is the stock’s 20-day sector-adjusted return unusual?

What I built

  • Ingestion of SEC submissions, XBRL financial data, FRED macro series, and daily prices into DuckDB. A synthetic dataset lets the whole system run without API keys.
  • Purged, embargoed walk-forward cross-validation, and pytest checks for leakage: feature and label separation, as-of dates, and label windows.
  • A logistic-regression baseline, then LightGBM with isotonic calibration, and an event backtest that includes transaction costs.
  • A Streamlit dashboard with an event monitor, company view, backtest lab, and model card.

Results

point-in-time features
34
leakage and cost checks
pytest

Limits

The dashboard numbers on the synthetic demo data are much larger than real results. On real data the signal is much weaker.

Related