Skip to content

feat: add Ledoit-Wolf 2020 analytical nonlinear shrinkage estimator - #758

Open
dhairya-motta wants to merge 1 commit into
PyPortfolio:mainfrom
dhairya-motta:feature/analytical-nonlinear-shrinkage
Open

feat: add Ledoit-Wolf 2020 analytical nonlinear shrinkage estimator#758
dhairya-motta wants to merge 1 commit into
PyPortfolio:mainfrom
dhairya-motta:feature/analytical-nonlinear-shrinkage

Conversation

@dhairya-motta

@dhairya-motta dhairya-motta commented Aug 28, 2026

Copy link
Copy Markdown

This PR adds the Analytical Nonlinear Shrinkage estimator introduced in Ledoit and Wolf (2020), which provides an optimal correction for the sample eigenvalues using a closed-form formula derived from random matrix theory, rather than a single global shrinkage intensity.

Changes:

  • Implemented analytical_nonlinear_shrinkage() in CovarianceShrinkage (pypfopt/risk_models.py).
  • Integrated the new method into the risk_matrix() dispatcher.
  • Updated module and risk_matrix docstrings.
  • Added corresponding unit tests in tests/test_risk_models.py.

Reference: Ledoit, O. and Wolf, M. (2020). Analytical Nonlinear Shrinkage of Large-Dimensional Covariance Matrices. Annals of Statistics, 48(5).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant