Documentation Sections

  1. Saving Portfolio and Simulation Models
  2. Importing Portfolios
  3. Importing Cashflows
  4. Importing Correlations
  5. Custom Data Series and Benchmarks
  6. Backfilling Asset Returns
  7. Saving Capital Market Expectations
  8. Customizing Reports
  9. Modeling Advisor Fees
  10. Locating Ticker Symbols
  11. Entering Portfolio Allocations
  12. Expense Ratios, Dividends and Short Positions
  13. Methodology
  14. Terms and Definitions
  15. Data Sources for Factor Returns
  16. Data Sources for Asset Class Returns
  17. Data Sources for Market Data

When you are signed in with your registered account you will see a "Save Portfolio" link under the portfolio asset allocation section of the results. Similarly, if the portfolio is already saved or you have selected an existing saved portfolio, the section will refer to the saved portfolio name. The results section for Monte Carlo simulations, portfolio optimization, and timing models also include a corresponding link to save the related model.

There are two types of saved portfolios, ticker level portfolios consisting of specific mutual funds, ETFs and equities, and asset class level portfolios with asset class specific allocation weights. If you create and save an asset class level portfolio, it will be available in the dropdown list in the tools that are based on asset class level allocations, and vice versa for ticker based portfolios. You can see the list of saved portfolio models and their type in the saved models section under your preferences. When selecting a saved portfolio model from the dropdown menu the list will contain the portfolios for the selected portfolio type, i.e., if you choose "Asset classes" as the portfolio type in the Monte Carlo, Efficient Frontier, Optimization, or other tools, the dropdown menu will show saved asset class level portfolios. If you choose "Tickers" as the portfolio type, then the dropdown list will show securities based saved portfolios.

You can also save both portfolio backtest and timing model results as benchmarks and custom data series. In the save dialog you can change the "Save As" option to "Benchmark", and you can then use the saved data series as a benchmark comparison or asset in any other models based on the assigned custom ticker symbol.

The login menu in the top right-hand corner provides the options to view and manage the list of saved models and benchmarks. You can click on the screenshots below to see the links in detail.

Save portfolio link Select saved portfolio Profile menu dropdown

You can import return series for use as portfolio assets, benchmarks, or risk factors. The imported return series can be based on daily, monthly, or quarterly (e.g. private equity and hedge funds) returns or index values. The imported data series can be made available in all the tools based on the assigned custom ticker symbol, and you can also indicate whether the return series should be made available as an asset class, e.g., in the Monte Carlo simulation tool.

To import a data series, access the "My Models" menu in the top right-hand corner after signing in and select the "Import Data Series" option to open the page for imports. The import data series page provides options to download sample files showing the expected file layout for data series, and the import can be done using either Excel or CSV file format.

You can also create derived data series based on existing securities. This adds an easy option to create blended benchmarks that will always be up-to-date when the underlying asset data is updated. The dynamic data series can be constructed either as a portfolio allocation, or based on an Excel like mathematical formula expression referencing asset returns and other data series. Expressions can be defined directly, e.g, 0.6*SPY+0.4*AGG, or they can be conditional, e.g., IF(SPY>EFA,SPY,EFA) or MIN(LQD,IEF).

Import return series page Create data series as static allocation Create data series as formula expression

You can import a portfolio for use with any of the tools if you already have the portfolio allocation defined in or exported into a file. The import format requires two columns with the first column containing the ticker symbol for the asset and the second column containing either the balance or allocation weight for the asset. The import uses a standard Excel or CSV file format, and you can download a sample file from the import portfolio page. To import a portfolio access the "My Models" menu in the top right-hand corner after signing in and select the "Import Portfolio" option to open the page for portfolio imports. The import portfolio option is also available directly on all portfolio entry pages in the associated dropdown menu (see the gear icon menu) for each portfolio allocation.

In tools such as Monte Carlo simulations and portfolio optimization where user can provide forward looking capital market assumptions or allocation constraints the import format also supports providing these directly for the portfolio assets in the import file as shown in the example below.

  1. Portfolio import file with allocation weights: Download
  2. Portfolio import file with asset balances: Download
  3. Portfolio import file with capital market expectations and allocation constraints: Download
Import portfolio page Import portfolio menu link

For Monte Carlo simulations you can import cashflows from Excel or CSV files. The cashflow amounts are listed as one per line, and positive amounts are treated as contributions, negative amounts are withdrawals. The frequency of the cashflows is specified in the user interface, i.e., if you mark the cashflows as annual, each input line would correspond to annual cashflow, with monthly cashflow frequency each row would correspond to a monthly cashflow. If there are periods without cashflows, you can use zero as the cashflow amount for those periods.

For custom correlations you can import the correlation matrix from a CSV or an Excel file. The import process will look for an N x N symmetric matrix in the file where N is the number of assets in your portfolio. The first numeric cell in the input file is assumed to be the top left corner of the matrix. The row and column order is expected to match the entered portfolio assets, i.e., any row and column titles are optional are not used.

The provided sample correlation matrix will work for any portfolio with four assets.

Sometimes a portfolio model can contain assets with a relatively short history, e.g., new ETFs with a recent inception date. To extend the available data for the portfolio model analysis you can map assets with a short history to their closest proxy, such as the tracked index or a similar passive index fund, which is then used to backfill the asset returns. for the longer time period. You can also configure the backfill to happen automatically based on the oldest share class of the fund.
Configure backfills

Several tools such as efficient frontier and Monte Carlo simulation support the use of forward looking capital market expectations for asset returns and volatilities. In the related preferences section you can save the capital market expectations for later use, which then easily allow you to populate them on the efficient frontier and Monte Carlo simulation screens by accessing the related dropdown menu entry as shown in the image below.
Save expectations link Populate expectations menu dropdown

You can customize the report template to use your own company name, cover page, logo, web site link, fonts, color palette, and disclosures in the generated PDF reports.
Report template page

You can model advisor fees and include them into portfolio backtesting. The supported fee structures include:
  • Fixed percentage of assets
  • Fixed fee amount
  • Tiered percentage based on assets
  • Tiered fee amount based on assets
  • Performance and assets based fee amount
The payment schedule for fees can be monthly, quarterly or annual. You can access and create fee structures on your preferences page. In portfolio backtesting fees are applied first before any scheduled withdrawals or contributions. Note that the fee structure selection is only visible in portfolio backtesting if fee structures have been configured.
Modeled fee structures Edit fee structure page

The search icon next to the ticker entry fields (magnifying glass ) can be used to quickly locate ticker symbols based on asset name or type. The search box also helps to identify special tickers such as CASHX used for cash and ^GOLD used for gold price index. In most ticker entry fields you can also just type a partial name or a set of name components, e.g., "vanguard bond" to enable the ticker symbol lookup.

By default portfolio asset weights are entered as percentages. The related context menu for allocation weights allows you to quickly clear the existing allocation weights, populate weights for an equal-weight allocation, or normalize the weights so that they add up to 100%. You can also choose to enter the portfolio allocations as dollar amounts, and then use the normalize option to switch from dollar amounts to percentages.
Normalize weights

The performance history of a mutual fund or an ETF includes all embedded fees, costs, and expenses of the fund, such as the manager's advisory fee, brokerage commissions associated with the acquisition of portfolio securities, and fund operating costs like legal and accounting fees. These fees are reflected in each fund's expense ratio and are deducted from the value of each fund share. The displayed performance is then calculated based on the value of fund shares and is thus net of these fees. This SEC publication provides more information on how the mutual fund share prices are calculated and how any fees are handled. Any commissions associated with the sale or purchase of fund shares are not included, and investors who also engage an investment adviser to manage their assets generally also pay a separate advisory fee to their advisor.

All returns for long positions are based on total return including dividends and capital gains distributions. Short positions can be entered by specifying a negative allocation weight for the shorted assets.

Asset Class Allocation Backtesting

The asset allocation backtesting tool uses asset class return data to backtest simulated portfolio returns. The asset allocation backtesting tool calculates portfolio returns (end balance, CAGR, IRR), risk characteristics (standard deviation, Sharpe ratio, Sortino ratio, maximum drawdown), and rolling returns based on monthly data. The risk free rate is based on historical 3-month treasury bill rates published by FRED. Inflation adjusted returns, withdrawals and contributions are based on the CPI-U data from the Bureau of Labor and Statistics. Internal rate of return (IRR) is shown for portfolios with periodic withdrawals or contributions. By default the simulated portfolio is rebalanced annually. Asset allocation drift data is displayed under the results section if rebalancing is disabled. Calendar based rebalancing can also be set to monthly, quarterly, or semi-annual frequency. Rebalancing bands are also supported, and the default rebalancing bands are based on 5% absolute deviation from the target allocation (large allocations), or 25% relative deviation from the target allocation (small allocations). If the target allocation for an asset is 60%, then the absolute deviation threshold would trigger rebalancing when the asset's weight in the portfolio hits 65% or 55%. If the target allocation for an asset is 10%, then the relative deviation threshold would trigger rebalancing when the asset's weight in the portfolio hits 12.5% or 7.5%.

Portfolio Backtesting

The portfolio backtesting tool calculates portfolio returns (end balance, CAGR, IRR) based on monthly asset returns. Risk characteristics (standard deviation, Sharpe ratio, Sortino ratio) are calculated from monthly returns and annualized, and maximum drawdown is calculated from monthly portfolio balances. The portfolio backtesting tool uses total return data for the specified mutual funds, ETFs and stocks, and assumes by default that all dividends and capital gains distributions are reinvested. The risk free rate is based on historical 3-month treasury bill rates published by FRED. Inflation adjusted returns, withdrawals and contributions are based on the CPI-U data from the Bureau of Labor and Statistics. Internal rate of return (IRR) is shown for portfolios with periodic withdrawals or contributions. By default the simulated portfolio is rebalanced annually. Asset allocation drift data is displayed under the results section if rebalancing is disabled. Calendar based rebalancing can also be set to monthly, quarterly, or semi-annual frequency. Rebalancing bands are also supported, and the default rebalancing bands are based on 5% absolute deviation from the target allocation (large allocations), or 25% relative deviation from the target allocation (small allocations). If the target allocation for an asset is 60%, then the absolute deviation threshold would trigger rebalancing when the asset's weight in the portfolio hits 65% or 55%. If the target allocation for an asset is 10%, then the relative deviation threshold would trigger rebalancing when the asset's weight in the portfolio hits 12.5% or 7.5%.

Portfolio Optimization

The portfolio optimization tool supports optimizing portfolios based on the following strategies:

  • Mean Variance Optimization – Mean variance optimization finds the optimal risk adjusted portfolio that lies on the efficient frontier. The approach is based on the modern portfolio theory developed by Harry Markowitz. Markowitz stated that a rational investor should either maximize his expected return for a given level of risk, or minimize his risk for a given expected return. Modern portfolio theory supports portfolio risk optimization via diversification, i.e., an investor can reduce portfolio risk simply by holding a combination of assets that are not perfectly correlated, and may get the same portfolio expected return with reduced risk. Mean variance optimization calculates the optimal portfolio asset allocation weights in order to maximize the expected return of the portfolio for a given level of risk. However, while intuitively straight-forward, mean variance optimization has several underlying weaknesses including:
    • Assumption that asset returns follow the normal distribution (ignores skewness and kurtosis)
    • Optimization concentrates the portfolio assets into the best performers based on past performance thus losing future diversification benefits
    • Instability of results as even small changes to the input parameters, especially expected returns, change the optimization results significantly, and asset returns, volatilities and correlations change over time rather than being exact fixed values
    • Diversification is done across portfolio assets rather than risk factors
    • Optimization is based on a single-period model
    Several options are supported to address the mean variance optimization weaknesses:
    • Constraints can be used to enforce allocation level ranges and portfolio diversification
    • Return estimates can be based on forward looking capital market assumptions rather than historical data or derived via reserve optimization (Black-Litterman model)
    • Monte Carlo method can be used to resample the optimization inputs to mitigate the impact of estimation error in the mean variance optimization inputs and improve diversification
  • Risk parity – This portfolio optimization strategy finds the portfolio that equalizes the risk contribution of portfolio assets
  • Tracking Error – This portfolio optimization strategy finds the portfolio with the minimum tracking error against the selected benchmark
  • Information Ratio – This portfolio optimization strategy finds the portfolio with the maximum information ratio against the selected benchmark
  • Conditional Value-at-Risk – Conditional Value-at-Risk (CVaR), also known as expected shortfall and expected tail loss, considers the downside part of the portfolio return distribution. Optimizing the portfolio to minimize Conditional Value-at-Risk finds the portfolio with the smallest expected tail loss. For the purposes of optimization the left tail is defined as the bottom 5% of returns and the optimization minimizes the 5%-quantile expected shortfall.
  • Kelly Criterion – This portfolio optimization strategy finds the portfolio with the maximum expected value of the logarithm of wealth, which is equivalent to maximizing the expected geometric growth rate.
  • Sortino ratio – This portfolio optimization strategy finds the portfolio that maximizes the Sortino ratio for the given minimum acceptable return. The Sortino ratio measures the risk-adjusted return of a portfolio, or strategy, but unlike the Sharpe ratio, it only penalizes for returns falling below the target return, whereas the Sharpe ratio penalizes both upside and downside volatility equally.
  • Omega ratio – This portfolio optimization strategy finds the portfolio that maximizes the Omega ratio for the given minimum acceptable return. The Omega ratio is the probability weighted ratio of gains versus losses against the given target return. A higher Omega ratio implies greater probability that the given target return will be met or exceeded
  • Maximum drawdown – This portfolio optimization strategy finds the portfolio with the minimum worst case drawdown with optional minimum acceptable return

