Now

What I am building

This is not a portfolio. Finished work lives in Code; this page is what is half-built, with the problem I have not solved yet. If any of it sounds interesting, that is the best reason to talk.

Last reviewed:

// 01

ticker-reference-data ↗

Market data

US equity reference data rebuilt daily: which ticker used to be called something else, which one reverse-split, and every trading halt since 2019. The boring layer that quietly ruins backtests when it is wrong.

▸ Working
  • 69,256 halts reconciled across NYSE, Nasdaq and Cboe — one event per row, with the feeds that saw it
  • Daily date-tagged releases: a backtest can pin the exact snapshot it used
  • Renames resolved by CIK and splits the sources missed
▸ Unsolved
  • Halts that never resume. The feeds keep returning the open ones — some names have been halted since 2023 — and every run re-routes them to their year. It works, but the model bothers me: an event with no close is not the same thing as a closed one, and today they live in the same table.
  • Retroactive corrections leave no trace. If a source fixes a 2021 event, the 2021 CSV changes with no record of what changed or when. For a dataset used in backtests that is serious: two runs of the same test may not be comparable and there is no way to tell.
Who would help: Anyone who has actually fought with point-in-time data — dataset versioning, bitemporality, or reconstructing historical state.
// 02

Backtest ↔ execution reconciliation

Research

The backtest says the strategy does X. Live execution did Y. This project is the bridge: matching decision by decision what the system chose against what actually happened, and explaining every difference.

▸ Working
  • Signal-level matching between simulated and executed, over a date range
  • Detection of signals that exist on one side and not the other
▸ Unsolved
  • Attributing the delta. When the real result differs from the simulated one, the gap splits between slippage, timing, borrow costs and decisions the system never took — and I have no rigorous way to assign how much belongs to each. Without that, "the backtest was optimistic" is a sentence, not a diagnosis.
  • Making the output actionable. Detecting drift is the easy part. The hard part is a conclusion that tells you what to fix: the model, the cost assumptions, or the execution.
Who would help: Anyone who has done serious walk-forward work, or comes from institutional transaction cost analysis.
// 03

sekd ↗

Tooling · Go

Small-cap due diligence from the terminal: it reads SEC filings, tracks shares outstanding over time and builds a dilution risk score from ATMs, shelfs, warrants and convertibles.

▸ Working
  • Dilution score with automatic flags: recent ATM, low float, in-the-money warrants, shelf capacity
  • Deep filing extraction via LLM with aggressive caching, so repeat lookups are free
  • A watchlist that re-scans and tells you what changed since last time
▸ Unsolved
  • When a source changes underneath, the score lies silently. EDGAR changes formats and part of the data comes from scraping. Today, if a source starts returning something different, the result still comes out looking equally confident. The tool needs to tell "no dilution" apart from "I could not read it".
  • LLM extraction is not reproducible. Deep mode pulls warrants, ATMs and convertibles out of filing text with a model, and two runs can differ on edge cases. For a number used to make a trade, that needs cross-verification or a confidence interval, not a bare answer.
Who would help: Go people, or anyone who parses regulatory documents. Also useful: anyone who has built LLM pipelines where the output has to be auditable.
// 04

quant-llm-skills ↗

Research · LLM

Ten skills that teach an LLM the quant research traps nobody documents: that <code>period_end</code> is not a publication date, that a shelf is capacity and not an event, that summing 13D cover pages overstates insider ownership by 2–10x.

▸ Working
  • An eval suite that measures the real delta: 8 to 9 of 11 cases change the output on smaller models
  • Skills compose on their own — asking for a dilution score triggers the ATM, bank-tier and lookahead ones
  • Covers everything from lookahead bias to real borrow costs on Reg-SHO names
▸ Unsolved
  • Knowing whether the model applied the rule or only appeared to. The evals measure that the output changes, which is not the same as guaranteeing the rule was used. For research where a silent lookahead ruins a backtest, you need a way to audit the reasoning, not just diff the final answer.
  • They are distilled from a very specific domain. The rules come from trading US small caps with SEC filings. How much survives in another market or under another regulator, I do not know yet — and generalizing without diluting the precision is the interesting problem.
Who would help: Anyone working on LLM evals or interpretability, and anyone doing quant research outside US equities who can say which rules break.

Any of these sound interesting?

I am not looking for clients and I am not selling hours — I have a full-time job I like. These are my own projects, and I would rather build them with people than alone. If something here made you think "I would solve that differently", write to me.