Methodology

How Fund Compare works

The technical approach behind returns, dividends, volatility, and portfolio projections — so you can read every number with context.

What this site is for

Fund Compare is a research tool for placing stocks, ETFs, and robo-advisor portfolios side by side. You pick a time period and an investment amount; the app then shows price performance, estimated dividend income, and how bumpy the ride has been.

The Robo vs ETF page groups Canadian robo advisors with all-in-one ETFs (VBAL, VGRO, and similar) by conservative, balanced, growth, and aggressive styles.

It is built to make comparisons consistent: the same date range, the same dollar amount, and the same formulas for every holding. It is not a brokerage, tax engine, or recommendation service.

How returns are calculated

Each fund’s price return uses the closest available closing prices on or before the start and end of the selected period:

Price return = (end price − start price) / start price × 100

That number is capital gain or loss only. It does not include cash you would have received as dividends.

Total return

The figure labelled Total return adds an estimated dividend contribution for the same window:

Dividend return = annual yield × (days in period / 365.25) Total return = price return + dividend return

Example: a fund that rose 8% in six months with a 4% annual yield is shown as about +10% (8% price + 2% dividends).

Projected value applies that total return to the investment amount you entered:

Projected value = investment × (1 + total return / 100)

On the portfolio table, that projected value does include dividends, because it uses each fund’s total return, not price return alone.

How dividend dollars are estimated

Yield and payout frequency come from stored fund fundamentals (refreshed from Yahoo Finance in admin). We do not replay each historical ex-dividend date inside the period; we prorate the current annual yield.

For a single fund, estimated cash at each payout is:

Payout $ = investment × (yield / 100) / payouts per year

Frequency mapping: monthly = 12, quarterly = 4, semi-annual = 2, annual = 1. If frequency is unknown, the annual amount is shown instead.

Portfolio dividend totals

Portfolios treat holdings equally — the same approach used for average return. The investment is split evenly across the portfolio’s funds, then each fund’s prorated yield is summed:

Period dividends = investment × average(fund dividend returns) Annual dividends = investment × average(fund yields)

The portfolio column shows the period estimate in dollars, with the annual run-rate underneath.

What standard deviation means

Standard deviation (std. dev.) is a measure of volatility: how much daily returns have bounced around their average. A higher number means a wider typical range of outcomes — more uncertainty, not necessarily a worse investment.

We compute it from daily closing prices in the selected period:

  1. Turn each pair of consecutive closes into a daily return: (today − yesterday) / yesterday
  2. Take the sample standard deviation of those daily returns (divide by n − 1)
  3. Annualize so different periods are comparable: daily σ × √252 × 100

252 is the usual count of US trading days in a year. The result is a percent, such as 18.40%.

Colour bands

Highlights are a simple reading aid, not a risk rating from a regulator or a fund fact sheet:

Under 15% Lower volatility — typically steadier holdings 15–25% Moderate — common for broad equity funds Over 25% Higher — larger day-to-day swings

A low-volatility fund can still lose money. A high-volatility fund can still compound well over long periods. Use the colour as a scan cue, then read it next to return and dividend income.

Portfolio std. dev.

The portfolio figure is the average annualized std. dev. of its funds, equally weighted. It describes how volatile the holdings have been, not a full portfolio risk model. It does not adjust for correlation (diversification can make a real portfolio less volatile than this average).

The separate Risk /10 pill is different — see portfolio risk.

How we use risk in portfolio composition

The Risk /10 column on the home page is calculated from the portfolio’s composition — the funds listed for that portfolio in admin. It answers a different question from std. dev.: not “how jumpy is each holding day to day?”, but “how far apart did those holdings finish over this period?”

What it measures

We take each holding’s total return for the selected period, then measure how spread out those returns are:

σ = standard deviation of the funds’ period returns Risk /10 = min(10, round(σ / 2))

A portfolio whose funds all returned about the same number gets a low score. A mix where one holding surged and another fell gets a high score — the composition is less even over that window.

Colour bands

0–3 /10 Holdings moved together 4–6 /10 Moderate spread across funds 7–10 /10 Wide gap between best and worst holdings

What it is not

  • It is not the Growth / Balanced / Aggressive label you pick when creating a portfolio in admin. That label is a category for the portfolio itself; it does not feed this score.
  • It is not the Std. dev. column. Std. dev. averages each fund’s daily volatility. Risk /10 looks at how different the funds’ period returns are from one another.
  • It needs at least two holdings with return data. A one-fund portfolio shows a dash or 0, because there is no spread to measure.

Composition weights affect average return, std. dev., and dividend estimates. The Risk /10 spread currently treats each holding’s period return equally, so a small sleeve that behaved very differently can still move the score.

How portfolios are aggregated

Each visible robo-advisor portfolio is summarised from the funds assigned to it:

  • Avg return — average of each fund’s total return (price + prorated dividends), weighted when composition weights are set
  • Risk /10 — how spread out those fund returns are from each other (see portfolio risk)
  • Std. dev. — average of each fund’s annualized daily volatility
  • Est. dividends — investment × average dividend return for the period
  • Projected value — investment grown by the average total return, so dividends are included

Holdings come from the portfolio composition list in admin. If you set weights, averages are weight-based; otherwise each fund is treated equally. A fund can belong to more than one portfolio. The Robo vs ETF page uses the same weighted averages for robos and the fund’s own return for all-in-one ETFs, grouped by risk style.

Click a portfolio name on the home page to open composition details. That page lists every holding, lets you change the investment amount and performance period, shows each fund’s weight and contribution to the portfolio return (those contribution percentages add up to the portfolio total), and charts daily prices for the window.

Where the data comes from

  • Prices — daily adjusted closes fetched live from Yahoo Finance and cached at Cloudflare’s edge for a few minutes
  • Yield, frequency, next payout — Yahoo Finance fundamentals, or values edited in admin
  • Names, types, portfolios — maintained in the admin panel

If a fund has too few daily prices in the window (fewer than three closes), std. dev. is shown as a dash. If yield has not been filled in, dividend estimates are omitted rather than guessed.

Limits you should know

  • Dividend return uses the current yield spread across the period. Actual dividends paid in that window may have been higher or lower.
  • Prices are split-adjusted closes from Yahoo Finance. Very new listings or symbols Yahoo does not cover will show dashes until data is available.
  • No fees, taxes, FX conversion, or reinvestment compounding beyond the simple yield proration.
  • Past volatility and returns are not forecasts.

Figures are for illustration and comparison only. They are not financial advice. Check official fund documents and a qualified advisor before investing.