The optimizer uses differential evolution algorithm for optimizing problems that cannot be solved directly with linear or quadratic programming solvers. The results from the evolutionary algorithm for non-convex optimization problems may vary slightly between optimization runs depending on convergence to global optimum.

References:

Black-Litterman Model

The Black-Litterman asset allocation model combines ideas from the Capital Asset Pricing Model (CAPM) and the Markowitz’s mean-variance optimization model to provide a method to calculate the optimal portfolio weights based on the given inputs. The model first calculates the implied market equilibrium returns based on the given benchmark asset allocation weights, and then allows the investor to adjust these expected returns based on the investor's views. The opinion adjusted returns are then passed to the mean variance optimizer to derive the optimal asset allocation weights. The Black-Litterman model supports both absolute views (expected return for the given asset) and relative views (asset #1 will outperform asset #2 by X), and addresses many of the shortcomings of mean-variance optimization, which often results in concentrated portfolios based on past asset performance.

References:

Monte Carlo Simulation

The Monte Carlo portfolio simulation tool provides a means to test long term expected portfolio growth and portfolio survival based on withdrawals. The following simulation models are supported for portfolio returns:

  • Historical Returns - Simulates future returns by randomly sampling returns from the database of available historical returns (empirical sampling). Supported bootstrapping options for sampling including:
    • Single Month ‐ This option generates return series by selecting the returns for each month from a randomly selected past year and month. The cross correlation of assets is retained but sampling individual monthly returns will not capture any serial correlation.
    • Single Year ‐ This option generates return series by selecting the returns for each year from a randomly selected past year. Sampling full calendar year returns avoids any seasonality bias and captures both cross correlation and some of the serial correlation of assets.
    • Block of Years ‐ This option selects a random sequence of annual returns and better captures the serial correlation and mean reversion of assets. Block bootstrapping may overweight the central periods unless circular block bootstrapping is used, in which case the year range for the block sequence is allowed to wrap around, e.g., selecting a 10-year block with random start year of 2010 would first use returns from 2010-2014 and then wrap around to 1972-1976.
    The differences between the bootstrapping options relate to how well they capture the serial correlation of assets and how many different return paths they can support. Capturing the serial correlation of portfolio assets in the simulation better reflects the typical market behavior, e.g., bull vs bear market year returns and the mean reversion of asset class returns throughout market cycles. However, as the sampling period grows less granular, the number of possible simulated returns paths will decrease. With historical inflation model the inflation for each simulated year and month is based on the selected historical data point's inflation rate.
  • Statistical Returns - Simulates future returns for portfolio assets based on each asset's historical mean and standard deviation, and the correlation of the assets. Supported time series models include normal returns, in which case asset returns are modeled as multivariate correlated normal samples, and GARCH model, which models asset returns using stochastic volatility model based on the fitted GARCH(1,1) model for each asset in order to better capture time varying and serially correlated volatility and fat tails of the return distribution. At least 5 full years of data for selected portfolio assets is required for this simulation model, and the portfolio assets are assumed to be rebalanced annually. The inflation for each simulated year is based on either historical data, or user provided distribution. The inflation samples are created so that inflation correlation with simulated portfolio assets is preserved.
  • Forecasted Returns - Simulates future returns for portfolio assets based on the user provided mean and standard deviation of assets combined with historical or imported asset correlations. Supported time series models include normal returns, in which case asset returns are modeled as multivariate correlated normal samples, and GARCH model, which models asset returns using stochastic volatility model based on the fitted GARCH(1,1) model for each asset in order to better capture time varying and serially correlated volatility and fat tails of the return distribution. At least 5 full years of data for selected portfolio assets is required for this simulation model, and the portfolio assets are assumed to be rebalanced annually. The inflation for each simulated year is based on either historical data, or user provided distribution. The inflation samples are created so that inflation correlation with simulated portfolio assets is preserved.
  • Parameterized Returns - Simulates future returns based on the specified statistical distribution with the given mean and standard deviation. The supported distributions include normal distribution, and a fat-tailed Student's t-distribution. The inflation for each simulated year is by default based on normal distribution matching the historical annual CPI-U data mean and standard deviation. Alternatively the mean and standard deviation for inflation can be specified explicitly.

Periodic contributions and withdrawals are supported, and the amounts can be adjusted for the simulated inflation. For withdrawals the tool also supports withdrawing a fixed percentage from the portfolio periodically, or withdrawing a variable percentage based on remaining life expectancy. Fixed percentage based withdrawals can be smoothed with spending rules. Rolling average spending rule calculates the withdrawal amount as a percentage of the rolling average portfolio balance, and geometric spending rule calculates a weighted sum of the prior period's spending level adjusted for inflation and the percentage of the current portfolio balance where the former is multiplied by the smoothing rate and the latter by one minus the smoothing rate. For life expectancy based withdrawals the current age is a required parameter, and the age is assumed to increase by 1 before the end of the first simulated year, i.e., if the current age is 70, then the first year's withdrawal is based on remaining life expectancy at age 71. If the withdrawal frequency is not annual, then the percentage is adjusted automatically, e.g., quarterly withdrawals would use one quarter of the annual percentage amount (one divided by remaining life expectancy). Life expectancy tables are based on IRS Publication 590-B. For percentage based withdrawals the tool displays the withdrawals both in nominal dollars and in present dollars per the simulated inflation model.

The cashflows for withdrawals and contributions can also be imported from a file. The file can be a text, CSV or Excel file with the cashflow amounts, one amount per line/row. Positive amounts are contributions, negative amounts are withdrawals. The frequency of the cashflows is specified in the user interface, i.e., if you mark the cashflows as annual, each input line would correspond to annual cashflow, with monthly cashflow frequency each row would be a monthly cashflow. If there are periods without cashflows, the cashflow amount would be zero for those periods.

The simulation model supports testing for the sequence of returns risk. The sequence of returns risk is the risk of receiving poor returns early in a period when withdrawals are taken from a portfolio, e.g., when starting retirement. These poor early returns may cause the portfolio to be depleted much faster than expected based on historical averages. The stress testing model allows the user to specify the number of years of poor early returns, and the simulated return series is adjusted so that the worst returns occur upfront. For example, if the sequence of generated returns is [1%, 5%, -2%, -7%, 4%], then stress testing for 1 poor return upfront would adjust the return series to [-7%, 1%, 5%, -2%, 4%], and stress testing for 2 poor returns upfront would adjust the return series to [-7%, -2%, 1%, 5%, 4%].

