Match Factor Exposure

Match Factor Exposure replicates a target fund's factor profile with a long-only basket of ETFs. It returns the candidate weights that minimize squared distance between the target's and the basket's factor betas. Tracking-error diagnostics show how faithful the replica is.

On this page

What it answers

  • Which candidate mix matches the target? The weights table shows a long-only mix whose factor exposures are closest to the target's.
  • How close is it? Compare factor exposures and tracking error over the same historical window.
  • What remains different? Active alpha and active R-squared show gaps the basket does not explain.

Test a larger replacement basket

Free users can run smaller candidate sets. Pro raises the candidate limit for broader factor-matched replacement-basket research.

Pro workflow
What each plan includes, tool by tool

How it works

The tool measures the target and each candidate against the same factors over one shared period. It finds nonnegative weights that sum to 100% and minimize the difference between their factor exposures and the target's.

If candidates have nearly identical factor profiles, several mixes can fit equally well. The tool chooses the one closest to equal weights without worsening the best fit, so the same inputs produce the same weights.

Inputs

  • Target ticker. One reference fund or ETF.
  • Candidate tickers. Two to twenty-five tickers subject to the requesting account's configured cap. The tool rejects duplicates and overlap with the target. Synthetic tickers and uploaded series are outside the tool's supported input set.
  • Factor model. CAPM, Fama-French 3, Carhart 4, Fama-French 5, FF5 plus momentum, AQR, q-factor, fixed income.
  • Frequency. Daily, monthly, or annual. Lower frequencies smooth idiosyncratic noise but reduce the sample size.
  • Window. Start and end date for the shared sample.

Reading the result

  • Solution weights. Nonnegative weights that sum to 100%, sorted from largest to smallest.
  • Beta distance. The combined gap between target and basket factor exposures. Smaller is closer.
  • Per-factor table. Target beta and achieved beta with standard errors, plus the difference. Achieved-beta standard errors propagate per-leg variances under an independence assumption between candidates. When candidates overlap heavily (such as VTI and VOO), this can understate uncertainty because covariance between candidate estimates is not included.
  • Tracking error (annualized). Standard deviation of the difference between target and reconstructed return series, scaled by the square root of annualization.
  • Active alpha (annualized). The factor-model alpha differential, computed as the target's regression alpha minus the weighted sum of candidate alphas, then annualized. This is not a return-on-return regression intercept.
  • Active R-squared. One minus the variance of (target minus reconstructed) over the variance of target. Bounds are negative infinity to one. Negative values mean the basket adds variance versus quoting the target's mean return. The UI reports the raw value instead of clamping, so a poor match stays visible.

Limits and caveats

  • Beta matching alone ignores idiosyncratic variance. Always check the tracking-error chart, not just beta distance.
  • With near-collinear candidates (for example, VTI and VOO), many weight vectors achieve nearly the same beta distance. The tie-breaker stabilizes the answer, but the warning callout will tell you when this is happening.
  • The model is long-only with weights summing to one. Cash slack and long-short modes are outside its supported optimization set.
  • Candidate and daily-run limits come from the executable tier configuration, and the API enforces them.