The Early Warning Indicator (EWI) measures how surprising each risk-model factor's realized move is relative to the model's own risk forecast, and turns that into a forward-looking signal. Two families of content sets deliver it: the F-Stat content sets report the realized surprise statistic, and the Forecast content sets predict where that statistic is heading across six horizons. Both are available for the major Axioma and Barra risk models and refresh daily.
Overview
Every risk model publishes, for each factor, a forecast of how volatile that factor should be. The EWI compares what actually happened to that forecast. When a factor moves far more than the model expected, the EWI flags it — early — so you can see which factors are behaving abnormally before that surprise fully works through your portfolio. The Forecast content sets extend this from "what just happened" to "what the model expects to keep happening," so you can tell a one-day blip apart from a regime that is likely to persist.
The content sets answer two questions: Which factors just surprised the model, and by how much? (F-Stat) and Where is each factor's surprise likely to head next? (Forecast). We start with the statistic itself, then the forecasts built on top of it, then how to read and act on both.
The F-Stat
For each factor k on each day t, the daily F-Stat compares the realized factor move against the model's risk forecast from the prior day:
F(t, k) = ( factor return at t )^2 / ( factor variance forecast at t-1 )
The variance forecast is annualized by the model, so it is converted to a daily figure (divided by 252) before the division. Because the move is squared against the forecast variance, the statistic is naturally centered on 1:
≈ 1 — the move was about as large as the model expected.
> 1 — the move was larger than forecast (a surprise / elevated risk).
< 1 — calmer than forecast.
A reading of N means the factor moved √N forecast standard deviations. The F-Stat is unsigned — it measures the size of the surprise, not its direction; pair it with the signed factor return to know which way the factor went.
The same statistic is reported across six horizons — daily, weekly, monthly, quarterly, semi-annual, annual — as rolling averages of the daily value (5 / 21 / 63 / 126 / 252 trading days), with point-in-time percentile bands (1st / 5th / 95th / 99th, built only from history available up to each date) that flag when a factor breaches its own historical norms. Aggregate cohorts (All Factors, All Style Factors, All Industry Factors) give a multivariate, whole-model view.
The Forecast content sets
A single F-Stat reading tells you a factor just surprised the model. It does not tell you whether that surprise is a one-off or the start of a stretch of abnormal behavior. The Forecast content sets close that gap. For each factor and each horizon, a model predicts the factor's future F-Stat from the recent behavior of factor surprises, answering: given how surprises have been evolving, how large is this factor's surprise statistic likely to be over the next day / week / month / quarter / half-year / year?
Each forecast value is on the same scale as the F-Stat — it is a predicted F-Stat, read the same way:
predicted ≈ 1 — the factor is expected to behave in line with its risk forecast.
predicted > 1 — the model expects above-normal surprises / elevated risk to continue.
predicted < 1 — the model expects calmer-than-normal conditions ahead.
So if a factor's daily F-Stat spikes to 6 today but its monthly forecast is only ~1.2, the model is telling you the spike is likely transient. If the monthly forecast is also ~4, it expects the elevated regime to persist. That distinction is the whole point of the forecast.
Each factor and horizon is forecast under three specifications, from simplest to richest:
AC1— uses the factor's own monthly F-Stat only. A pure-persistence view.HF_Inputs— adds the factor's own weekly F-Stat. Persistence plus recent acceleration.VAR— adds the recent F-Stat behavior of all other factors. Captures cross-factor spillover.
Coverage. The Forecast content sets cover the model's style factors. The F-Stat content sets are broader — they include style and industry factors plus the aggregate cohorts.
How the forecasts are built
Each forecast comes from an ordinary least-squares (OLS) regression fit in a walk-forward fashion. The target is the factor's own F-Stat at the chosen horizon; the predictors are recent F-Stat values. For target factor k, horizon h, and prediction date t, the three specifications are:
AC1 F_hat_k(t+h) = b0 + b1 * F_month_k(t)
HF_Inputs F_hat_k(t+h) = b0 + b1 * F_month_k(t) + b2 * F_week_k(t)
VAR F_hat_k(t+h) = b0 + sum_j a_j * F_month_j(t) + sum_j c_j * F_week_j(t)
where F_month and F_week are the monthly and weekly F-Stats, and j runs over all style factors in the model. How the fit works, and why it is trustworthy:
Walk-forward, no look-ahead. On each prediction date the model is re-fit using only data whose outcome was already observable — training stops a full horizon before the prediction date — then applied to today's inputs to forecast h days out. The training window expands over time (history begins in 2020).
Horizon-aware errors. Standard errors use the Newey-West (HAC) estimator with a lag equal to the horizon, which correctly accounts for the overlap created by forecasting several days ahead.
What the value represents. The content set carries the model's point prediction (the predicted F-Stat). The underlying fit also produces confidence and prediction intervals, an R-squared, and a model-significance test, used internally to gauge forecast reliability.
Reading the three specifications together is itself informative: if AC1 is calm but VAR is elevated, the warning is coming from the rest of the model — a sign the broader regime, not just this factor, is shifting.
Using the content sets
There are two content sets per risk model: an EWI F-Stat (MODEL) set with the realized statistics, and an EWI Forecast (MODEL) set with the predicted statistics. Both update daily as new factor returns and covariances arrive. Before reading values, one detail about how the data is delivered:
These content sets describe factors, not stocks. Because Omega Point content sets attach values to a security, all factor-level statistics are carried on a single anchor security — SPY. SPY is only the delivery vehicle; the numbers are properties of the model's factors, not of SPY. To read the data, look up SPY in the content set and inspect its attached factors — each one is a single model factor, at one horizon (and, for forecasts, one specification).
Reading the content set on screen
Each row is one factor at one horizon under one specification, followed by its predicted F-Stat, for example:
DM4 Leverage (1D VAR) 2.13 EM4 Short-Term Momentum (1D VAR) 1.97 US4 Earnings Yield (1D VAR) 1.83
Reading DM4 Leverage (1D VAR) = 2.13 left to right:
DM4— the risk model's regional factor block (here, Developed Markets).Leverage— the factor itself.1D— the forecast horizon, how far ahead it looks (1 day).VAR— the forecast specification (here, the cross-factor model).2.13— the predicted F-Stat at that horizon.
The region prefix (DM4 / EM4 / US4)
Worldwide models such as AXWWLM4-SH organize factors into regional blocks — US4 (United States), DM4 (Developed Markets), EM4 (Emerging Markets) — so the same style factor is estimated separately per region. Pick the block that matches where your exposure sits: a US book hedging Earnings Yield wants US4 Earnings Yield, not EM4. Single-region models (e.g. AXUS51-MH) have no such prefix. These names come straight from the risk model.
The horizon code
The on-screen code maps to the forecast horizon as follows:
1D— 1 day ahead (1 trading day)1W— 1 week ahead (5 trading days)1M— 1 month ahead (21 trading days)3M— 1 quarter ahead (63 trading days)6M— 6 months ahead (126 trading days)1Y— 1 year ahead (252 trading days)
Every factor appears once per horizon and once per spec, which is why the list is long.
What the number means
It is a predicted F-Stat, on the same centered-on-1 scale as the realized statistic:
≈ 1 — the factor is expected to behave about as the model forecasts (normal).
> 1 — above-normal surprise expected. A value of 2.13 implies an expected move of about √2.13 ≈ 1.5 forecast standard deviations, vs. the ~1σ norm.
< 1 — calmer than normal expected.
US4 Short-Term Momentum (1D VAR) = 0.57says the model expects that factor to be unusually quiet tomorrow.
What to expect when you open it
Most values cluster near 1. On a calm day the whole list sits close to 1; the interesting rows are the ones that pull away from it.
The top of the list is your watchlist — the factors the model expects to be most surprising over that horizon.
Values well below 1 are also a signal — they say "expect calm," which is just as useful when deciding not to hedge.
Under the hood: the raw factor identifier
The on-screen label is a friendly rendering of an underlying identifier of the form Factor__forecast_<horizon>_<spec>. So DM4 Leverage (1D VAR) corresponds to an id like ..._forecast_daily_var. If you access the data via the API you will see these raw ids, where the horizon is spelled out (daily, weekly, monthly, quarterly, semiannual, annual) and the spec is lower-cased (ac1, hf_inputs, var). The F-Stat content sets follow the same pattern with a metric suffix instead, e.g. Factor__f_stat_daily.
Picking the right forecast
Suppose you run a global book on AXWWLM4-SH and want to know, for tomorrow, whether to hedge two real tilts: a long DM Leverage position and a long US Short-Term Momentum position.
1. Triage the list. Sorted descending, the top rows are tomorrow's most-likely surprises:
DM4 Leverage (1D VAR) = 2.13,DM4 Profitability (1D AC1) = 2.05,EM4 Short-Term Momentum (1D VAR) = 1.97. These are the factors to look at first.2. Match each tilt to its factor and region.
DM Leverage →
DM4 Leverage:1D VAR = 2.13(the highest in the list). Cross-check the other specs —1D AC1 = 1.20,1D HF_Inputs = 1.00. The cross-factor view flags a big expected surprise while own-history is near normal, so the warning is coming from spillover elsewhere in the model. Verdict: elevated — hedge if the tilt is sizable and unintended.US Short-Term Momentum →
US4 Short-Term Momentum:1D VAR = 0.57,1D AC1 = 0.86,1D HF_Inputs = 0.83— all three below 1. They agree the factor should be calmer than normal tomorrow. Verdict: stand down — no need to hedge this leg for the next day.
3. Match the horizon to your decision. The rows above are
1D(tomorrow). If you rebalance weekly, read the same factors'1Wrows; if you hold for a month, read1M. Same factor, different look-ahead — pick the horizon that matches how long the position will be on.4. Use spec disagreement as its own signal. When the three specs diverge sharply — e.g.
US4 Medium-Term Momentumreads1D AC1 = 1.13but1D VAR = 0.11— the gap is information: own-history persistence says "normal," the cross-factor model says "unusually calm." Default toVARfor the most complete read, and treat a largeAC1-vs-VARgap as a flag that the factor is being driven by the rest of the model rather than its own recent path.
Worked example: hedging a surprise
Identifying an elevated factor is half the job; the other half is sizing the hedge. Take a single factor end to end. Suppose your portfolio carries a Momentum exposure of +0.2, and today the Momentum factor's daily F-Stat reads 6, breaching its 99th-percentile band.
1. Read the surprise. F = (move)^2 / (forecast variance) = 6, so the realized Momentum move was √6 ≈ 2.45 forecast standard deviations. The model expected a ~±1σ day; Momentum delivered ~2.4σ — beyond its 99th percentile. This is a real surprise, not noise.
2. Get direction and size. The F-Stat is unsigned, so check the signed Momentum factor return. Say it was -1.0% on the day (a sharp reversal). If Momentum's forecast daily volatility was ~0.4%, then -1.0% ≈ -2.45σ — consistent with F = 6.
3. Quantify your exposure's impact. Your factor P&L from Momentum ≈ exposure × factor return = 0.2 × (-1.0%) = -0.20% = -20 bps in a single day, from this one factor — roughly 2.5x what the risk forecast had budgeted. Momentum is currently a bigger live risk to you than baseline.
4. Decide tactical vs. structural, using the Forecast set. Look up the Momentum forecasts across horizons and specs (
1D,1W,1M;AC1,HF_Inputs,VAR):If the weekly/monthly forecasts are still well above 1 (say ~3-4) and
VAR>AC1→ the elevated regime is expected to persist and to be partly driven by other factors → lean toward a structural hedge.If the weekly/monthly forecasts sit near 1 → today's spike is expected to fade → a tactical, short-dated hedge (or simply riding it out) may suffice.
5. Size the hedge. To neutralize +0.2 of Momentum beta, add -0.2 of offsetting beta:
A pure Momentum long/short proxy with Momentum beta ≈ 1.0 → short ~20% of portfolio notional (0.2 / 1.0).
A high-Momentum ETF with Momentum beta ≈ 0.5 → short ~40% notional (0.2 / 0.5) — but watch its other factor exposures.
Or trim your highest Momentum-beta longs until the portfolio's Momentum beta falls to your target.
6. Match horizon and monitor. Choose a hedge tenor that matches the forecast horizon still flagged as elevated — a hot daily that cools by monthly argues for a short-dated hedge; readings sustained out to quarterly/annual argue for a structural one. Re-check the daily F-Stat and the forecasts each day, and unwind as the forecast reverts toward 1 and the F-Stat falls back inside its bands.
In one line: the F-Stat tells you a factor just delivered a surprise your exposure was under-protected against; the Forecast tells you whether to expect more, and therefore whether the right response is a tactical or a structural hedge.
All available content sets
Twelve content sets in total — a paired F-Stat and Forecast set for each of six risk models, refreshed daily. Display names follow EWI F-Stat (MODEL) and EWI Forecast (MODEL); the dataset aliases are:
AXUS51-MH —
ewi_fstat_axus51_mh·ewi_forecast_axus51_mhAXWW4-SH —
ewi_fstat_axww4_sh·ewi_forecast_axww4_shAXWW4-MH —
ewi_fstat_axww4_mh·ewi_forecast_axww4_mhAXWWLM4-SH —
ewi_fstat_axwwlm4_sh·ewi_forecast_axwwlm4_shAXWWLM4-MH —
ewi_fstat_axwwlm4_mh·ewi_forecast_axwwlm4_mhBAGEMLTL —
ewi_fstat_bagemltl·ewi_forecast_bagemltl
Don't see a content set enabled on your account? Contact your Omega Point representative.