Efficient Frontiers

The efficient frontier is a concept in modern portfolio theory introduced by Harry Markowitz in 1952. The efficient frontier tool shows the return and risk curve for the mix of the selected assets that minimizes the portfolio risk measured by volatility for the given expected return. The tool also supports rendering the geometric mean efficient frontier, which addresses the single period nature of traditional mean variance optimization by displaying the expected portfolio growth rate in a multi-period context, where the return is given by the geometric rather than the arithmetic mean. Since the arithmetic mean of any return series is always greater than the geometric mean, the return predicted by the Markowitz efficient frontier is always greater than the true long term return that would have been obtained by using the actual rebalanced allocation. Efficient frontiers can be constructed based on historical returns, or forecasted returns for and volatilities. Forward-looking efficient frontier portfolios are based on the user-specified expected returns and volatility combined with historical asset correlations. Monte Carlo method can be used for more robust optimization that resamples the optimization inputs to mitigate the impact of estimation error in the mean variance optimization inputs and improve diversification.

References:

Asset Correlations

The asset correlation tool computes the Pearson correlation for the selected assets based on daily, monthly or annual asset returns. The tool also shows the annualized return for the selected assets based on the compound annual growth rate formula and the selected asset return series. Monthly standard deviation is calculated based on full calendar months within the time period for the selected tickers.

Factor Regression

The factor regression analysis tool enables risk factor exposure analysis of mutual funds, ETFs, and portfolios. The supported equity models include:

  • The capital asset pricing model (CAPM) with market factor (MKT)
  • The Fama-French three factor model with market, size, and value factors (MKT, SMB, HML)
  • The Carhart four-factor model with market, size, value, and momentum factors (MKT, SMB, HML, MOM)
  • The Fama-French five factor model with market, size, value, profitability, and investment factors (MKT, SMB, HML, RMW, CMA)
  • The q-factor model with market, size, investment, return on equity, and expected growth factors (MKT, ME, I/A, ROE, EG)

Additional supported equity risk factor models include:

  • Short and long-term reversal factors (STREV, LTREV) based on Fama-French factor data
  • Quality (QMJ) based on both AQR and Alpha Architect factor data
  • Bet against beta (BAB) factor based on AQR factor data

The multiple linear regression shows how well the returns of the given assets or a portfolio are explained by the risk factor exposures. The analysis is based on monthly asset returns (total return) and monthly factor returns. Term and credit risk factors are also supported to enable analysis of fixed income funds and balanced funds. The supported fixed income factor models include:

  • Term and credit risk based 2-factor model where the term risk premium is calculated as the difference between long-term treasuries and treasury bills and the credit risk premium is calculated as the difference between long-term corporates and long-term treasuries. This model is not adjusted to account for the differences in the interest rate sensitivities of long-term treasuries and corporate bonds (refer to the Hallerbach and Houweling, and Asvanunt and Richardson papers listed below).
  • Term and credit risk based 2-factor model where the term risk premium is calculated as the difference between long-term treasuries and treasury bills and the credit risk premium is calculated from the long-term corporates and long-term treasuries while accounting for the differences in the interest rate sensitivities of long-term treasuries and corporate bonds (refer to the Hallerbach and Houweling, and Asvanunt and Richardson papers listed below).
  • Term and credit risk based 4-factor model where term factor is split to intermediate term (intermediate term treasuries minus the risk free rate) and long term (long minus intermediate term treasuries) interest rate risk factors, and high yield credit risk (high yield corporates minus intermediate term treasuries adjusted for interest rate sensitivity) is added as an additional credit risk factor in addition to the credit risk premium calculated from the long-term corporates and long-term treasuries while accounting for the differences in the interest rate sensitivities of long-term treasuries and corporate bonds (refer to the Hallerbach and Houweling, and Asvanunt and Richardson papers listed below).

The fixed income factor premiums are calculated using the following funds:

  • Long-term treasury bond returns are based on Vanguard Long-Term Treasury Bond Index (VUSUX)
  • Intermediate-term treasury bond returns are based on Vanguard Intermediate-Term Treasury Fund (VFIUX)
  • Long-term corporate bond returns are based on Vanguard Long-Term Corporate Bond Index (VLTCX)
  • High-yield corporate bond returns are based on Vanguard High-Yield Corporate Fund (VWEAX)

The factor regression tool supports the use of robust standard errors based on the Newey–West estimator. The estimator can be used to try to overcome autocorrelation and heteroscedasticity of the residuals, which can impact the standard errors and thus the calculated t-statistics and p-values.

Note that historical equity factor returns are sometimes revised based on changes to CRSP database. Examples include updating and correcting the number of shares outstanding in past periods and changes in the treatment of deferred taxes described in FASB 109, i.e., factor returns published after August 2016 no longer add Deferred Taxes and Investment Tax Credit to BE for fiscal years ending in 1993 or later.

References:

Factor Exposure Matching

The factor exposure matching tool enables testing whether the factor exposures and performance of the given asset can be replicated using other available assets, e.g., by using cheaper and more widely available funds or ETFs with same factor exposures and performance rather than investing in a more expensive product. The tool computes the factor exposures of the target asset using the specified factor model and time period, and then explores the combinations of the given alternative assets to find the closest match. The factor matching can be weighted equally, in which case the tool tries to minimize the sum square of factor loading differences for statistically significant factors, or based on t-stat, in which case the absolute t-stat value of the factor loading is used to weight the squared differences to prioritize matching based on the most significant factors. The tool also displays the closest match based on straight performance matching for comparison purposes. The straight performance matching is based on a combination of alternative assets that minimizes the sum square of monthly return differences.

Market Timing

Valuation-based market timing with Shiller PE10 ratio

This model compares a baseline balanced portfolio (60% stocks, 40% treasury notes) with a portfolio that adjusts the stock and bond allocation based on the market valuation. The baseline portfolio is rebalanced annually, and the timing portfolio adjusts its allocation at the start of each year based on the Shiller PE10 ratio. The allocation changes to the timing portfolio are based on market valuation differing significantly from PE10 value of 18 (PE10 average since 1950).

References:

Moving average model

