Quant Memo
Core

The Minimum Viable Backtest

The smallest, fastest backtest that can honestly answer 'is this idea worth more research time,' and why building it before a full production-grade backtest saves far more time than it costs.

Prerequisites: Scoring Research Ideas Before You Build Them

A full production-grade backtest — one that models realistic transaction costs, market impact, borrowing constraints, point-in-time data availability, and a proper walk-forward validation scheme — can take a researcher days or weeks to build properly. Most candidate ideas don't deserve that investment, because most candidate ideas turn out, on a much cheaper first look, to not be worth pursuing at all. The minimum viable backtest is the smallest test that can honestly answer one narrow question: is there enough here to justify spending the days or weeks on the full version?

A minimum viable backtest deliberately cuts corners that a production backtest cannot, and the discipline is knowing exactly which corners are safe to cut for a first pass. It's fine to ignore transaction costs entirely at this stage, use a simplified universe (say, the 500 largest stocks rather than the full investable universe), skip a proper walk-forward split and just look at the whole history at once, and use whatever data is already sitting on hand rather than sourcing anything new. What it cannot cut is the one thing that would make the answer dishonest: it must still respect point-in-time data, meaning the signal at each date can only use information that was actually knowable on that date, not data that was later revised or restated. A backtest that accidentally uses restated fundamentals or survivorship-biased universes will produce a falsely encouraging result, defeating the entire purpose of doing a cheap test first.

The output of a minimum viable backtest is a rough, directional answer, not a number to size a strategy on. If a simple, uncosted version of an idea produces a long-run Sharpe ratio near zero on a broad universe over many years, that's usually enough to shelve the idea without further work — a real effect, even a modest one, should show up at least weakly even in a crude first pass. If the crude version shows a promising, statistically meaningful pattern, that result earns the idea a slot in the queue for a full, cost-aware, walk-forward-validated backtest, where the harder, more expensive questions about capacity, turnover, and net-of-cost returns get answered properly.

For example, a researcher hears about a possible earnings-drift pattern in small-cap stocks. Rather than immediately building a fully costed simulator, they spend an afternoon computing raw, uncosted returns to a simple long-short portfolio sorted on the signal across the last fifteen years of already-available data. The pattern shows up clearly and consistently across sub-periods — enough to justify the multi-week investment in a proper, transaction-cost-aware backtest with realistic capacity limits.

What this means in practice

The minimum viable backtest exists to protect research time, not to produce a final answer — treating its output as more than a rough directional filter, or skipping straight to sizing a real allocation off it, is a common and costly mistake. Its real value is in how quickly it lets a team say no to weak ideas, freeing up the far more expensive full-backtest capacity for the ideas that have actually cleared this first, cheap bar.

Build the cheapest possible test that still respects point-in-time data before spending days on a full costed backtest — its job is only to decide whether an idea deserves the expensive version, not to size a real allocation.

Related concepts

Further reading

  • Harvey, Liu and Zhu, '... and the Cross-Section of Expected Returns'
ShareTwitterLinkedIn