Skip to content

Latest commit

 

History

History
87 lines (82 loc) · 6.95 KB

CONFORMANCE.md

File metadata and controls

87 lines (82 loc) · 6.95 KB

Conformance report

Generated by python -m vetted.conformance. Each library is called through its public API on the fixtures in src/vetted/data/fixtures.json; its output is matched against every named convention in vetted/metrics.py (relative tolerance 1e-07).

library metric status convention sign notes
empyrical-reloaded 0.5.12 calmar conformant cagr_over_mdd canonical all_positive: NaN (undefined here)
ffn 1.2.2 calmar conformant cagr_calendar_over_mdd canonical all_positive: NaN (undefined here)
quantstats 0.0.86 calmar conformant cagr_over_mdd canonical all_positive: ZeroDivisionError: float division by zero (undefined here)
empyrical-reloaded 0.5.12 es_95 conformant historical_below_interpolated_var canonical
quantstats 0.0.86 es_95 conformant gaussian_ddof1 canonical
riskfolio-lib 7.3.0 es_95 conformant rockafellar_uryasev flipped
skfolio 1.4.5 es_95 conformant rockafellar_uryasev flipped
quantstats 0.0.86 kurtosis conformant excess_sample canonical
skfolio 1.4.5 kurtosis conformant pearson_moment canonical
empyrical-reloaded 0.5.12 max_drawdown conformant geometric_initial_peak flipped
ffn 1.2.2 max_drawdown conformant geometric_initial_peak flipped
quantstats 0.0.86 max_drawdown conformant geometric_initial_peak flipped
riskfolio-lib 7.3.0 max_drawdown conformant geometric_initial_peak canonical
skfolio 1.4.5 max_drawdown conformant geometric_initial_peak canonical
empyrical-reloaded 0.5.12 omega_0 conformant simple canonical all_positive: NaN (undefined here)
quantstats 0.0.86 omega_0 conformant simple canonical all_positive: NaN (undefined here)
empyrical-reloaded 0.5.12 return_annual conformant geometric canonical
ffn 1.2.2 return_annual conformant geometric_calendar_365.25 canonical
quantstats 0.0.86 return_annual conformant geometric canonical
empyrical-reloaded 0.5.12 sharpe_annual conformant arithmetic_ddof1 canonical
ffn 1.2.2 sharpe_annual conformant arithmetic_ddof1 canonical
quantstats 0.0.86 sharpe_annual conformant arithmetic_ddof1 canonical
quantstats 0.0.86 skewness conformant adjusted_g1 canonical
skfolio 1.4.5 skewness conformant moment canonical
empyrical-reloaded 0.5.12 sortino_annual conformant full_ddof0 canonical all_positive: NaN (undefined here)
ffn 1.2.2 sortino_annual conformant full_ddof0 canonical all_positive: NaN (undefined here)
quantstats 0.0.86 sortino_annual conformant full_ddof0 canonical all_positive: NaN (undefined here)
quantstats 0.0.86 ulcer_index NO MATCH martin - bacon_monthly: nearest martin off by 2.15%; gaussian_neg_mean: nearest martin off by 0.03%; gaussian_pos_mean: nearest martin off by 0.03%; student_t3: nearest martin off by 0.03%; regime_switch: nearest martin off by 0.03%; left_skewed: nearest martin off by 0.03%; gaussian_n1260: nearest martin off by 0.04%; gaussian_n500: nearest martin off by 0.10%; tiny_sample_n7: nearest martin off by 8.01%
riskfolio-lib 7.3.0 ulcer_index conformant martin canonical
skfolio 1.4.5 ulcer_index conformant martin canonical
empyrical-reloaded 0.5.12 var_95 conformant historical_interpolated canonical
quantstats 0.0.86 var_95 conformant gaussian_ddof1 canonical
riskfolio-lib 7.3.0 var_95 conformant historical_order_statistic flipped
skfolio 1.4.5 var_95 conformant historical_order_statistic_upper flipped
empyrical-reloaded 0.5.12 volatility_annual conformant std_ddof1 canonical
quantstats 0.0.86 volatility_annual conformant std_ddof1 canonical

Invariance

12 NaNs inserted into gaussian_neg_mean (n = 1512); and the same series permuted.

library metric missing data permutation
empyrical-reloaded 0.5.12 calmar counts missing periods as elapsed time (0.803%; a convention) n/a
ffn 1.2.2 calmar counts missing periods as elapsed time (0.765%; a convention) n/a
quantstats 0.0.86 calmar drops NaN (value unchanged) n/a
empyrical-reloaded 0.5.12 es_95 CHANGES VALUE by 0.332% (missing data used as data) invariant
quantstats 0.0.86 es_95 drops NaN (value unchanged) invariant
riskfolio-lib 7.3.0 es_95 CHANGES VALUE by 0.200% (missing data used as data) invariant
skfolio 1.4.5 es_95 drops NaN (value unchanged) invariant
quantstats 0.0.86 kurtosis drops NaN (value unchanged) invariant
skfolio 1.4.5 kurtosis drops NaN (value unchanged) invariant
empyrical-reloaded 0.5.12 max_drawdown drops NaN (value unchanged) n/a
ffn 1.2.2 max_drawdown drops NaN (value unchanged) n/a
quantstats 0.0.86 max_drawdown drops NaN (value unchanged) n/a
riskfolio-lib 7.3.0 max_drawdown CHANGES VALUE by 78.476% (missing data used as data) n/a
skfolio 1.4.5 max_drawdown drops NaN (value unchanged) n/a
empyrical-reloaded 0.5.12 omega_0 drops NaN (value unchanged) invariant
quantstats 0.0.86 omega_0 drops NaN (value unchanged) invariant
empyrical-reloaded 0.5.12 return_annual counts missing periods as elapsed time (0.803%; a convention) n/a
ffn 1.2.2 return_annual counts missing periods as elapsed time (0.765%; a convention) n/a
quantstats 0.0.86 return_annual drops NaN (value unchanged) n/a
empyrical-reloaded 0.5.12 sharpe_annual drops NaN (value unchanged) invariant
ffn 1.2.2 sharpe_annual drops NaN (value unchanged) invariant
quantstats 0.0.86 sharpe_annual drops NaN (value unchanged) invariant
quantstats 0.0.86 skewness drops NaN (value unchanged) invariant
skfolio 1.4.5 skewness drops NaN (value unchanged) invariant
empyrical-reloaded 0.5.12 sortino_annual drops NaN (value unchanged) invariant
ffn 1.2.2 sortino_annual drops NaN (value unchanged) invariant
quantstats 0.0.86 sortino_annual drops NaN (value unchanged) invariant
quantstats 0.0.86 ulcer_index CHANGES VALUE by 0.081% (missing data used as data) n/a
riskfolio-lib 7.3.0 ulcer_index CHANGES VALUE by 94.190% (missing data used as data) n/a
skfolio 1.4.5 ulcer_index drops NaN (value unchanged) n/a
empyrical-reloaded 0.5.12 var_95 propagates NaN invariant
quantstats 0.0.86 var_95 drops NaN (value unchanged) invariant
riskfolio-lib 7.3.0 var_95 CHANGES VALUE by 0.460% (missing data used as data) invariant
skfolio 1.4.5 var_95 drops NaN (value unchanged) invariant
empyrical-reloaded 0.5.12 volatility_annual drops NaN (value unchanged) invariant
quantstats 0.0.86 volatility_annual drops NaN (value unchanged) invariant