← Charlie Yan

tickq

2026 — Python · DuckDB · Parquet

Repository ↗

Execution is DuckDB, unchanged. tickq adds what a desk needs on top: a partitioned Parquet lake with an ingest manifest, market-data macros (VWAP, prevailing mid, session buckets, rolling statistics), nine quality checks, nine named desk queries whose pitfalls are stated next to their answers, and a bridge to tcakit.

The value is the tested contracts, not the engine.

The one rule

Every join key and every NULL rule is stated and tested, and nothing is repaired silently. A crossed quote is dropped and counted in the ledger. A duplicated quote instant is flagged. A NULL size is never coerced to zero.

The quality checks are held to the same standard as everything else: their recall and precision are measured on seeded defects, so “the check passed” means something specific.

Run it

120 tests, identities exact, oracles cited in the docstrings. tickq synth produces LOBSTER, CSV and Polygon layouts plus a seeded copy; tickq qc exits 1 when an error- or warn-severity check flags a row; tickq explain shows the scan plan for any named query.