AMMDocumentationWebsite ↗
how to · 5 min read

Calculate and interpret Factor Risk

Analyse saved strategy returns, account holdings or a research allocation using dated factors, exposures and validation evidence.

Reviewed 2026-10-24 · Windows & macOS

On this page

Open Factor model and choose a source#

Add Portfolio Optimization, open Risk in Portfolio Results, then choose Factor model. Research and holdings analysis do not require an optimisation run. Calculation reads data and creates a forecast; it does not submit orders or rebalance an account.

In Setup → Portfolio source, choose:

Source Meaning
Saved strategy candidate Analyses the saved strategy return sleeves and allocation, without inferring positions inside each strategy
Current account holdings Reads selected account books with explicit valuation/history/FX requirements
Research portfolio Uses a positive portfolio value and signed asset exposures you enter

For holdings, a total-value override means known total account equity in reporting currency. It cannot repair missing positions, marks, multipliers or prices. For research, all history must meet the supported currency contract; changing a label does not convert a foreign-currency series.

AMM equity factor-risk analysis with exposures, risk contributions and model diagnostics in dark modeView full-size screenshot ↗
Equity risk analysis with factor and asset contributions, volatility, value at risk, stress scenarios and model diagnostics.

Load or enter a research allocation#

Select Research portfolio, set its value, choose a Research example, then press Load example. Choosing the menu item alone does not replace the holdings. Examples include diversified equities, concentrated growth, balanced multi-asset ETFs, hedged equities and a credit-aware ETF mix.

Open Edit holdings to change symbols, signed weights, economic groups or price sources. Weights are not automatically normalized. A negative weight represents a short exposure in the research arithmetic. Economic groups are independent of history routes: a Treasury ETF can use an equity price route while belonging to Bonds.

Examples are illustrative allocations. They do not recommend instruments or establish suitable weights. Editing their allocation/model identity changes the displayed name to Custom research allocation.

Select dates, sources and model#

Choose the price provider and exact account where required, then a Model preset. Inspect Factor return definitions. A formula such as IWM − SPY is the difference between observed ETF returns, not a pure academic size factor. Adding factors is an explicit model choice, not an automatic improvement.

History before (UTC) is exclusive. To include a completed Friday close, choose the following date and read the actual data through value. Weekends, missing series and source backtest dates can make the common data end earlier. Calendar lookback and usable training observations are different counts.

Some archives require a confirmed Daily close date convention. Use the verified stored-date interpretation rather than guessing. Coverage identifies missing series and alignment issues.

Press Calculate risk or ⌘/Ctrl+Enter. Success from Setup opens Summary; incomplete coverage returns to Setup with missing inputs first. Navigation does not calculate automatically.

Read dated results and exposures#

The risk bar shows source, allocation, calculation/data dates and status. Out of date means current inputs differ from the retained result. Grey tables still describe the previous inputs. Recalculate before saving or using those numbers as current evidence. A failed calculation preserves the last result for comparison.

Summary reports annualised volatility, 95% VaR, explained variance, gross exposure, observations and attribution. VaR is a modelled threshold, not a maximum loss. Historical fit is not future calibration.

In Exposures, choose Beta, Portfolio contribution, Benchmark contribution or Active contribution. These cells are exposure sensitivities, not shares of variance. Benchmark choices include SPY holdings, Equal weight and a custom USD basket. Explicitly apply/refresh the benchmark and check its publication date and matching coverage. An unavailable match is not a zero weight; ETF look-through is not inferred.

AMM covariance inspector displaying a saved equity correlation matrix in dark modeView full-size screenshot ↗
A saved 15-asset correlation matrix with named equity axes, covariance controls and retained calculation context.

Inspect covariance, scenarios and validation#

Covariance offers Factors, Assets or Residuals; covariance or correlation; and Daily, Annualized or Forecast horizon scale. Covariance is displayed in bp²; correlation is dimensionless and does not change with horizon. A dash can mean undefined correlation for zero-variance history. Copy CSV retains identities, dates, scale, units and full precision.

Contributions separates factor, asset, issuer-sector and economic-group shares of risk. Current issuer labels are not historical point-in-time classifications or ETF look-through. Scenarios applies explicit percentage factor shocks with omitted factors held at zero. A Treasury price shock is not a yield move in basis points. Linear factor scenarios omit residual shocks and are not event probabilities.

Validation includes fit, factor correlations, VaR backtesting and exposure stability. Strong correlation and small effective samples can make individual betas unstable. Conditional holdout reconstruction uses realized factors with previously fitted coefficients; it is not an advance return forecast. Read warnings and sample evidence before comparing model sizes.

Edit quantities and save a reference#

Supported funded equity research sources can show adjusted-reference quantity, dated price, notional and weight. These quantities refer to the saved adjusted close, not an intraday executable quote. Portfolio value stays fixed. Changing quantities changes residual cash/funding arithmetic but not the displayed forecast until recalculation.

For an immutable reference, calculate the final draft, choose its benchmark and Save run…. Each save creates a new named Risk Run; reusing a name does not overwrite the prior run. Risk Runs… → Open run restores its dated evidence. Research runs with saved inputs can be edited, recalculated and saved as a new revision.

The Risk model runs activity table is separate: it shows queued/running/completed desktop and REST calculations. Open explicitly loads a completed result; polling never replaces your draft. Cancel acts on active calculation work. Only an eligible saved-strategy calculation exposes Optimization limits → Use for optimisation, which transfers source-bound limits into Builder without starting it.

Resolve missing evidence#

Follow coverage reasons for exact provider/account/symbol, adjusted history, date convention or FX routing. Matrix unavailable requires a fresh valid calculation rather than relabelling axes. An empty Overview does not delete a research draft: return to Risk. After switching API server, retained evidence is marked Other server until you load or calculate on the intended origin.

Application screenshotOpen original ↗