factor_agent.evaluator.Metrics#

class Metrics(ic_mean, ic_t, partial_ic_mean, partial_ic_t, nearest, nearest_correlation, nearest_known, nearest_known_correlation, decile_returns, coverage, n_days, start, end, pool_share=nan, overlaps=(), daily=None)[source]#

Bases: object

A candidate’s training-segment statistics; see the module docstring.

nearest names the pool factor most correlated with the candidate (empty, with a NaN correlation, when the pool is empty) and nearest_correlation is that mean correlation, with its sign. nearest_known and nearest_known_correlation are the same for the known factors, on the sampled dates only (empty and NaN without known factors). pool_share is the mean daily share of the candidate’s cross-sectional variance (of its normal scores) the pool explains, the part the partial IC leaves out (0 with an empty pool), and overlaps the pool factors most correlated with it, (name, correlation), the largest in absolute value first, at most OVERLAPS. decile_returns holds the mean label of each decile, lowest candidate values first. coverage is the mean daily share of the scored members with a value before any fill. daily holds the daily series the means and t come from; the ledger leaves it out.

Methods#

Metrics.to_dict

Return the metrics as the ledger stores them, without the daily series.

Attributes#

Metrics.daily = None#
Metrics.overlaps = ()#
Metrics.pool_share = nan#
Metrics.ic_mean#
Metrics.ic_t#
Metrics.partial_ic_mean#
Metrics.partial_ic_t#
Metrics.nearest#
Metrics.nearest_correlation#
Metrics.nearest_known#
Metrics.nearest_known_correlation#
Metrics.decile_returns#
Metrics.coverage#
Metrics.n_days#
Metrics.start#
Metrics.end#