Moving average model uses the crossover of the moving average with the price or another moving average to decide whether to invest in the given asset. If the end-of-period price is greater than or equal to the moving average, the model will invest in the selected asset (risk on). If the end-of-period price is less than the moving average, the model will invest in an alternative safe asset, e.g., cash (risk off). Alternatively the crossover of price and moving average can be replaced with the crossover of two moving averages, typically using a shorter term moving average being higher than the longer term moving average as the buy signal. The moving average is calculated from adjusted close prices either based on end-of-month prices for monthly moving averages or daily prices when the moving average is specified in trading days. The start year of the timing model backtest is adjusted forward if necessary, so that there is enough historical data to trigger the timing signal from the start of the timing period. Trades are performed at either the end-of-period close price, or at next trading day's close based on defined trading policy. The delayed trading accounts for the fact that typically in practice one would not be able to execute the trade at the point in time when the signal becomes available.

References:

Relative strength based momentum model

The relative strength model uses the relative strength of an asset compared to other assets to decide which assets to invest in. The model favors assets with the best recent performance (momentum), and invests in one or more assets based on a performance ranked list of assets. The returns based momentum can be calculated over the specified time period directly, or by excluding the most recent month. The latter option addresses the short-term reversal effect, which is why academic momentum definition generally uses 2-12 momentum (last 12-month returns excluding the previous month). Two options for relative strength timing windows are provided:

  • Single Period - Single period model uses one timing window to calculate each asset's past performance. The calculated performance number is the asset's total return over the timing period. The calculated performance number can be risk adjusted based on volatility, in which case the model adjusts the asset return performance by calculating the average daily return over the timing period divided by the standard deviation of daily total returns over the volatility window period. The cash ticker (CASHX), if used, is excluded from the volatility adjustment.
  • Multiple Period - This model uses multiple weighted timing periods. The model first calculates the relative performance of the assets for each timing period based on total return, and then weights either the rankings or the asset performance based on user supplied weights for the timing periods. When assets are ranked by performance across multiple timing windows, you can specify whether the returns are normalized to annualized returns for each period before weighting, or whether the return over the timing period is used directly. If weighted rankings are used and two or more assets have the same weighted rank, then the performance or volatility window with the largest weighting determines the order. If the window weights are also equal, then the first specified time window is used to break the tie. Volatility can be used as an additional negative ranking factor, i.e., the asset with the lowest volatility is ranked first for the volatility window. Volatility calculations are based on the standard deviation of daily total returns.

Both models above also support moving average based risk controls, which allows the relative strength model selections to be overridden so that the model invests in cash instead of the asset if the price of the asset is below its moving average. The moving average can also be based on an external asset, e.g., SPY, rather than the invididual assets themselves for market regime based models. The moving average is calculated as described above. The start year of the timing model backtest is adjusted forward if necessary, so that there is enough historical data to trigger the timing signal from the start of the timing period. The months in the timing period are calendar months, and monthly changes are based on the end-of-month adjusted close price. Trades are performed at either the end-of-period close price, or at next trading day's close based on defined trading policy. The delayed trading accounts for the fact that typically in practice one would not be able to execute the trade at the point in time when the signal becomes available.

Stop-loss can also be used as an additional risk control measure and be applied either at individual asset or at the portfolio level. The stop-loss trigger is specific to each trade period and the loss is measured against the balance at the start of the timing period. If a stop-loss is triggered the model will stay out of the market until a new trade for the following timing period occurs.

References:

Dual momentum model

The dual momentum model combines relative momentum and absolute momentum based timing. Relative strength is used to select the best performing model asset(s) and absolute momentum is then applied as a trend-following filter to only invest in the selected asset(s) if the excess return over the risk free rate has been positive. If the excess return is negative, then the model invests in short- to intermediate-term fixed income instruments (the out-of-market asset) until the trend turns positive. The relative momentum performance is calculated as the asset's total return over the timing period, and the return of 3-month treasury bills is used as the risk free rate for the absolute momentum filter. The months in the timing period are calendar months, and monthly changes are based on the end-of-month adjusted close price. Trades are performed at either the end-of-month close price, or at next trading day's close based on defined trading policy. The delayed trading accounts for the fact that typically in practice one would not be able to execute the trade at the point in time when the signal becomes available.

Rapach and Strauss and Zhou (2013) find that the US stock market leads the world markets even at the monthly frequency, so the supported options include specifying a single asset to be used for absolute momentum. As discussed in Gary Antonacci's Dual Momentum book, we can first apply absolute momentum based on the US stock market (e.g. S&P 500 TR) and assuming the excess return over the risk-free rate is positive, we use relative momentum to choose between US equity and international equity. If the absolute momentum excess return is negative, the model is invested in the selected out-of-market asset, e.g., Barclays U.S. Aggregate Bond Index.

References:

Adaptive asset allocation model

The adaptive asset allocation model combines relative strength momentum model with different asset weighting. The relative strength model uses an equal weight allocation for the model selected assets, whereas the adaptive asset allocation uses either risk parity allocation or minimum variance allocation for the model assets, i.e., it either equalizes the risk contribution across the selected assets or weights the assets in order to minimize the expected volatility. Both the relative strength momentum timing period and the period for daily volatility and return calculations can be specified. The default model uses 6-month relative momentum with 60-day volatility window.

References:

Target volatility model

The target volatility model uses dynamic asset allocation to achieve a stable level of volatility. The model manages volatility by forecasting future equity volatility based on historic realized volatility and then dynamically adjusts the market exposure to target a set level of volatility. The historic realized volatility calculation assumes that the given portfolio allocation is maintained (no adjustment for asset allocation drift). The model calculates the realized portfolio volatility (annualized daily volatility) based on daily total returns, and then either increases or decreases the equity exposure of the portfolio to maintain the target risk level. If the predicted volatility of the portfolio is above the set target level, the model shifts assets to a risk free asset, typically cash, so that the predicted volatility is in line with the target volatility. For example, if the target annual volatility is 4% and the realized volatility is 6%, then the portfolio asset weights are multiplied by 40/60 and the remaining assets are allocated to the selected risk free asset. The strategy aims to sell assets when their risk-adjusted expected return is falling (rising market volatility) and buying equities when their risk-adjusted expected return is rising (falling market volatility) to provide better risk-adjusted portfolio returns and to account for investor's risk tolerance. However, volatility targeting tends to reduce equity exposure after a sharp market drop, which means the portfolio may miss the early part of the market recovery.

References:

