src/stable_yield_lab/__init__.py |
(no function) |
17 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/__init__.py |
(no function) |
2 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/attribution.py |
_ensure_datetime_index |
6 |
2 |
0 |
4 |
2 |
60% |
src/stable_yield_lab/analytics/attribution.py |
_infer_periods_per_year |
8 |
8 |
0 |
4 |
0 |
0% |
src/stable_yield_lab/analytics/attribution.py |
_prepare_weight_schedule |
19 |
5 |
0 |
10 |
5 |
66% |
src/stable_yield_lab/analytics/attribution.py |
compute_attribution |
83 |
13 |
0 |
24 |
8 |
79% |
src/stable_yield_lab/analytics/attribution.py |
load_weight_schedule |
8 |
8 |
0 |
4 |
0 |
0% |
src/stable_yield_lab/analytics/attribution.py |
(no function) |
16 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/metrics.py |
_coerce_float |
4 |
2 |
0 |
0 |
0 |
50% |
src/stable_yield_lab/analytics/metrics.py |
weighted_mean |
22 |
2 |
0 |
12 |
2 |
88% |
src/stable_yield_lab/analytics/metrics.py |
net_apy |
14 |
2 |
0 |
6 |
2 |
80% |
src/stable_yield_lab/analytics/metrics.py |
add_net_apy_column |
5 |
1 |
0 |
2 |
1 |
71% |
src/stable_yield_lab/analytics/metrics.py |
hhi |
16 |
3 |
0 |
8 |
1 |
75% |
src/stable_yield_lab/analytics/metrics.py |
hhi._group_hhi |
6 |
0 |
0 |
2 |
0 |
100% |
src/stable_yield_lab/analytics/metrics.py |
Metrics.weighted_mean |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/metrics.py |
Metrics.portfolio_apr |
7 |
7 |
0 |
4 |
0 |
0% |
src/stable_yield_lab/analytics/metrics.py |
Metrics.groupby_chain |
5 |
1 |
0 |
2 |
1 |
71% |
src/stable_yield_lab/analytics/metrics.py |
Metrics.top_n |
4 |
1 |
0 |
2 |
1 |
67% |
src/stable_yield_lab/analytics/metrics.py |
Metrics.net_apy |
1 |
1 |
0 |
0 |
0 |
0% |
src/stable_yield_lab/analytics/metrics.py |
Metrics.add_net_apy_column |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/metrics.py |
Metrics.hhi |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/metrics.py |
(no function) |
28 |
1 |
0 |
2 |
1 |
93% |
src/stable_yield_lab/analytics/performance.py |
cumulative_return |
3 |
0 |
0 |
2 |
0 |
100% |
src/stable_yield_lab/analytics/performance.py |
nav_series |
13 |
0 |
0 |
6 |
0 |
100% |
src/stable_yield_lab/analytics/performance.py |
nav_trajectories |
4 |
1 |
0 |
2 |
1 |
67% |
src/stable_yield_lab/analytics/performance.py |
yield_trajectories |
3 |
1 |
0 |
2 |
1 |
60% |
src/stable_yield_lab/analytics/performance.py |
_normalise_weights |
5 |
1 |
0 |
2 |
1 |
71% |
src/stable_yield_lab/analytics/performance.py |
_prepare_calendar |
12 |
5 |
0 |
10 |
4 |
50% |
src/stable_yield_lab/analytics/performance.py |
_infer_periods_per_year |
9 |
3 |
0 |
6 |
3 |
60% |
src/stable_yield_lab/analytics/performance.py |
_simulate_rebalanced_portfolio |
34 |
3 |
0 |
10 |
2 |
89% |
src/stable_yield_lab/analytics/performance.py |
run_rebalance_scenarios |
38 |
6 |
0 |
16 |
5 |
80% |
src/stable_yield_lab/analytics/performance.py |
(no function) |
28 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/portfolio.py |
_normalise_weights |
9 |
3 |
0 |
6 |
3 |
60% |
src/stable_yield_lab/analytics/portfolio.py |
allocate_mean_variance |
12 |
0 |
0 |
2 |
1 |
93% |
src/stable_yield_lab/analytics/portfolio.py |
expected_apy |
4 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/portfolio.py |
tvl_weighted_risk |
6 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/portfolio.py |
tracking_error |
20 |
3 |
0 |
12 |
3 |
81% |
src/stable_yield_lab/analytics/portfolio.py |
apy_performance_summary |
30 |
9 |
0 |
10 |
3 |
70% |
src/stable_yield_lab/analytics/portfolio.py |
(no function) |
11 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/risk.py |
_require_riskfolio |
2 |
0 |
2 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/risk.py |
_call_assets_stats |
4 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/analytics/risk.py |
summary_statistics |
12 |
1 |
0 |
8 |
3 |
80% |
src/stable_yield_lab/analytics/risk.py |
efficient_frontier |
11 |
1 |
0 |
2 |
1 |
85% |
src/stable_yield_lab/analytics/risk.py |
risk_contributions |
6 |
6 |
0 |
0 |
0 |
0% |
src/stable_yield_lab/analytics/risk.py |
(no function) |
8 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/attribution.py |
(no function) |
2 |
2 |
0 |
0 |
0 |
0% |
src/stable_yield_lab/core/__init__.py |
(no function) |
5 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/constants.py |
(no function) |
3 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/models.py |
Pool.to_dict |
3 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/models.py |
PoolReturn.to_dict |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/models.py |
(no function) |
25 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/repositories.py |
PoolRepository.__init__ |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/repositories.py |
PoolRepository.add |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/repositories.py |
PoolRepository.extend |
1 |
1 |
0 |
0 |
0 |
0% |
src/stable_yield_lab/core/repositories.py |
PoolRepository.filter |
14 |
1 |
0 |
12 |
1 |
92% |
src/stable_yield_lab/core/repositories.py |
PoolRepository.to_dataframe |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/repositories.py |
PoolRepository.__len__ |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/repositories.py |
PoolRepository.__iter__ |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/repositories.py |
ReturnRepository.__init__ |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/repositories.py |
ReturnRepository.extend |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/core/repositories.py |
ReturnRepository.to_timeseries |
5 |
1 |
0 |
2 |
1 |
71% |
src/stable_yield_lab/core/repositories.py |
(no function) |
17 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/metrics.py |
(no function) |
2 |
2 |
0 |
0 |
0 |
0% |
src/stable_yield_lab/performance.py |
(no function) |
2 |
2 |
0 |
0 |
0 |
0% |
src/stable_yield_lab/pipeline/__init__.py |
HistoricalSource.fetch |
1 |
0 |
0 |
2 |
1 |
67% |
src/stable_yield_lab/pipeline/__init__.py |
_iter_instances |
3 |
0 |
0 |
4 |
1 |
86% |
src/stable_yield_lab/pipeline/__init__.py |
Pipeline.__init__ |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/pipeline/__init__.py |
Pipeline.run |
10 |
0 |
0 |
4 |
0 |
100% |
src/stable_yield_lab/pipeline/__init__.py |
Pipeline.run_history |
9 |
0 |
0 |
2 |
0 |
100% |
src/stable_yield_lab/pipeline/__init__.py |
(no function) |
19 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/portfolio.py |
(no function) |
2 |
2 |
0 |
0 |
0 |
0% |
src/stable_yield_lab/rebalance.py |
_normalise_rows |
16 |
16 |
0 |
10 |
0 |
0% |
src/stable_yield_lab/rebalance.py |
_prepare_targets |
19 |
19 |
0 |
8 |
0 |
0% |
src/stable_yield_lab/rebalance.py |
run_rebalance |
38 |
38 |
0 |
10 |
0 |
0% |
src/stable_yield_lab/rebalance.py |
(no function) |
13 |
13 |
0 |
0 |
0 |
0% |
src/stable_yield_lab/reporting/__init__.py |
_ensure_outdir |
3 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/reporting/__init__.py |
_risk_metrics |
21 |
2 |
0 |
12 |
4 |
82% |
src/stable_yield_lab/reporting/__init__.py |
_weighted_portfolio_returns |
13 |
3 |
0 |
6 |
3 |
68% |
src/stable_yield_lab/reporting/__init__.py |
_infer_periods_per_year |
10 |
10 |
0 |
6 |
0 |
0% |
src/stable_yield_lab/reporting/__init__.py |
_annualized_return |
13 |
13 |
0 |
8 |
0 |
0% |
src/stable_yield_lab/reporting/__init__.py |
_tvl_weighted_average |
6 |
3 |
0 |
2 |
1 |
50% |
src/stable_yield_lab/reporting/__init__.py |
cross_section_report |
130 |
10 |
0 |
48 |
11 |
87% |
src/stable_yield_lab/reporting/__init__.py |
cross_section_report._agg |
4 |
1 |
0 |
2 |
1 |
67% |
src/stable_yield_lab/reporting/__init__.py |
cross_section_report._metrics_for |
4 |
0 |
0 |
2 |
0 |
100% |
src/stable_yield_lab/reporting/__init__.py |
(no function) |
14 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/risk_metrics.py |
(no function) |
2 |
2 |
0 |
0 |
0 |
0% |
src/stable_yield_lab/risk_scoring.py |
calculate_risk_score |
8 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/risk_scoring.py |
score_pool |
8 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/risk_scoring.py |
(no function) |
7 |
0 |
2 |
0 |
0 |
100% |
src/stable_yield_lab/sources/__init__.py |
DataSource.fetch |
1 |
0 |
0 |
2 |
1 |
67% |
src/stable_yield_lab/sources/__init__.py |
(no function) |
11 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/base.py |
HistoricalCSVSource.__init__ |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/base.py |
HistoricalCSVSource.fetch |
8 |
1 |
0 |
2 |
1 |
80% |
src/stable_yield_lab/sources/base.py |
(no function) |
7 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/beefy.py |
BeefySource.__init__ |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/beefy.py |
BeefySource._get_json |
10 |
5 |
2 |
2 |
0 |
42% |
src/stable_yield_lab/sources/beefy.py |
BeefySource.fetch |
18 |
2 |
3 |
6 |
2 |
83% |
src/stable_yield_lab/sources/beefy.py |
(no function) |
18 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/csv.py |
CSVSource.__init__ |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/csv.py |
CSVSource.fetch |
6 |
0 |
0 |
2 |
0 |
100% |
src/stable_yield_lab/sources/csv.py |
(no function) |
8 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/defillama.py |
DefiLlamaSource.__init__ |
2 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/defillama.py |
DefiLlamaSource._load |
8 |
5 |
2 |
2 |
0 |
30% |
src/stable_yield_lab/sources/defillama.py |
DefiLlamaSource.fetch |
13 |
1 |
3 |
6 |
1 |
89% |
src/stable_yield_lab/sources/defillama.py |
(no function) |
15 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/morpho.py |
MorphoSource.__init__ |
1 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/sources/morpho.py |
MorphoSource._post_json |
2 |
2 |
2 |
0 |
0 |
0% |
src/stable_yield_lab/sources/morpho.py |
MorphoSource._load |
9 |
6 |
0 |
4 |
1 |
31% |
src/stable_yield_lab/sources/morpho.py |
MorphoSource.fetch |
11 |
1 |
3 |
4 |
1 |
87% |
src/stable_yield_lab/sources/morpho.py |
(no function) |
16 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/visualization/__init__.py |
(no function) |
2 |
0 |
0 |
0 |
0 |
100% |
src/stable_yield_lab/visualization/visualizer.py |
Visualizer._plt |
3 |
0 |
2 |
0 |
0 |
100% |
src/stable_yield_lab/visualization/visualizer.py |
Visualizer.bar_apr |
13 |
3 |
0 |
6 |
3 |
68% |
src/stable_yield_lab/visualization/visualizer.py |
Visualizer.scatter_tvl_apy |
20 |
2 |
0 |
12 |
4 |
81% |
src/stable_yield_lab/visualization/visualizer.py |
Visualizer.scatter_risk_return |
21 |
2 |
0 |
14 |
6 |
77% |
src/stable_yield_lab/visualization/visualizer.py |
Visualizer.line_yield |
16 |
2 |
0 |
10 |
4 |
77% |
src/stable_yield_lab/visualization/visualizer.py |
Visualizer.line_nav |
13 |
2 |
0 |
6 |
3 |
74% |
src/stable_yield_lab/visualization/visualizer.py |
Visualizer.bar_group_chain |
12 |
2 |
0 |
6 |
3 |
72% |
src/stable_yield_lab/visualization/visualizer.py |
Visualizer.nav_with_benchmarks |
23 |
3 |
0 |
8 |
4 |
77% |
src/stable_yield_lab/visualization/visualizer.py |
Visualizer.line_chart |
17 |
2 |
0 |
10 |
2 |
85% |
src/stable_yield_lab/visualization/visualizer.py |
(no function) |
24 |
0 |
0 |
0 |
0 |
100% |