Transparency is a feature. This page explains what the factor-shock scenario tool measures and why — in plain terms. The precise formulas and numeric conventions are documented in our internal methodology; the summary here is deliberate, not an omission.
This is a deterministic what-if. You supply a portfolio's factor exposures — for example the betas from a factor regression — and a set of hypothetical factor shocks, meaning the returns you want to assume each factor delivers. The linear factor model then translates those assumptions into a predicted portfolio return, and multiplies that return by the position's market value to express the impact in dollars. Because the shocks are your own assumptions surfaced openly — "what happens if the market falls and value outperforms?" — this is a transparent scenario, not a probabilistic Value-at-Risk estimate.
Only factors that appear in both the exposure set and the shock set actually move the result. Shocking a factor the portfolio has no exposure to changes nothing, and an exposure you do not shock is simply assumed to stay put. An optional base term — for instance an expected drift or the regression alpha — can be added on top; by default it contributes nothing. Exposures and shocks are expressed as decimal fractions, consistent with the rest of the library.
If no factors overlap between the two sets, the result is just the base term, and two empty sets yield zero. This is not an error: an empty scenario is a perfectly valid, zero-impact scenario.