Arithmetic Mean
The arithmetic mean is used to measure average return and it is calculated as the sum of individual returns (R1...Rn) divided by the number of returns.
\overline{R} = \frac{1}{n}\sum_{i=1}^{n}R_i = \frac{R_1+R_2+\dotso+R_n}{n}
Geometric Mean
Geometric mean is used to measure the time-weighted rate of return, i.e., compounded growth rate. For individual returns (R1...Rn) is calculated as
\Big(\prod_{i=1}^n(1+R_i)\Big)^{\frac{1}{n}}-1 = \Big((1+R_1)(1+R_2)\dotso(1+R_n)\Big)^{\frac{1}{n}}-1
Annualized Return
Annualized return is the geometric average amount of money earned by an investment each year over a given time period. For an investment time period of T years, the annualized return is calculated as
Annualized\:Return = (1+Cumulative\:Return)^\frac{1}{T}-1
Compound Annualized Growth Rate (CAGR)
Compound annualized growth rate is the annualized geometric mean return of the portfolio. It is calculated directly from the portfolio start and end balance and is thus impacted by any cashflows. In the presence of cashflows other return metrics such as time-weighted rate of return (TWRR) and money weighted rate of return (MWRR) are preferred. For an investment time period of T years, the compound annualized growth rate is calculated as
CAGR = \Big(\frac{End\:Balance}{Start\:Balance}\Big)^\frac{1}{T}-1
Time-Weighted Rate of Return (TWRR)
The time-weighted rate of return (TWRR) is a measure of the compound rate of growth in a portfolio. This is calculated from the holding period returns (e.g. monthly returns), and TWRR will thus not be impacted by cashflows. If there are no external cashflows, the annualized TWRR will equal CAGR.

Money-Weighted Rate of Return (MWRR)
The money-weighted rate of return (MWRR) is the internal rate of return (IRR) taking into account cashflows. This is the discount rate at which the present value of cash inflows equals the present value of cash outflows.

Standard Deviation and Variance
Variance (σ2) is used to measure the dispersion of returns around the mean, and it is calculated as the average squared distance from the mean. Standard deviation (σ) is the square root of variance, and it is the most commonly used volatility and risk metric for portfolio returns. Unlike variance, standard deviation is expressed in the same unit as the inputs. If the returns are normally distributed, 68% of returns will be within one standard deviation from the mean and 95% of returns will be within two standard deviations from the mean.
\sigma=\sqrt{\frac{1}{n-1}\sum_{i=1}^n(R_i-\overline{R})^2}
Annualized standard deviation can be calculated based on the standard deviation of monthly or daily returns.
\sigma_{annualized}=\sqrt{12}\times\sigma_{monthly} \\ \sigma_{annualized}=\sqrt{252}\times\sigma_{daily}
Covariance
Covariance measures the joint variability of two random variables.
Cov(X,Y) = \frac{1}{n}\sum_{i=1}^{n}(X_i - \overline{X})(Y_i - \overline{Y})
Correlation
Correlation is the normalized version of covariance, and measures to what degree the returns of the two assets move in relation to each other. Correlation coefficient is a numerical value between -1 and +1.
\rho_{X,Y} = \frac{Cov(X,Y)}{\sigma_x\sigma_y} = \frac{\sum_{i=1}^{n}(X_i - \overline{X})(Y_i - \overline{Y})}{\sqrt{\sum_{i=1}^n(X_i-\overline{X})^2}\sqrt{\sum_{i=1}^n(Y_i-\overline{Y})^2}}
Downside Deviation
Downside deviation measures the downside volatility of the portfolio returns unlike standard deviation, which includes both upside and downside volatility. Downside volatility focuses on the negative returns that hurt the portfolio performance.
L_i = min(0, R_{Pi})
Downside\:Deviation = \sqrt{\frac{1}{n}\sum_{i=1}^nL_i^2}
Beta and Alpha
Beta is a measure of systematic risk and measures the volatility of a particular investment relative to the market or its benchmark as a whole. Alpha measures the active return of the investment compared to the market benchmark return.
\beta = \frac{Cov(R_P,R_M)}{\sigma_{R_M}^2} = \rho_{P,M}\frac{\sigma_P}{\sigma_M}
R_P = R_{RF} + \beta(R_M - R_{RF}) + \alpha
Sharpe Ratio
The Sharpe ratio is a measure of risk-adjusted performance of the portfolio and it is calculated by dividing the mean excess return of the portfolio over the risk-free rate by the standard deviation of excess return. Risk-free rate of return is typically based on either 1-month or 3-month treasury bill return. Risk-free asset is typically assumed to have zero correlation with risky assets and zero standard deviation, in which case the standard deviation of portfolio returns is the same as the standard deviation of excess returns. Sharpe ratio can be used to rank portfolios based on their risk-adjusted performance.
Sharpe\:Ratio = \frac{ R_P - R_{RF}}{\sigma_P}
When the return series for both the portfolio and the risk-free asset are available, the ex-post Sharpe Ratio is calculated as
D_i = R_{Pi} - R_{RFi}
Sharpe\:Ratio = \frac{\overline{D}}{\sigma_D} = \frac{\frac{1}{n}\sum_{i=1}^{n}D_i}{\sqrt{\frac{1}{n-1}\sum_{i=1}^n(D_i-\overline{D})^2}}
The Sharpe Ratio based on monthly returns is annualized as
Sharpe\:Ratio_{annualized}=\sqrt{12} \times Sharpe\:Ratio_{monthly}
Sortino Ratio
The Sortino ratio is a measure of risk-adjusted performance of the portfolio. It is similar to the Sharpe ratio, but it substitutes a minimum acceptable rate of return for the risk free rate and uses the downside deviation of returns below the minimum acceptable return as the risk metric. Compared to the Sharpe Ratio, the Sortino ratio does not penalize for upside volatility. By default, Portfolio Visualizer uses the risk-free rate of return as the minimum acceptable return when calculating the Sortino Ratio.
L_i = min(0, R_{Pi} - R_{MARi})
Sortino\:Ratio = \frac{ R_P - R_{MAR}}{Downside\:Deviation} = \frac{\frac{1}{n}\sum_{i=1}^{n}(R_{Pi} - R_{MARi})}{\sqrt{\frac{1}{n}\sum_{i=1}^nL_i^2}}
The Sortino Ratio based on monthly returns is annualized as
Sortino\:Ratio_{annualized}=\sqrt{12} \times Sortino\:Ratio_{monthly}
Treynor Ratio
The Treynor ratio is a measure of risk-adjusted performance of the portfolio. It is similar to the Sharpe ratio, but it uses beta (systematic risk) as the risk metric in the denominator.
Treynor\:Ratio = \frac{ R_P - R_{RF}}{\beta_P}
Calmar Ratio
The Calmar ratio is a measure of risk-adjusted performance of the portfolio. It is calculated as the annualized return over the past 36 months divided by the maximum drawdown over the past 36 months.

