{"categories":[{"label":"Software Development","url":"https://skillfed.io/packages/category/software-development/17"},{"label":"Mathematics","url":"https://skillfed.io/packages/category/scientific-engineering-mathematics/3"},{"label":"Investment","url":"https://skillfed.io/packages/category/office-business-financial-investment"}],"enrichment":{"capability":"skfolio is a Python library for portfolio optimization and risk management that integrates with scikit-learn to build, tune, cross-validate, and stress-test portfolio models using a unified interface.","skillfed_tags":["portfolio-optimization","quantitative-finance","scikit-learn-compatible"],"use_cases":["Build and backtest mean-risk portfolio models with different covariance estimators and risk measures.","Compare naive allocation strategies against optimized portfolios using walk-forward or purged cross-validation.","Construct hierarchical risk parity or equal-risk-contribution portfolios for diversification.","Stress-test portfolio allocations under different market regimes or synthetic scenarios.","Tune portfolio optimization hyperparameters (e.g., regularization, constraints) via grid or randomized search.","Estimate expected returns and covariance using shrinkage, denoising, or regime-adjusted methods."],"what_it_does":"skfolio is a machine-learning-focused portfolio optimization framework built on scikit-learn's API. It addresses shortcomings in classical mean-variance optimization by offering a unified toolkit for model selection, validation, and parameter tuning while mitigating overfitting and data leakage. The library provides naive allocation strategies (equal-weight, inverse-volatility), convex optimization methods (mean-risk, risk budgeting, maximum diversification), clustering-based approaches (hierarchical risk parity), and ensemble techniques. It also includes estimators for expected returns, covariance matrices, distributions, and priors, plus cross-validation and hyperparameter tuning compatible with scikit-learn's ecosystem.\n\nThe package is designed for quantitative finance practitioners and researchers who need to experiment with multiple portfolio construction methods and compare their out-of-sample performance. Its dependencies\u2014numpy, scipy, pandas, scikit-learn, plotly, cvxpy-base, and clarabel\u2014provide numerical computing, optimization, data handling, and visualization. The library targets Python 3.10 and later and is actively maintained with recent releases.","worth_installing":"Yes. skfolio is actively maintained, has no known vulnerabilities, uses a permissive license, and offers low install friction. It is well-suited for anyone building quantitative portfolio models in Python who wants scikit-learn-style workflows, multiple optimization methods, and robust cross-validation. The 2101 GitHub stars and recent release cycle signal a mature, community-backed project. Install it if you need portfolio optimization; skip it if you only need basic mean-variance calculations or prefer a different API."},"id":"skfolio","links":{"html":"https://skillfed.io/packages/skfolio","md":"https://skillfed.io/packages/skfolio.md","pypi":"https://pypi.org/project/skfolio/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-08-13","license_spdx":null,"license_treatment":"permissive","name":"skfolio","python_support":"supports_current","summary":"Portfolio optimization built on top of scikit-learn"},"popularity":{"monthly_downloads":92039,"position":13485,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.20.2"}
