The covariance swap drives most of MINGLE's improvement. The graph-based weighting rule contributes less.
Chehab, Iacovides, Yazdanparast and Mandic begin with a useful distinction. Two stocks that moved together last quarter may share a risk driver, or one may simply have had a bad quarter. Their portfolio tries to separate those cases.
The monthly solve
The input is a 300-name panel of daily log returns. It contains the 100 most actively traded 2017 constituents from each of the S&P 500, Nikkei 225 and STOXX 600, with Bloomberg prices converted to USD. Each estimate uses a two-year window and exponential weighting with omega = 0.997, equivalent to a one-year half-life. A single non-convex problem then estimates three objects jointly.
Those objects are a 300 by 6 factor-exposure matrix B, the 6 factor time series F, and a sparse similarity graph W linking the 300 stocks. The reconstruction term pushes BF toward the observed returns. A Dirichlet energy couples the graph and exposures, with lambda = 0.1. Every edge linking assets with dissimilar exposure vectors raises the objective.
From the graph's side, this coupling draws exposures together within neighbourhoods. From the exposures' side, it determines which edges remain. Three additional terms prevent collapse. An L1 penalty on W, set at alpha = 2.2, removes edges. A log-degree barrier at beta = 3.0 prevents isolated assets. The factor covariance receives an off-diagonal penalty of delta = 1.0 so that the six drivers do not duplicate one another, while B remains orthonormal. ADMM divides the optimization into a Stiefel projection, a proximal L1 step and a degree solve. The iterative Sylvester solve for B accounts for the O(p^3) cost per iteration.
The authors call the full construction MINGLE. Its defining feature is mutual regularisation across the two domains, rather than estimating a factor model and building a graph afterward.
The allocation is easier to picture. The representation produces a covariance, B Sigma_F B' plus a diagonal idiosyncratic block. Adaptive CutV takes that matrix through recursive spectral bipartitioning until it reaches 24 leaves. Within a leaf, each asset receives capital in inverse proportion to its weighted degree in that cluster. Hubs receive less and peripheral stocks receive more. This is the Contagion Cut. The portfolio is re-estimated monthly, held for the next month, long-only.
The proposed source of information is persistence in exposure similarity. Across the backtest, cluster assignments have temporal normalised mutual information of 0.768. On the S&P 500 subset, reordered by GICS membership, the learnt graph's within-cluster edge weights are 5.30x its between-cluster weights during calm markets. The corresponding ratio for absolute sample covariance is 2.42x. Under elevated volatility, the comparison is 4.49x against 1.64x.
The Sharpe ladder
From Jan 2019 to March 2026, with zero transaction costs, equal weight produced Sharpe 0.780 and 15.5% CAGR. Adaptive CutV using the sample covariance reached 0.860 and 17.3%. Feeding the same allocator the representation-induced covariance lifted those figures to 0.994 and 19.7%. The full Contagion Cut finished at 1.07 and 21.0%.
MVO and HRP both trailed equal weight in the same table. MVO recorded 0.364 and 5.86%, while HRP delivered 0.613 and 10.7%, against equal weight's 0.780. The paper attributes MVO's shortfall to estimation noise amplified through the sample covariance, the Markowitz curse introduced earlier. Its explanation for HRP is a locality measure that mixes systematic risk with idiosyncratic risk.
The PCA factor covariance is the revealing comparison. Under the same allocator, it returned Sharpe 0.788 and CAGR 15.8%, below the raw sample covariance at 0.860. Straight low-rank denoising harmed this spectral cut, so rank truncation alone cannot account for the joint objective's contribution.
The 0.21 Sharpe gap between sample-covariance CutV and the Contagion Cut separates cleanly. Replacing the covariance contributes 0.134. The within-leaf degree tilt supplies the other 0.076. Because the paper describes the third configuration as changing only the within-leaf weights, the latter increment belongs to the weighting rule. It is smaller in absolute terms.
At 50 bps, both gains contract by about two fifths. The covariance increment falls to 0.083 (0.800 to 0.883), and the tilt falls to 0.046 (0.883 to 0.929). We read that decay as turnover in the peripheral tilt, although the paper gives no turnover figure of any kind. The authors rank the effects in the same order. They say the Contagion Cut's further improvement shows graph topology adding value beyond the better-conditioned covariance, and identify improved conditioning in the induced covariance as the reason cuts favoured the optimal partitioning.
Across the backtest, the representation covariance is roughly two orders of magnitude better conditioned than the sample covariance. Adaptive CutV chooses the Fiedler vector in 85.9% of windows, which is 5.4x its frequency with the sample covariance. The wider eigengap produced by better conditioning keeps the allocator from cutting on high-index eigenvectors.
Graph effect or peripheral-stock tilt?
Inverse-degree weighting directs more capital toward assets with few strong neighbours. Applied to a learnt exposure graph, it therefore favours stocks whose systematic exposures resemble those of fewer peers. Table 2 contains seven strategies. None applies inverse-degree weights to a correlation-derived graph, leaving the comparison needed to distinguish this exposure graph from a generic inverse-degree tilt.
The authors address part of the denoising objection. Their factor-covariance result, Sharpe 0.788 versus 0.860 for raw sample covariance, shows that plain low-rank truncation is not the operative mechanism. The lambda = 0 ablation (p<0.001 at sigma^2 = 0.01) tests whether coupling contributes. Neither comparison is a degree tilt on a correlation graph. The benchmark set also lacks a shrinkage estimator. Since the authors identify conditioning as the larger rung's mechanism, this omission carries unusual weight. Running the same Adaptive CutV on a shrunk sample covariance would reveal how much of the 0.134 requires the joint objective.
The abstract's paired tests use 100 seeds of synthetic Gaussian noise added to raw returns at three levels. The market results have no significance test. Removing either the low-rank prior or the decorrelation term reduces Sharpe at p<0.001 throughout. For the coupling term itself, lambda = 0, significance is p<0.001 at sigma^2 = 0.01, p = 0.050 at 0.10, and p = 0.317 at 0.25. The authors acknowledge this directly, writing that mutual consistency alone might "not suffice against prevailing sampling noise". Its benefit fades as noise increases, making mutual regularisation a moderate-noise result.
Crisis regimes draw an equally candid concession. The Contagion Cut has VIX-conditioned Sharpes of 3.32 calm, 0.82 elevated, -2.98 crisis. Equal weight records 3.22 / 0.62 / -3.32, and sample-covariance CutV gives 3.12 / 0.61 / -3.28. During calm periods, the covariance-only version leads slightly, at 3.36 versus 3.32.
The authors write that the framework "does not fully mitigate Crisis risk". They locate its outperformance in calm and elevated regimes, where most capital compounds, and attribute the negative crisis result to the long-only constraint. The same section warns that holding k at 6 introduces artefacts during crises, precisely when returns load on fewer drivers. Their claim remains scoped. A 0.34 Sharpe advantage over equal weight during a drawdown amounts to being least-bad, rather than supplying diversification when it was needed.
Tuning leaves a separate question. The table caption says k, alpha and C were chosen with portfolio-level metrics, while lambda, delta and T were chosen with representation-level metrics. Jan 2019 to March 2026 is described as the held-out period, and the paper mentions calculating in-sample portfolio performance elsewhere, making a pre-2019 sample plausible. The source sample for those portfolio-level metrics is unspecified. If the backtest supplied them, the ladder is fitted.
The universe screen uses 2017 turnover, before the test period begins, and freezes the 300 stocks for the full window. The dataset paragraph does not explain the treatment of a delisted name. Meanwhile, the conclusion describes ADMM as scalable, an uneasy fit with an O(p^3) Sylvester solve per iteration at p = 300.
Our implementation
We reconstructed the Contagion Cut from the paper's description in one automated pass. Our test covers US large caps only, using the top 300 by capitalisation from 2 January 2020 to 31 July 2026. We rebalanced monthly at the close with six factors, alpha 2.2, lambda 0.1, delta 1.0, beta 3.0, omega 0.997, 24 leaves and inverse within-leaf degree weighting. The book was long-only and fully invested. We charged four tenths of a cent a share, subject to a $1 minimum and a 1% commission cap, with zero modelled slippage.
Four differences need to sit beside the results. Our universe covers one region, whereas the paper uses 300 stocks drawn from three indices and selected by 2017 turnover. We trained on adjusted closes; the paper uses close prices. Its text specifies only the within-leaf rule and leaves allocation across leaves to the cited CutV method. Equal 1/24 weights across leaves are therefore our choice. Finally, the hyperparameter row labels C = 24 as a recursive-cut count while describing it as the number of clusters. We interpreted this as 24 leaves obtained through 23 successful binary cuts.
The paper's zero-cost result is Sharpe 1.07 with 21.0% CAGR over Jan 2019 to March 2026. At 50 bps, those figures decline to 0.929 and 18.3%. Our run returned Sharpe 0.75, Calmar 0.36, and 143.10% in total from 2 January 2020 to 31 July 2026. Our 0.75 is 0.32 below their zero-cost headline of 1.07. Different universes, windows and leaf budgets mean the figures measure different things.
Our sample begins in January 2020, so the COVID drawdown arrives in its first quarter. The paper reports a crisis-conditioned Sharpe of -2.98 for this strategy. Our maximum drawdown was -40.33%, with 29.08% annualised volatility. A long-only portfolio confronted February and March 2020 almost immediately, helping explain why our Calmar 0.36 trails their 0.611. Zero modelled slippage favours our result in the opposite direction.
The strategy's distinctive element consumes turnover: a tilt toward peripheral names that adds only 0.046 Sharpe at 50 bps in the paper's table. The implementation choices described above are the first place to examine when comparing our weaker figures with theirs. This run is one automated pass on a substituted market, rather than a verdict on the authors' work.
We have previously asked whether correlation structure is stable enough to trade and found that lookback selection reversed the signal in one crisis of three (correlation geometry as a daily risk signal). This paper offers a constructive response. Its persistence evidence is its strongest contribution: NMI 0.768, alongside 5.30x within-cluster concentration among the S&P 500 stocks in calm markets.
A correlation graph with the same inverse-degree tilt would change my view of the graph contribution, as would a shrunk sample covariance passed through the same Adaptive CutV. If the Contagion Cut exceeded both by roughly the 0.076 it gains over equal-within-leaf weighting, the exposure graph would be earning its place. For now, the conditioning evidence supports the narrower claim: a jointly learnt low-rank covariance leads the spectral allocator to choose the Fiedler vector in 85.9% of windows.