Upside and Downside Capture Ratios
The upside capture ratio measures how well the fund performed relative to the benchmark when the market was up, and the downside capture ratio measures how well the fund performed relative to the benchmark when the market was down. An upside capture ratio greater than 100 would indicate that the fund outperformed its benchmark when the market was up, and a downside capture ratio below 100 would indicate that the fund lost less than its benchmark when the market was down. Given the portfolio (RP) and benchmark (RB) return series for a time period of Y years, the ratios as calculated as
R_{PUi} = max(0, R_{Pi}) \\ R_{PDi} = min(0, R_{Pi}) \\ R_{BUi} = max(0, R_{Bi}) \\ R_{BDi} = min(0, R_{Bi})
Upside\:Capture\:Ratio = \frac{\Big(\prod_{i=1}^n(1+R_{PUi})\Big)^{\frac{1}{y}}-1}{\Big(\prod_{i=1}^n(1+R_{BUi})\Big)^{\frac{1}{y}}-1}
Downside\:Capture\:Ratio = \frac{\Big(\prod_{i=1}^n(1+R_{PDi})\Big)^{\frac{1}{y}}-1}{\Big(\prod_{i=1}^n(1+R_{BDi})\Big)^{\frac{1}{y}}-1}
Gain/Loss Ratio
The Gain/Loss ratio is a measure of downside risk and it is calculated as the average positive return in up periods divided by the average negative return in down periods.

Active Return
Active return is the investment return minus the return of its benchmark. This is displayed as annualized value, i.e., annualized investment return minus annualized benchmark return.

Tracking Error
Tracking error is the standard deviation of active return. This is displayed as annualized value based on the standard deviation of monthly active returns.

Information Ratio
Information ratio is the active return divided by the tracking error. It measures whether the investment outperformed its benchmark consistently.

Value at Risk (VaR)
Value at Risk (VaR) measures the scale of loss at a given confidence level. For example, if the 95% confidence one-month VaR is 3%, there is 95% confidence that over the next month the portfolio will not lose more than 3%. VaR represensts a loss, but it is conventionally reported as a positive number. Value at Risk can be calculated directly based on historical returns based on a given percentile or analytically based on the mean and standard deviation of the returns:
5\%\:VaR = E[R]-1.645\times\sigma
Conditional Value at Risk (CVaR)
Conditional Value at Risk (CVaR) measures the scale of the expected loss once the specific Value at Risk (VaR) breakpoint has been breached, i.e., it calculates the average tail loss.

Safe Withdrawal Rate
Safe withdrawal rate is the percentage of the original portfolio balance that can be withdrawn at the end of each year with inflation adjustment without the portfolio running out of money (dollar amount withdrawal). Safe withdrawal rate is specific to the time period and return path, so is mostly useful as a relative comparison metric, not as an absolute value.

Perpetual Withdrawal Rate
Perpetual withdrawal rate is the percentage of portfolio balance that can be withdrawn at the end of each year while retaining the inflation adjusted portfolio balance (percentage withdrawal). Perpetual withdrawal rate is specific to the time period and return path, so is mostly useful as a relative comparison metric, not as an absolute value.

Returns Based Style Analysis
Returns based style analysis solves the constrained regression parameters for asset class weights (coefficients >= 0 with 1 as the sum) using monthly returns as inputs. The R squared tells us how well a monthly rebalanced portfolio with the given asset class weights explains the portfolio returns. Since the regression is focused on explaining the returns, it does not necessarily tell us anything about the portfolio holdings. The regression results also depend on the asset classes used in the regression, e.g., including commodities or global bonds as asset classes would change the resulting weights. Typical usages of returns based style analysis include identifying asset class exposures if holdings data is not available or detecting manager style drift.

Holdings Based Style Analysis
Holdings based style analysis shows the portfolio breakdown based on fund holdings, and includes both equity breakdown (market capitalization, sectors) and fixed income breakdown (credit quality, maturity). The holdings based break-down data is provided by Morningstar's fund fundamentals data. For example, if a portfolio has 60% in global equity fund and 40% in fixed income, and the global equity fund weighting is 50% domestic stocks and 50% international stocks, then the international equity exposure would be 60% x 50% = 30%.

Risk Attribution Analysis
Risk attribution decomposes portfolio risk into its constituent parts and identifies the contribution to overall volatility by each of the holdings. We can express the portfolio volatility in terms of marginal contribution to risk (MCTR), which measures the marginal amount of risk an individual security contributes to overall risk, as follows:
\sigma_P = \sqrt{\sum_{i=1}^n\sum_{j=1}^nw_iw_jCov(R_i,R_j)} = \sum_{i=1}^nw_i \times MCTR_i = \sum_{i=1}^nw_i \times \sigma_i \times \rho_{i,P}
MCTR_i = \frac{\partial \sigma_P}{\partial w_i} = \frac{Cov(R_i,R_P)}{\sigma_P} = \sigma_i \times \rho_{i,P}
Note that the risk contribution can be slightly negative for some assets, e.g., short-term treasuries, which indicates a relatively strong degree of volatility reduction that the given asset brings to the portfolio. Overall assets with higher weight, volatility, and correlation with the portfolio will contribute more to the portfolio risk.

Drawdowns
A maximum drawdown (MDD) is the maximum observed loss from a peak to a trough of a portfolio before a new peak is attained. Each drawdown has:
  • Drawdown Length - Measures the time from the start of the drawdown (previous peak) to the through point in time
  • Recovery Time - Measures the time from the through point to the new peak
  • Underwater Period - Measures the total time from the start of the drawdown (previous peak) to the new peak (drawdown length + recovery time)
MDD = \frac{Through\:Value - Peak\:Value}{Peak\:Value}

Drawdown chart

Percentile
A percentile is a measure used in statistics indicating the value below which a given percentage of observations in a group of observations falls. For example, if the end balance of Monte Carlo simulation for the 25th percentile is $850,000, it means that 25% of simulated portfolios had lower end balance, and 75% of portfolios had higher end balance.

The data sources for factor analysis are listed below.

The bond factors for term risk and credit risk are calculated as follows:

  • Term Risk = Difference between long-term treasuries and treasury bills
  • Credit Risk = Difference between long-term corporates and long-term treasuries
  • Long-term treasury bond returns are based on Vanguard Long-Term Treasury Bond Index (VUSTX)
  • Long-term corporate bond returns are based on Vanguard Long-Term Corporate Bond Index (VLTCX)

The data sources for monthly asset class returns are listed below. The table of annual asset class returns shows the calculated annual returns based on the data sources below. You can also import a custom return series to be used as an asset class, as a portfolio asset, or as a benchmark.

