Chapter 20: Strategy Synthesis

From Model Scores to Portfolio Weights

Portfolio construction is the decision rule that maps model outputs, risk estimates, current holdings, and constraints into target weights — and every design choice in that mapping can amplify, dampen, or invert the signal's intended direction.

From Model Scores to Portfolio Weights

Portfolio construction is the decision rule that maps model outputs, risk estimates, current holdings, and constraints into target weights — and every design choice in that mapping can amplify, dampen, or invert the signal's intended direction.

Why This Matters

A prediction model produces scores. A portfolio produces returns. Between them sits the portfolio construction layer: the mechanism that converts a vector of model outputs into a vector of capital allocations. The distinction matters because model evaluation that ignores the allocator is incomplete. Two models with different ICs can reverse their ranking once translated through different construction rules, because the mapping from scores to weights interacts with the signal's cross-sectional structure, the constraint set, and the risk model.

Chapter 17 covers portfolio optimization theory in depth. This primer focuses on the narrower question that sits between signal evaluation and optimization theory: how does the score-to-weight translation work, what choices does it embed, and why does it reshape the competitive landscape among models?

The Mapping

The discussion assumes a cross-sectional setting in which a model produces scores across a universe of $N$ assets at each rebalance date $t$. The allocator is a function:

$$\mathbf{w}_t = \mathcal{A}\bigl(\mathbf{s}_t,\; \hat{\Sigma}_t,\; \mathbf{w}_{t-1},\; \mathcal{C}\bigr)$$

where $\mathbf{s}_t$ is the model output, $\hat{\Sigma}_t$ is the risk model, $\mathbf{w}_{t-1}$ is the current portfolio, and $\mathcal{C}$ is the constraint set (including the capital budget). Trades follow as $\Delta\mathbf{w}_t = \mathbf{w}_t - \mathbf{w}_{t-1}$; trade generation and execution are covered in Chapters 18 and 25.

Score calibration matters

The model output $\mathbf{s}_t$ is not necessarily an expected-return forecast. A rank score, a class probability, a regression residual, and a calibrated return forecast are different objects, and the choice of mapping must match the signal type:

  • If only the ordering of scores is reliable, use a rank-based mapping that discards magnitude.
  • If the magnitude is meaningful and comparable across assets (e.g., calibrated expected returns), a proportional or optimization-based mapping can exploit it.
  • If the signal is a probability (e.g., $P(\text{up})$), it requires conversion to an expected-return equivalent before entering an optimizer. That conversion depends on the payoff scale, the asymmetry between upside and downside, and the forecast horizon — a direction probability alone does not determine an expected return.

Three Common Mappings

Rank-and-scale

Convert scores to cross-sectional ranks, center at the median rank $\bar{r}$, and normalize to a target gross exposure $W_{\text{target}}$:

$$w_i = \frac{\text{rank}(s_i) - \bar{r}}{\sum_j |\text{rank}(s_j) - \bar{r}|} \cdot W_{\text{target}}$$

This produces a dollar-neutral long-short portfolio. Assets above the median rank receive positive weight; those below receive negative weight. The mapping is robust to outliers and score-scale drift but discards all magnitude information.

For a long-only variant, select assets above a rank cutoff and normalize: $w_i \propto \max(\text{rank}(s_i) - r_{\text{cutoff}},\; 0)$. This eliminates the short leg — a materially different construction that changes factor exposures and capacity.

Z-score proportional

Standardize scores and set weights proportional to the standardized values:

$$w_i = \frac{z_i}{\sum_j |z_j|} \cdot W_{\text{target}}, \quad z_i = \frac{s_i - \bar{s}}{\sigma_{s}}$$

where $\bar{s}$ is the cross-sectional mean and $\sigma_s$ the cross-sectional standard deviation. This preserves signal-strength ordering and allocates more capital to higher-conviction positions than rank-and-scale does, because it uses the distance of each score from the mean rather than just ordinal position. The mapping is sensitive to outliers; winsorizing scores before standardization is standard practice.

A long-only version clips negative $z$-scores: $w_i \propto \max(z_i, 0)$.

Optimization-based

Maximize a risk-adjusted objective subject to constraints:

$$\max_{\mathbf{w}} \; \boldsymbol{\alpha}^\top \mathbf{w} - \frac{\lambda}{2} \mathbf{w}^\top \hat{\Sigma} \mathbf{w} - \kappa \|\mathbf{w} - \mathbf{w}_{t-1}\|_1 \quad \text{s.t.} \quad \mathbf{1}^\top \mathbf{w} = 1, \;\; \mathbf{w} \in \mathcal{C}$$

where $\boldsymbol{\alpha}$ is the vector of expected excess returns (derived from calibrated scores — the notation shift from $\mathbf{s}$ to $\boldsymbol{\alpha}$ marks the assumption that scores have been converted to return forecasts), $\hat{\Sigma}$ is the covariance estimate, $\lambda$ is risk aversion, $\kappa$ penalizes turnover, $\mathbf{1}^\top\mathbf{w}=1$ is the budget constraint, and $\mathcal{C}$ encodes additional constraints (long-only, sector limits, position caps).

