Skip to content

Add SchurConditionalCovariance: structured Schur damping with a ridge-regressed hedge - #52

Merged
microprediction merged 1 commit into
mainfrom
schur-conditional
Jun 11, 2026
Merged

Add SchurConditionalCovariance: structured Schur damping with a ridge-regressed hedge#52
microprediction merged 1 commit into
mainfrom
schur-conditional

Conversation

@microprediction

Copy link
Copy Markdown
Owner

The structured (Vecchia/conditional) counterpart of the entry-shrinkage SchurLedoitWolfCovariance.

For each block it forms the conditional regression (hedge) b_k and Schur complement S_k, damps both by the OAS-style cross-block coupling reliability γ*, and reassembles the implied positive-definite covariance. The hedge uses a ridge-regularized inverse of the conditioning block, so the structured operation stays stable at n<p instead of blowing up through a raw R_cc⁻¹ — the same regularization the allocation side applies to a hedge.

  • γ*→0 → block-diagonal; n_blocks=1 → full EWA covariance.
  • Tests: PD/symmetry, stability at n<p (the raw-OLS version fails this), γ* ∈ [0,1] and rising with coupling strength, n_blocks=1 == EwaCovariance, JSON state roundtrip.
  • ruff ✓, mypy ✓, full suite 232 passed; registered (17 estimators).

🤖 Generated with Claude Code

…-regressed hedge

The structured (Vecchia/conditional) counterpart of the entry-shrinkage SchurLedoitWolfCovariance.
Forms each block's conditional regression b_k and Schur complement S_k, damps both by the
OAS-style cross-block coupling reliability gamma*, and reassembles the implied PD covariance.
The hedge uses a ridge-regularized inverse of the conditioning block, so the structured operation
stays stable at n<p instead of blowing up through a raw R_cc^-1 -- the same regularization the
allocation side applies to a hedge.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@microprediction
microprediction merged commit e00dc8c into main Jun 11, 2026
6 checks passed
@microprediction
microprediction deleted the schur-conditional branch June 24, 2026 21:08
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