- Flink update_bars debouncing - update_bars subscription idempotency bugfix - Price decimal correction bugfix of previous commit - Add GLM-5.1 model tag alongside renamed GLM-5 - Use short Anthropic model IDs (sonnet/haiku/opus) instead of full version strings - Allow @tags anywhere in message content, not just at start - Return hasOtherContent flag instead of trimmed rest string - Only trigger greeting stream when tag has no other content - Update workspace knowledge base references to platform/workspace and platform/shapes - Hierarchical knowledge base catalog - 151 Trading Strategies knowledge base articles - Shapes knowledge base article - MutateShapes tool instead of workspace patch
3.4 KiB
description, tags
| description | tags | ||||
|---|---|---|---|---|---|
| Combines multiple stock-selection factors (e.g., value and momentum) by blending factor rankings or allocating capital across factor sub-portfolios, reducing single-factor risk. |
|
Multifactor Portfolio
Section: 3.6 | Asset Class: Stocks | Type: Multifactor
Overview
A multifactor portfolio buys and shorts stocks based on multiple factors simultaneously — such as value and momentum — which are often negatively correlated with each other, providing diversification benefits. Combining factors can add value relative to any single-factor strategy. The holding period depends on which factors are combined.
Construction / Signal
Two primary approaches to combining F factors:
Approach 1 — Capital allocation across sub-portfolios
Each of F factor portfolios is built independently (as in Sections 3.1–3.5). Capital is allocated with weights w_A (A = 1,...,F):
sum_{A=1}^{F} w_A = 1 (275)
Investment level for factor A: I_A = w_A * I
Simple uniform weights: w_A = 1/F
Volatility-weighted: w_A ∝ 1/sigma_A or w_A ∝ 1/sigma_A^2, where sigma_A is the historical volatility of factor portfolio A (uniformly normalized per dollar invested).
Alternatively, optimize weights using an invertible F×F covariance matrix of the F factor portfolio returns.
Approach 2 — Blended ranking scores
Define demeaned ranks for factor A across N stocks:
s_{Ai} = rank(f_{Ai}) - (1/N) * sum_{j=1}^{N} rank(f_{Aj}) (276)
where f_{Ai} is the numeric value of factor A for stock i. Average the ranks across factors:
s_i = (1/F) * sum_{A=1}^{F} s_{Ai} (277)
Sort stocks by the combined score s_i and construct a long/short portfolio (top decile long, bottom decile short).
Entry / Exit Rules
- Entry: At rebalance date, compute factor scores, blend them (via capital allocation or rank averaging), and enter long/short positions.
- Exit: Hold for the relevant factor horizon; rebalance monthly (or per factor schedule).
- Tie-breaking: If ambiguity exists at decile boundaries (e.g., tied combined scores), resolve by preferring one factor's ranking.
Key Parameters
- Number of factors F: Typically 2–5 (e.g., value + momentum; or value + momentum + low-vol)
- Factor weights w_A: Uniform (1/F) or volatility-suppressed
- Combining method: Capital allocation vs. rank averaging
- Holding period: Depends on the factors combined
Variations
- Two-factor momentum + value: Sort top/bottom quintiles by momentum, then split by value (or vice versa), creating 4 sub-portfolios
- Weighted rank averaging: Non-uniform weights in Eq. (277) using Manhattan or Euclidean distance minimization
- Portfolio optimization: Fix weights w_A by optimizing expected returns using an invertible F×F covariance matrix
Notes
- Value and momentum are empirically negatively correlated, making them natural complements that reduce portfolio volatility.
- Uniform rank averaging (Eq. 277) minimizes the sum of squared Euclidean distances between the combined N-vector s_i and the K individual N-vectors s_{Ai}.
- Holding period depends on the slowest factor; mixing monthly and annual factors requires careful rebalancing scheduling.
- Transaction costs increase with the number of factors if rebalancing frequencies differ.