GitPedia
PyPortfolio

PyPortfolio/PyPortfolioOpt

Financial portfolio optimisation in python, including classical efficient frontier, Black-Litterman, Hierarchical Risk Parity

2 Releases
Latest: 3mo ago
v1.6.0Latest
fkiralyfkiralyยท3mo agoยทFebruary 26, 2026
GitHub

๐Ÿ“‹ What's Changed

  • Support for python 3.14, end-of-life for python 3.8 and 3.9
  • Support for `pandas 3.0`
  • Reduction of dependency footprint. Former dependencies are still available as soft dependencies in the new `all_extras` depset.
  • CLA speedup

๐Ÿ“ฆ Enhancements

  • [ENH] `pandas 3` compatibility by @ayushraj09, @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/703
  • [ENH] vectorize CLA `_reduce_matrix` using `numpy` advanced indexing by @philippdubach in https://github.com/PyPortfolio/PyPortfolioOpt/pull/693

๐Ÿ“ฆ Maintenance

  • [MNT] skip failing tests on `main` by @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/643
  • [MNT] fix all URLs and `main` branch references after move to new org by @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/641
  • [MNT] python 3.14 compatibility, python 3.9 end-of-life by @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/646
  • [MNT] remove dockerfile by @tschm in https://github.com/PyPortfolio/PyPortfolioOpt/pull/648
  • [MNT] CI: concurrency and no fail-fast by @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/660
  • [MNT] move packaging to `pyproject.toml` by @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/659
  • [MNT] move CI installs to `uv` by @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/661
  • [MNT] CI action for installing uv/uvx by @tschm in https://github.com/PyPortfolio/PyPortfolioOpt/pull/654
  • + 16 more

๐Ÿ“ Documentation

  • [DOC] Fix typos in `efficient_frontier` (#635) by @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/681
  • [DOC] Update GeneralEfficientFrontier.rst by @avances123 in https://github.com/PyPortfolio/PyPortfolioOpt/pull/630
  • [DOC] improvements to README.md by @tschm in https://github.com/PyPortfolio/PyPortfolioOpt/pull/658
  • [DOC] improved README - important links at the top by @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/682
  • [DOC] remove empty boxes in README by @fkiraly in https://github.com/PyPortfolio/PyPortfolioOpt/pull/683

โœจ New Contributors

  • @fkiraly made their first contribution in https://github.com/PyPortfolio/PyPortfolioOpt/pull/643
  • @avances123 made their first contribution in https://github.com/PyPortfolio/PyPortfolioOpt/pull/630
  • @ms32035 made their first contribution in https://github.com/PyPortfolio/PyPortfolioOpt/pull/632
  • @philippdubach made their first contribution in https://github.com/PyPortfolio/PyPortfolioOpt/pull/693
  • @aral190 made their first contribution in https://github.com/PyPortfolio/PyPortfolioOpt/pull/699
  • @ayushraj09 made their first contribution in https://github.com/PyPortfolio/PyPortfolioOpt/pull/703
  • Full Changelog: https://github.com/PyPortfolio/PyPortfolioOpt/compare/v1.4.1...v1.6.0
PyPortfolioOpt v1.4.1v1.4.1
robertmartin8robertmartin8ยท5y agoยทMay 6, 2021
GitHub