← Projects·Quantitative Researcher

Backtest Engine + Cost Model

A backtest engine with a realistic cost model: spread + slippage + impact. The interesting result is a signal that *wins gross* and *loses net* — the cost model is the judge of whether a high-frequency idea is deployable.

0.20
Sharpe (gross)
< 0
Sharpe (net, realistic)
loses after cost
~20 bps / RT
Break-even cost
Status
open-source

The hypothesis

If the backtest engine doesn’t model realistic costs, every high-frequency alpha is an illusion. The cost model is part of the strategy — not a footnote.

What the project does

  • Tiny event-driven backtest loop on a high-turnover signal.
  • Cost model: spread + slippage + linear-impact estimate.
  • Scans break-even turnaround cost — the cost level at which Sharpe net → 0.

The result

Net Sharpe vs cost-of-turnaround — high-turnover signal fails the test
Sharpe gross0.20Sharpe net-0.05Cost low (bps)5.00Cost break-even20.00Cost realistic40.00
Left pair: gross Sharpe 0.20 → net Sharpe −0.05 at realistic cost (~40 bps RT). Right triplet: break-even turnaround cost sits at ~20 bps — anything realistic wipes the edge. The cost model is the strategy. A signal that wins gross but loses net is not deployable.
  • Gross Sharpe: 0.20.
  • Realistic net Sharpe: < 0 — the signal loses after applying the cost model.
  • Break-even cost: ~20 bps per round trip.

What’s transferable

A cost-model-aware backtest engine is the gate between a research idea and a deployable strategy. The discipline — ship the break-even turnaround, not just the Sharpe — is the senior reporting standard.

Want to see this project in your stack?

Every project is runnable in one command. The scorecard is the contract.