Technical documentation
Methodology
Definitions, construction and known limitations of the analytics published in this application.
Every figure in this application is computed from monthly total-return series by the formulas set out below. This document states what each number means, how it is constructed, which inputs it requires, and the conditions under which it is withheld. It is published so that a reader can reproduce a figure, or determine that a figure should not be relied upon.
Data and universe
Return data is sourced from a third-party market-data provider as monthly total returns, adjusted for splits and distributions and resampled to month-end: dividend-adjusted net asset values for mutual funds, and dividend-adjusted closing market prices for exchange-traded funds (so an ETF’s figures match its issuer’s market-price returns, which can differ from its NAV returns by a few hundredths of a percent a month). The universe comprises the largest US-listed funds by reported assets, together with index proxies and a curated set of additional share classes that are force-included irrespective of reported size. It is refreshed nightly and currently contains 31,962 funds, with data through 2026-09.
Fund history begins at 1980-02. The month axis itself extends to 1950-02, but that earlier range is populated only by index series; no fund carries a return before 1980-02.
- Total return, not price. Distributions are treated as reinvested. The S&P 500 total-return index is the default reference for US equity funds; the other equity indices offered as benchmarks are price-return series, labeled as such, and the exchange-traded proxies are total-return. Alpha and information ratio measured against a price-return index are biased upward by approximately the index dividend yield. Each fund page opens against the fund’s natural yardstick: US aggregate bonds for bond funds, MSCI EAFE for international equity, the Russell 2000 for small caps, Treasury bills for cash, and the S&P 500 otherwise.
- Survivorship. The universe consists of funds currently in existence. Funds that have closed or merged are absent, which biases long-horizon category statistics upward. This limitation is disclosed rather than corrected.
- Recency. The current, incomplete month is excluded. In addition, the most recent complete months are admitted only once their income has arrived: the provider folds distributions into the adjusted net asset value with a lag, so a recent month can carry the ex-date price decline without the distribution. A month in which the riskless 0–3 month Treasury bill funds deliver less than half of the bill yield is held back for every fund until the feed completes. Every profile states the period it covers.
- Stable-NAV funds. A money-market fund holds its share price at $1.00 and pays its entire return as distributions, which the provider's adjusted series does not carry for these funds; the series is a flat 0.00%. Such funds are withheld from returns, risk statistics, screens and rankings, and their profile says so, rather than publishing a figure known to be false. They remain in the universe for fee and profile data.
Return and risk measures
Table 1 — Definitions of published return, risk and benchmark-relative measures.
| Annualized return | Geometric: the constant annual rate that compounds to the period’s total return. |
| Standard deviation | Sample standard deviation of monthly returns (ddof = 1), scaled by √12. |
| Sharpe ratio | Arithmetic mean return less the risk-free rate, divided by volatility, annualized. The risk-free series is the 1–3 month Treasury bill ETF (from mid-2007), extended backward with the 0–1 year Treasury ETF and, before that, the 3-month Treasury bill rate (from 1954, converted from its bank-discount yield to a monthly return); no rate is applied before 1954. It is averaged over each fund’s own observed months, so a fund with limited history is not charged a rate for periods in which it did not exist. Months for which no rate is available contribute zero. Sortino retains a minimum acceptable return of 0% and is therefore not comparable to Sharpe. |
| Maximum drawdown | Largest peak-to-trough decline on a month-end wealth curve with a baseline of 1.0 prior to the first return. Being monthly, it understates intra-month declines. |
| Beta, alpha, R² | Ordinary least squares regression of the fund’s monthly returns in excess of the risk-free rate on the benchmark’s, over pairwise-complete observations (Jensen’s alpha). Alpha is the intercept, annualized (×12). With a low R² the fund moves largely independently of the benchmark and the page says so. |
| Information ratio; tracking error | Mean active return divided by its volatility, annualized. Tracking error is the annualized standard deviation of fund-minus-benchmark returns. |
| Excess return (xRoR) | Annualized geometric fund return less annualized geometric benchmark return, both computed over the same pairwise-complete months, so that a fund’s excess is never measured against benchmark history it did not experience. |
| IR/TE | Information ratio divided by tracking error. Rewards outperformance achieved with low deviation from the benchmark. The quantity is sensitive to small tracking error and should be read alongside its components. |
| Correlation | Pearson correlation of monthly returns over pairwise-complete observations. The matrix additionally offers an excess-return mode, correlating active returns; two index-tracking funds may correlate near 1.0 on raw returns and near zero on active returns, which is the relevant comparison when both are candidates against one benchmark. |
| Rolling correlation | Trailing 3-month and 12-month Pearson correlation against the selected benchmark. A point is plotted only where the full window is pairwise-complete; partial windows are not shown. |
| Maximum-IR optimizer | Maximizes active return divided by tracking error against the selected benchmark, long-only, with weights summing to one and an optional per-holding cap, over the constituents’ common overlap. Results are hypothetical. |
| Sector exposure | Aggregated from each holding’s reported sector, weighted by position size and, in the portfolio look-through, by fund weight. The classified share is disclosed; a partially covered fund is not presented as complete. |
| Liquid Alternatives Composite | An in-house equal-weight, monthly-rebalanced mean of every alternative-strategy fund in the universe, excluding leveraged and inverse products and funds under two years old. A month is reported only where at least five constituents have data. It is not a hedge-fund index and is not investable. |
| US Equity Blend 50/30/20 | An in-house composite: 50% S&P 500 (total return), 30% S&P 500 Equal Weight and 20% S&P MidCap 400, as a monthly-rebalanced constant mix from the components’ common inception (2003). The equal-weight index is represented by the Invesco S&P 500 Equal Weight ETF (RSP), so that part carries its 0.20% annual fee. No fund tracks the S&P MidCap 400 Equal Weight index since its only ETF closed in January 2024, so the cap-weighted S&P MidCap 400 (iShares IJH) stands in for it until the index is available. It is not investable. |
| Target Risk series | Five in-house multi-asset composites at fixed equity weights (20/40/60/80/95%). Equity sleeve: 55% US large, 10% US small, 25% international developed, 10% emerging markets. Bond sleeve: 90% US aggregate, 10% short Treasury. Constructed as a monthly-rebalanced constant mix of total-return proxies from the components’ common inception. Constructed and named independently; not affiliated with, sponsored by, or tracking any third-party index. |
| Upside / downside capture | Geometric return in months where the benchmark rose (respectively fell), divided by the benchmark’s own, following the standard convention. 100 denotes parity. |
| Expense ratio | The fund’s net annual expense ratio. For short-selling strategies this excludes dividend and interest owed on short positions, which the gross figure includes but which is not a management fee; the gross figure is shown alongside where the two diverge. Fund-of-fund and BDC figures continue to include acquired-fund fees, which the investor bears. |
Outlook score
The Outlook is a transparent quantitative score, not a rating issued by a ratings agency and not investment advice. Each fund is scored on within-category percentiles of four factors, which are combined into a weighted composite and mapped to five tiers (Strong, Positive, Neutral, Caution, Weak).
Table 2 — Outlook factors and weights.
| Net expense ratio — 50% | Lower cost ranks higher. Fees are the most reliable single predictor of relative performance among comparable funds. The factor uses the net expense ratio, consistent with the figure published elsewhere in the application. |
| Risk-adjusted persistence — 30% | Mean less dispersion of the information ratio against the fund’s natural yardstick (the same benchmark its page opens against; managed futures for alternative strategies), measured across two non-overlapping periods. A fund that is itself the yardstick is measured against the next one (BND against another aggregate-bond tracker), exactly like its clones. Tracking error below 1% a year is floored at 1%, so a close index tracker scores near zero rather than being penalised for trailing its index by its fee. Consistency across periods is required; a single measurable period does not produce a score. A fund whose returns differ from its fund company’s published figures is not rated until the data is corrected. |
| Fund longevity — 12% | Time since inception, saturating at ten years. |
| Asset base — 8% | Reported net assets, as a coarse viability check: funds smaller than their category’s median rank lower; size above the median earns no extra credit. |
Weights are re-normalized over the factors that are present. A fund is returned as Not rated where the expense ratio is unavailable, where history is shorter than 48 months, or where fewer than 5 category peers exist. The history threshold follows from the persistence factor, which requires two non-overlapping measurement periods; a shorter series cannot express persistence and is not scored on it. A separate gate prevents inexpensive but persistently lagging funds from reaching the upper tiers. Each fund profile publishes the factor percentiles underlying its own score.
Third-party star rating
Where a quantitative star rating is supplied by the data provider it is passed through without modification. Coverage across the full universe is sparse; an em dash indicates that no rating was supplied for that fund, not that the fund failed a screen. The measure is backward-looking and peer-relative, is issued by a third party, and is distinct from the Outlook score described in section 3.
Peer categories and ranks
Category rank is a fund’s total-return percentile within its peer category over the selected period, where 1 denotes the best. Only funds with data covering the full period are ranked, and ranking is performed against the whole universe so that a filtered view remains correctly ranked. Categories containing fewer than 5 ranked funds are aggregated to the asset-class level, and the basis applied is disclosed on the fund profile.
The data provider classifies a minority of the universe. For the remainder a category is taken from the provider's holdings-based classification where the fund's own returns are consistent with it, set to money market for a fund that behaves as one, or otherwise inferred from the fund name using a curated rule engine, so that those funds also receive a peer group. An inferred category is marked on the fund profile and never overwrites a stated one. A fund whose name yields no clear signal is left uncategorized and ranked against its asset class rather than assigned a category that cannot be supported. A stated category that the fund’s own return series contradicts — for example a low-volatility classification on a series exhibiting materially higher volatility — is rejected rather than repeated.
Returns-based style analysis
Where holdings are unavailable, style is estimated from returns by constrained regression of the fund’s series onto a palette of style proxies, with non-negative weights summing to one. The result describes how a fund has behaved, which may differ from what it holds. Where a holdings-derived style is available it is preferred and labeled as such.
Equity style weights
The equity style grid distributes a fund’s stock holdings across nine cells, three size bands by three value–growth bands, and reports the share of the fund’s classified stock weight in each cell. Each holding is placed by the characteristics of its own issuing company, so the grid shows where the stock exposure is concentrated rather than where the average holding lies: a fund split between mega-cap growth and small-cap value has an average near the center of the box and almost nothing in the center cell.
Table 3 — Construction of the equity style grid.
| Universe | Active US-listed common stocks and REITs with a current market capitalisation, rebuilt weekly. A company with more than one listed share class is counted once. A stated capitalisation is reconciled against the company’s own per-share and revenue figures; one that does not reconcile is re-derived and does not set breakpoints, and neither do depositary receipts. |
|---|---|
| Size | Companies ranked by market capitalisation, largest first: those making up the first 70% of aggregate capitalisation are Large, the next 20% Mid and the remaining 10% Small. Breakpoints move with the market. |
| Value score | A weighted mean of percentile ranks among companies in the same size band: forward earnings yield one half (trailing where no estimate exists), and trailing earnings, book, sales and dividend yields one eighth each. Yields rather than multiples, so that a loss-making company ranks below every profitable one. |
| Growth score | A weighted mean of percentile ranks within the size band: year-on-year revenue growth one half, implied forward earnings growth two fifths, and the latest quarter’s year-on-year earnings growth one tenth, the last being the input most distorted by one-off gains and charges. |
| Style | Growth score minus value score. Within each size band the cut-offs divide companies into thirds weighted by the square root of market capitalisation, so that neither the number of companies nor a handful of the largest determines where Value ends and Growth begins. |
| Fund grid | Long stock positions from the fund’s latest holdings report, summed by cell and expressed as a share of the classified stock weight; shown to whole percentages that sum to 100. A grid is published only where stocks are at least 20% of net assets and at least 60% of the stock weight can be classified; otherwise the single-point style box is shown. A portfolio’s grid aggregates its funds’ holdings at their portfolio weights. |
Holdings are as of the fund’s most recent portfolio report, which can lag the current portfolio by up to a quarter. A stock without enough valuation or growth inputs keeps its size band but is left out of the grid, and the classified share is stated beside it. Foreign-listed holdings are not classified, so international funds generally show the single-point box instead.
Holdings look-through
Portfolio look-through aggregates each constituent fund’s reported holdings, weighted by the fund’s weight in the portfolio, to give exposure at the security and sector level. The proportion of each fund that could be classified is reported; uncovered weight is shown as such rather than redistributed across the classified remainder.
Portfolio construction and projection
A portfolio is defined as a dated sequence of rebalances rather than a static weight vector. Between rebalances, weights drift with returns, and the allocation shown is the weight that actually earned each month’s return. Trade attribution compares the realized sequence against buy-and-hold and against annual rebalancing over the same period.
Projections are produced by block bootstrap of the portfolio’s own historical monthly returns. A withdrawal is escalated with inflation, preserving its purchasing power across the horizon; a contribution is not escalated, and is modeled at the amount entered. A projection can only resample the regimes contained in its sample, and the application discloses where the sample contains no material drawdown. Projections are hypothetical and are not a forecast.
Models: screening, blending, publishing
A model is a policy plus sleeves. The policy fixes the benchmark, the advisory fee, the main window (36 months by default, any length from 12 to 240 months), longer check windows, a tracking-error budget, a per-fund cap, a beta range, the stress episodes, the score formula and, optionally, a candidate list of tickers. Each sleeve has its own benchmark and screens its own candidates — the asset class and categories it names, or a pasted list (its own, else the model's) — and may be measured over a window of its own, typically starting when its youngest shortlisted fund starts. A sleeve's Screen, Compare and Blend use its window; Assemble, the stress test and the model's numbers use the main window.
Net of the advisory fee. The fee is billed a quarter at a time, so a
fund's net monthly return is (1 + gross) × (1 − fee / 4) − 1 in a
billing month (March, June, September and December in arrears; January, April,
July and October in advance) and the gross return otherwise. Benchmarks are
never charged. An uploaded series marked “net of fee” is not charged again.
Measures. Over a complete window of n months: annualized return
Π(1 + r)12/n − 1; excess = annualized fund minus annualized
benchmark; tracking error = sample standard deviation of monthly (fund −
benchmark) × √12; information ratio = excess ÷ tracking error; IR/TE = IR ÷
(tracking error in percent); beta = slope of fund on benchmark; capture =
annualized return in the benchmark's up (down) months, fund ÷ benchmark × 100;
maximum drawdown measured from the growth of $1, the starting dollar counting
as a peak; rolling excess (t3xR, t12xR) = fund growth minus benchmark growth
over the trailing 3 or 12 months. The firm's second tracking error is measured on
that 3-month excess: the sample standard deviation of the overlapping 3-month excess
over each run of three months inside the window, × √4, with the information ratio and
IR/TE on it defined the same way. A series missing any month of a window is
reported as not covering it, never annualized over fewer months.
Benchmarks. A model or sleeve can be measured against an index or index fund, a fixed blend of them, inflation (CPI) plus a margin, or an uploaded monthly return series — the firm's own benchmark when the universe does not carry it. Benchmarks are never charged the advisory fee.
Screen score. Candidates are ranked on a weighted formula of measures, each
net of the fee and against the sleeve benchmark. New models rank on net IR/TE alone
(the information ratio divided by tracking error in percent, which favors steady
outperformance with little deviation). Ready-made alternatives add low overlap (one
minus the highest correlation of the fund's monthly excess returns with a fund
already in the blend), consistency (the share of checks passed: each
third of the main window and each longer check window in which the fund beat the
benchmark), stress (average excess over the stress episodes covered), the median
rolling 3-year information ratio over the last N years, the share of rolling 12-month
periods that beat the benchmark, down capture, maximum drawdown, the expected IR and
the expense ratio. A model can also build its own formula from up to eight measures —
these, net excess, tracking error, up capture, the IR on 3-month excess and the length
of record — each over the main window or the last N years where that applies, at any
weights (scaled to add up to 100%). Each measure becomes a percentile rank, the
number of ranked values below x ÷ (the count − 1) — in a spreadsheet
COUNTIF(values, "<" & x) ÷ (COUNT(values) − 1), with ">" for a
lower-is-better measure such as tracking error, down capture or expense — taken on
the measures rounded to 12 significant digits so near-identical funds tie, a missing
measure taking 0.5, and the score is their weighted sum × 100. Only funds
that cover the whole window and fit the sleeve rank: R² against the sleeve
benchmark must reach the sleeve's minimum (0.75 for US large cap by default;
none for alternatives and inflation hedges, which are chosen for not tracking
an index). Share classes of one fund are collapsed to the cheapest class that
covers the window, and vehicles a brokerage account cannot hold (529
college-savings portfolios, insurance-only portfolios, collective trusts) are
left out by default.
Evidence. An information ratio from a short record is mostly noise.
The expected IR takes the IR over the longest of the last 10, 7, 5 or 3 years
that the fund fully covers and shrinks it toward zero by that length:
IR × years ÷ (years + 3). Records under
three years are labeled thin. Style tilt regresses a fund's monthly excess on
value, size, momentum and quality spreads built from index funds; when the
spreads explain at least 40% of it, the dominant tilt is named, because that
part of the edge can be bought with an index fund. The intercept, annualized,
is reported as alpha after style.
Blending. A blend is a fixed mix rebalanced monthly. The optimizer maximizes the blend's information ratio exactly as it is shown — compounded net excess over the tracking error of the monthly net excess — subject to the cap, the tracking-error budget and the beta range, from several starting points. It aims 0.002% inside the budget so that rounding the weights to 0.1% cannot carry the tracking error over it, and the numbers shown with a suggestion are those of the rounded weights that will be saved. A limit counts as broken only beyond what the page shows: tracking error to 0.01%, beta to 0.01, a weight to 0.1%. When the budget and the beta range cannot both hold, beta is freed first; when even the budget cannot hold, the lowest-tracking-error mix is shown. Each fallback is stated. The robust mix averages the optimizer's answer with equal weight. A fund's contribution to excess is its weight × its average monthly excess × 12, scaled so the contributions add up to the blend's compounded net excess. The walk-forward check repeats the screen and the optimizer at each quarter-end from seven years to one year before the latest month, using only data available then, and records the blend's net excess over the following twelve months, so the edge a screen promises can be compared with the edge that survived. A month a held fund has no return for takes the sleeve benchmark's return after the fee and is listed. Funds that have closed or merged are not in the data, so they were never candidates: the check is, if anything, flattering.
The model and stress. The model's monthly return is the sleeve-weighted sum of the sleeve blends. Each sleeve's share of tracking error is its weight × the covariance of its excess with the model's excess ÷ the model's tracking variance. In each stress episode the model's cumulative return is compared with the benchmark's and with what beta alone predicts. When holdings did not exist during an episode, the replay is marked “with stand-ins”: each missing fund-month takes a stand-in's return after the fee — the sleeve's benchmark, or when that does not reach back the sleeve type's fallback fund, else the model benchmark — and every stand-in is listed.
Review and publishing. Each step records the inputs it was confirmed with; when an input changes, the step is marked for review with the reason. The inputs include the funds a blend holds (they set the screen's overlap measure) and, for an uploaded series, any upload that changed months already there or its fee treatment; a new month added at the end is new data, as it is for a fund. Publishing freezes the draft as a numbered version with a journal note and the numbers it had; client accounts follow the published version. Every change is recorded with the user who made it. A model or sleeve can be exported to an Excel workbook that recomputes its statistics, ranks, scores, consistency checks, blends, model and stress episodes with formulas from the monthly returns, and checks each formula against the application's value. The optimizer, the walk-forward check, style tilts and the long-run IR are searches or fits over other windows; the workbook reports them but does not rebuild them.
Client accounts: trades and tax estimates
A trade plan targets account value × (1 − cash target) × model weight
for each fund in the published model's look-through, skips trades below the
minimum trade size, sells in full any fund the model does not hold, and scales
buys so cash never goes negative. Custodian exports are per position, not per
lot, so the gain on a sale is estimated conservatively: losing lots are assumed
to be sold first, and the estimate is the larger of “every reported loss
realized, the rest of the sale at the winning lots' gain” and “only the sale's
pro-rata share of the reported losses” — the worst case whatever the losing lots
are worth. Gains are taxed at the long-term rate only when the newest purchase is
more than a year old. The switching hurdle — tax ÷ (sale × the account's payback
years, 3 by default) — is the extra return a year a replacement must earn to
repay the tax; above 1% a year a sale is marked “consider holding”. Estimates,
not tax advice.
Limitations
- Monthly granularity understates intra-month drawdowns and daily-path risk.
- Sharpe subtracts a Treasury bill rate; Sortino applies a minimum acceptable return of zero. The two are therefore not directly comparable. Alpha uses the same Treasury bill rate as Sharpe.
- The universe contains only funds currently in existence, which biases long-horizon category statistics upward.
- Expense ratios are unavailable for a substantial proportion of the universe. Filters on cost report the number of funds they could not evaluate; that figure should be read alongside the result.
- All measures published here are quantitative heuristics intended for research. They are not investment advice and not a recommendation to buy or sell any security.
Each profile page states the exact period, benchmark and as-of date behind the figures it displays.