Total Return — 120m Window (14 factors, no LTREVRSL)
PCA signal AND backtest on raw Total Return, 120-month rolling window, 14 BARRA factors (excludes LongTermReversal for comparability with original analysis)
@Pavanmirla |
Generated: 24 February 2026
| Data: Jan 1999 – Dec 2025
Configuration
PCA Window
120m
Components
5
Portfolios
10
Return (Signal)
Total
Return (Backtest)
Total
Return Horizon
T+1 month
ⓘ
Data coverage note —
Backtest P&L ends Dec 2025 |
PCA scores available to Jan 2026
(1 months beyond backtest)
The data file covering Dec 2025 onward contains BARRA factor exposures
but no return data. Factor exposures alone are sufficient to generate
PCA scores and rank stocks — use the Positions Browser below
to see the latest stock rankings through Jan 2026.
Return data for that period is needed to extend the backtest statistics.
Methodology
Step 1
Load & Filter
Monthly BARRA factor exposures loaded. Stocks with all-NA factors excluded. Canada-class shares (gvkey suffix c/C) removed.
Step 2
Cross-Sectional Z-Score
Factor exposures are standardised cross-sectionally each month: subtract mean, divide by std. Prevents scale bias in PCA.
Step 3
Walk-Forward PCA
PCA fitted on a trailing 120-month window. Components applied to current month's universe. Sign-flip alignment ensures continuity across windows.
Step 4
Decile Backtest
Stocks sorted by PC score into 10 portfolios. Returns are T+1 forward (no look-ahead). Active = Decile − Universe mean. L/S = D1 − D10.
Signal & Backtest Interpretation
PCA Signal
Total Return
Returns used to rank stocks each month
=
Backtest Return
Total Return
Returns used to measure portfolio P&L
Higher vol (beta not stripped) — real-money tradeable L/S
This run uses raw Total Return for both ranking and performance
measurement — the return you'd actually see in your brokerage account.
The L/S portfolio carries residual market beta and sector drift, so monthly
returns are noisier and Sharpe ratios are lower than factor-adjusted runs.
The advantage is that the numbers are fully real-money: no factor
hedges are required to realise them.
The three-run spectrum (from cleanest signal → real-money):
When PCA is trained on ExBeta+Ind returns, it learns which combinations of BARRA
factor exposures predict the stock-specific residual. When trained on Total Return,
it tries to predict the full noisy signal including market and sector co-movement —
harder, but the reward is directly tradeable.
L/S Performance Summary (D1 − D10)
Annualised statistics for the long-short portfolio (top decile minus bottom decile, equal-weighted). Returns not adjusted for transaction costs.
PC
Ann Return
Ann Vol
Sharpe
Max DD
Hit Rate
Months
PC1
2.24%
28.97%
0.077
-229.76%
51.9%
324
PC2
-2.2%
24.12%
-0.091
-145.38%
51.9%
324
PC3
-2.8%
16.49%
-0.17
-152.39%
45.7%
324
PC4
4.08%
13.74%
0.297
-52.48%
53.1%
324
PC5
2.96%
17.08%
0.173
-62.24%
49.7%
324
L/S Cumulative Return — All Components
Cumulative sum of monthly long-short returns. Click legend entries to toggle individual PCs.
Across all 5 components, PC4 is the strongest signal (Sharpe 0.30) and PC3 the weakest (Sharpe -0.17). 3 of 5 components produce a positive long-short return over the full period.
PC1 Analysis
PC1 shows weak predictive power — Sharpe 0.08, L/S return +2.2% p.a., hit rate 51.9%, max drawdown -229.8%. D1 averages +2.0% vs D10 at -0.2% annualised active return. (324 monthly observations)
PC2 Analysis
PC2 shows no meaningful predictive power — Sharpe -0.09, L/S return -2.2% p.a., hit rate 51.9%, max drawdown -145.4%. D1 averages -0.6% vs D10 at +1.6% annualised active return. (324 monthly observations)
PC3 Analysis
PC3 shows no meaningful predictive power — Sharpe -0.17, L/S return -2.8% p.a., hit rate 45.7%, max drawdown -152.4%. D1 averages -1.5% vs D10 at +1.3% annualised active return. (324 monthly observations)
PC4 Analysis
PC4 shows weak predictive power — Sharpe 0.30, L/S return +4.1% p.a., hit rate 53.1%, max drawdown -52.5%. D1 averages +2.6% vs D10 at -1.4% annualised active return. (324 monthly observations)
PC5 Analysis
PC5 shows weak predictive power — Sharpe 0.17, L/S return +3.0% p.a., hit rate 49.7%, max drawdown -62.2%. D1 averages +2.0% vs D10 at -1.0% annualised active return. (324 monthly observations)
Positions Browser
Top & bottom 20 stocks ranked by PC score for any date and component.
Ticker, company name, and sector are sourced from the raw data files.
#
Ticker
Company
Sector
GVKey
PC Score
Factor Loadings Snapshot
Loadings computed on a 120-month trailing window, updated monthly (walk-forward).
Green = positive loading, Red = negative. Left: Jan 2024 · Right: Jan 2026
Each cell shows how strongly a BARRA factor (column) contributes to a
principal component (row). Loadings are computed on a rolling 120-month
window and re-estimated each month (walk-forward).
Green (positive loading) — the PC tends to rise when stocks score
high on this factor. Stocks with high exposure to a green factor will rank
near the top of this PC.
Red (negative loading) — the PC moves inversely to this factor.
High-exposure stocks rank near the bottom.
Near-zero / pale — the factor has little influence on this PC.
The snapshot shown is from the most recent date in the data. Because PCA is
unsupervised, the sign of a PC can flip between windows — what matters is
the relative ordering of factor weights, not their absolute sign.
How to Read: Cumulative & Annualised Active Returns
Active Return is the return of a stock minus the
equal-weighted cross-sectional average for that month — it strips out
the broad market move so only relative performance remains.
Decile construction — each month stocks are ranked by
their PC score and split into 10 equal groups (D1 = highest score,
D10 = lowest). Returns are shifted forward one month (T+1) to
avoid look-ahead bias.
Cumulative Active Return (left chart)
Cumulativet = Σ Active Returns (s = 1…t)
A D1 line trending upward over time indicates that stocks with
high PC scores consistently outperform. A clean spread from D1 (top)
to D10 (bottom) confirms the PC has durable predictive power.
Annualised Active Return (right chart)
Ann. Return = mean(Monthly Active Return) × 12 × 100
A monotonically declining bar (D1 highest, D10 lowest) shows the PC
ranks stocks reliably. The Long-Short Sharpe ratio in the summary table
is computed as: