Related projects and scope#
numeraire occupies a deliberately narrow niche, and it is most useful when that niche is clear.
This page states what the framework is, what it is not, and how it relates to the mature libraries
next to it. The intent is orientation, not competition: several of these are excellent tools that
numeraire complements or wraps rather than replaces.
What numeraire is#
A spine for empirical asset pricing: point-in-time data views, a walk-forward out-of-sample engine, capability-dispatched evaluators and statistical tests, a tidy result schema, and an open registry through which methods plug in as first-class extensions. Its purpose is to make backtesting, comparison, and replication reproducible and comparable across methods of very different internal form.
What numeraire is not#
Not a portfolio-optimization library. It does not implement constrained mean-variance optimizers, risk budgeting, or hierarchical allocation. When a constrained optimizer is needed, the
numeraire[skfolio]adapter wraps skfolio; the optimizers stay in skfolio.Not a trading or execution system. There is no order routing, no live market connectivity, no broker integration. The accounting simulator turns a target-weight stream into realised net returns under explicit cost conventions — an evaluation tool, not an execution engine.
Not a data warehouse. The spine ships only tiny public example slices; data acquisition and cleaning live in the separate
numeraire-datasetpackage as transparent ETL (see The ecosystem).Not a general econometrics package. It does not aim to cover the breadth of statistical models that statsmodels or linearmodels do; it reuses that machinery where it needs it.
How it relates to neighbouring libraries#
- statsmodels / linearmodels
The estimation and inference layer for regression, panel, IV, and system models.
numerairecomplements them: it supplies the point-in-time discipline, the out-of-sample protocol, and the reproduction harness around a method, and reuses established estimators and tests rather than re-deriving them. Their econometric depth andnumeraire’s backtesting spine are orthogonal.- skfolio
A scikit-learn-compatible portfolio-optimization and risk-management library. It answers “given expected returns and risk, what is the optimal portfolio?”;
numeraireanswers “how does a method perform out of sample, and does it reproduce a published result?”. They compose — the adapter runs an skfolio optimizer as ato_weightsmethod inside the walk-forward engine.- qlib / zipline
Full quantitative-investment or event-driven backtesting platforms with data pipelines, model training, and execution modelling.
numeraireis smaller and more academic in scope: a representation-agnostic spine for method comparison and replication, not an end-to-end alpha-to-execution platform.- scikit-learn
The estimator/conformance idiom is a direct influence —
fit, duck-typed protocols, and acheck_estimator-style conformance suite.numeraireadapts it to the point-in-time, walk-forward setting that time-ordered financial data requires, where a plain cross-validation split would leak.
When to reach for numeraire#
Reach for it when you want to compare methods of different internal form on the same footing,
reproduce a paper’s headline within a tolerance band, or run a backtest whose out-of-sample
discipline and data provenance are structural rather than a matter of author care. For pure
in-sample estimation, portfolio optimization, or production execution, one of the libraries above is
the better fit — often used through numeraire rather than instead of it.