skfolio
Python library for portfolio optimization built on top of scikit-learn
...By following the familiar scikit-learn API design, the library allows quantitative researchers and developers to apply techniques such as model selection, cross-validation, and hyperparameter tuning to portfolio construction workflows. It supports a wide range of allocation methods, from classical mean-variance optimization to modern techniques that rely on clustering, factor models, and risk-based allocations. The framework also includes tools for evaluating portfolio performance under different market conditions, enabling users to test robustness and reduce the risk of overfitting.