This is the most flexible approach but also the most sensitive to estimation error in both $\boldsymbol{\alpha}$ and $\hat{\Sigma}$. Michaud, Esch, and Michaud demonstrate via Monte Carlo that unconstrained mean-variance optimization amplifies estimation error, and that constraints can improve out-of-sample results by regularizing against noise [ref:MJXMJFSB]. However, when forecasts are well-calibrated or when covariance inputs use shrinkage or factor structure, optimization retains an advantage over simpler mappings. Kim et al. frame the practical message: optimization remains the enforceable constraint layer even when ML generates the inputs; the question is which objective, constraints, and inputs to use [ref:B8GP3EAZ].

Constraints as Signal Filters

Every constraint interacts with the score vector to produce realized weights that may differ from the intended ranking:

  • A long-only constraint prevents direct expression of negative views and can materially alter the signal's risk exposures and diversification profile.
  • Sector limits redistribute weight within constrained sectors, potentially promoting lower-ranked assets.
  • Position caps truncate high-conviction bets, flattening the signal's tails.
  • Turnover penalties slow adaptation, preserving stale positions.

In the benchmark-relative active management literature, the transfer coefficient (TC) quantifies this translation loss: it is the correlation between the unconstrained active weights and the constrained active weights actually implemented. Trichilo and Braun show that TC depends on the constraint set and the tracking-error target: long-only enhanced-index portfolios may achieve TC well below 1.0, while modest long-short flexibility (e.g., 130/30 structures) materially increases TC at the same tracking error by allowing bets to better match signals [ref:XTTV2E7D]. The TC concept is specific to benchmark-relative construction — it does not directly apply to absolute-return or dollar-neutral strategies.

Worked Example

Consider three assets with scores $\mathbf{s} = [2.0, 0.8, -1.0]$ and a stylized covariance $\Sigma = \sigma^2 \mathbf{I}$ (equal volatility, zero correlation).

Rank-and-scale (long-short). Ranks: [3, 2, 1]. Centered at median rank 2: $[+1, 0, -1]$. Normalized to $W=1$: $\mathbf{w} = [+0.50,\; 0.00,\; -0.50]$. The middle asset receives zero weight because ranking discards the fact that its score (0.8) is above the cross-sectional mean.

Z-score proportional (long-short). Mean $\bar{s} = 0.6$, demeaned: $[1.4, 0.2, -1.6]$. Standard deviation $\sigma_s = 1.23$. Z-scores: $[+1.14, +0.16, -1.30]$. Normalized: $\mathbf{w} = [+0.44,\; +0.06,\; -0.50]$. The middle asset now receives a small positive weight (+6%) because z-scoring uses the fact that 0.8 is above the mean — magnitude information that ranking discarded.

Mean-variance optimizer (long-only). With $\boldsymbol{\alpha} = \mathbf{s}$, $\Sigma = \sigma^2\mathbf{I}$, budget $\mathbf{1}^\top\mathbf{w}=1$, and $w_i \geq 0$: the long-only constraint binds on asset 3 ($\alpha_3 < 0$), setting $w_3 = 0$. For the remaining assets, under an identity covariance the optimizer allocates proportional to $\alpha_i$: $w_1/w_2 = 2.0/0.8 = 2.5$, giving $\mathbf{w} = [0.71,\; 0.29,\; 0.00]$.

Method Signal assumption $w_1$ $w_2$ $w_3$
Rank long-short Ordering only +0.50 0.00 -0.50
Z-score long-short Magnitude +0.44 +0.06 -0.50
Optimizer long-only Calibrated returns 0.71 0.29 0.00

Same scores, three different portfolios. The key contrasts: ranking ignores that asset 2 scores above the mean; z-scoring captures it. The optimizer concentrates more in asset 1 than z-scoring does, because it uses magnitude under a risk model. The long-only constraint eliminates the short position entirely.

Practical Guidance

Fix the allocator before comparing models. If you change both the model and the construction rule simultaneously, performance differences are unattributable. Run all candidate models through the same pipeline.

Match the mapping to the signal type. Rank-and-scale suits noisy signals where only ordering is reliable. Proportional mapping suits signals with meaningful magnitude. Optimization suits settings where the risk model is credible and constraints encode real investment policy.

The long-short and long-only versions of the same formula are different constructions. They produce different portfolios, different factor exposures, and different capacity profiles. The distinction should be explicit in any experimental design.

Be precise about what "the allocator" includes. Realized strategy performance depends on the mapping function, the constraint set, the rebalance cadence, the cost model, and the risk overlay. Attributing a performance difference to "the allocator" without specifying which component drove it conflates the implementation stack with a single design choice. Cerniglia and Fabozzi emphasize that portfolio construction and execution must be jointly designed: the allocator determines the trade list, the trade list determines the cost, and the cost feeds back into net performance [ref:2YXWIIVF].

Where It Fits in ML4T

Chapter 17 develops portfolio optimization theory. Chapter 18 covers transaction cost modeling. This primer bridges the gap between model evaluation (Chapters 7-16) and strategy synthesis (Chapter 20) by explaining the mechanism through which model scores become portfolio weights. The transfer coefficient concept connects to the IC and Fundamental Law framework in Chapter 7. The score-calibration question connects to the label-design choices in Chapter 7. The constraint-as-regularizer perspective connects to Chapter 11's treatment of regularization.

Register to Read

Sign up for a free account to access all 61 primer articles.

Create Free Account

Already have an account? Sign in