US Stock Market
AQR US MKT Factor Returns 1972-1992 (AQR Data Sets)
Vanguard Total Stock Market Index Fund (VTSMX) 1993+
US Large Cap
Professor Kenneth French's Research Data1 1972-1976
Vanguard 500 Index Fund (VFINX) 1977+
US Large Cap Value
Professor Kenneth French's Research Data1 1972-1992
Vanguard Value Index Fund (VIVAX) 1993+
US Large Cap Growth
Professor Kenneth French's Research Data1 1972-1992
Vanguard Growth Index Fund (VIGRX) 1993+
US Mid Cap
Professor Kenneth French's Research Data1 1972-1998
Vanguard Mid Cap Index Fund (VIMSX) 1999+
US Mid Cap Value
Professor Kenneth French's Research Data1 1972-2006
Vanguard Mid Cap Value Index Fund (VMVIX) 2007+
US Mid Cap Growth
Professor Kenneth French's Research Data1 1972-2006
Vanguard Mid Cap Growth Index Fund (VMGIX) 2007+
US Small Cap
Professor Kenneth French's Research Data1 1972-1989
Vanguard Small Cap Index Fund (NAESX) 1990+
US Small Cap Value
Professor Kenneth French's Research Data1 1972-1998
Vanguard Small Cap Value Index Fund (VISVX) 1999+
US Small Cap Growth
Professor Kenneth French's Research Data1 1972-1998
Vanguard Small Cap Growth Index Fund (VISGX) 1999+
US Micro Cap
Professor Kenneth French's Research Data1 1972-1981
DFA US Micro Cap I (DFSCX) 1982-1997
Bridgeway Ultra Small Market (BRSIX) 1998+
Global ex-US Stock Market
AQR Global ex US MKT Factor (AQR Data Sets) 1986-1996
Vanguard Total International Stock Index Fund (VGTSX) 1997+
International ex-US Developed Markets (EAFE)
AQR Global ex US MKT Factor (AQR Data Sets) 1986-1999
Vanguard Developed Markets Index Fund (VTMGX) 2000+
International ex-US Small Cap
DFA International Small Cap Value I (DISVX) 1995-2009
Vanguard FTSE All-World ex-US Small-Cap ETF (VSS) 2010+
International ex-US Value
DFA International Value I (DFIVX) 1995-2005
iShares MSCI EAFE Value ETF (EFV) 2006+
European Stocks
AQR Europe MKT Factor (AQR Data Sets) 1986-1990
Vanguard European Stock Index Fund (VEURX) 1991+
Pacific Region Stocks
AQR Pacific MKT Factor (AQR Data Sets) 1986-1990
Vanguard Pacific Stock Index Fund (VPACX) 1991+
Emerging Markets
Vanguard Emerging Markets Stock Index Fund (VEIEX) 1995+
Total Bond Market
Vanguard Total Bond Market Index Fund (VBMFX) 1987+
Short Term Treasuries
FRED Interest Rate Data (2-year maturity) 1977-1991
Vanguard Short Term Treasury Fund (VFISX) 1992+
Intermediate Term Treasuries
FRED Interest Rate Data (5-year maturity) 1972-1991
Vanguard Intermediate-Term Treasury Fund (VFITX) 1992+
10-year Treasury
FRED Interest Rate Data (10-year maturity) 1972+
Long Term Government Bonds
FRED Interest Rate Data (30-year maturity) 1978-1986
Vanguard Long Term Treasury Fund (VUSTX) 1987+
TIPS
Vanguard Inflation-Protected Security Fund (VIPSX) 2001+
Treasury Bills / Cash - Risk Free Return Benchmark
3-month Treasury Bills (FRED Data) 1972+
Short Term Tax Exempt
Vanguard Short-Term Tax-Exempt Fund (VWSTX) 1978+
Intermediate Term Tax Exempt
Vanguard Intermediate-Term Tax-Exempt Fund (VWITX) 1978+
Long Term Tax Exempt
Vanguard Long-Term Tax-Exempt Fund (VWLTX) 1978+
Short Term Investment Grade
Vanguard Short-Term Investment Grade Fund (VFSTX) 1983+
Corporate Bonds
iShares Investment Grade Corporate Bond ETF (LQD) 2003+
Long Term Corporate Bonds
Vanguard Long-Term Investment Grade Fund (VWESX) 1974+
High Yield Corporate Bonds
Vanguard High Yield Corporate Fund (VWEHX) 1979+
Global Bonds (Unhedged)
Loomis Sayles Global Bond Fund (LSGBX) 1992+
Global Bonds (USD Hedged)
PIMCO Global Bond (US Dollar-Hedged) Fund (PGBIX) 1994+
Real Estate (REIT)
DFA Real Estate Securities I (DFREX) 1994-1996
Vanguard REIT Index Fund (VGSIX) 1997+
Gold
Gold Fixing Price in London Bullion Market 3:00 PM (London time) 1972-2004
SPDR Gold Shares (GLD) 2005+
Precious Metals
Vanguard Precious Metals Fund (VGPMX) 1985-2017
VanEck Vectors Gold Miners ETF (GDX) 2018+
Commodities
iShares S&P GSCI Commodity-Indexed Trust (GSG) 2007+
Inflation (CPI-U)
Bureau of Labor and Statistics Consumer Price Index (CPI-U) 1972+
1 Synthetic Equity Index Details
The "100 Portfolios Formed on Size and Book-to-Market" data from Professor Kenneth French's research data library is used to derive synthetic index data for US market equities. The methodology used is identical to the one discussed in this online article at Portfolio Charts. The market capitalization ranges used match the CRSP index ranges:
  • Large Cap - Includes U.S. companies that comprise the top 85% of investable market capitalization
  • Mid Cap - Includes U.S. companies that fall between the top 70%-85% of investable market capitalization
  • Small Cap - Includes U.S. companies that fall between the bottom 2%-15% of the investable market capitalization
  • Micro Cap - Includes U.S. companies that comprise the bottom 2% of investable market capitalization

Data for U.S. and Canadian securities, mutual funds, and ETFs is provided by Morningstar Inc and Commodity Systems Inc. Fund distributions for mutual funds are typically reflected within two business days of the ex-dividend date, and for ETFs and stocks on the ex-dividend date. If you identify a potential data error, please use the contact form to report it.

A reference list of additional market data sources is provided below:

US Equities, Mutual Funds and ETFs
Morningstar (www.morningstar.com)
CSI (www.csidata.com)
Canadian Equities and ETFs
Morningstar (www.morningstar.com)
CSI (www.csidata.com)
Historical Returns on Stocks and Treasuries
Professor Kenneth French's Data Library (Download Data)
Professor Aswath Damodaran's Data Library (Download Data)
Professor Robert Shiller's Data Library
AQR Data Sets
US Treasury Interest Rates
Federal Reserve Interest Rates Data
Canadian Data
Canada Inflation Rates (Statistics Canada)
Canada Treasury Interest Rates (Bank of Canada)
Shiller PE Ratio
Shiller PE Ratio Site
Exchange Rates
FRED Exchange Rates Data
Cryptocurrency Prices
Coindesk