Rolling efficient frontier
[PortWts, AllMean, AllCovariance] = frontier(Universe, Window,
Offset, NumPorts, ActiveMap, ConSet, NumNonNan)
Number of observations (NUMOBS) by number of assets plus one (NASSETS + 1) time series array containing total return data for a group of securities. Each row represents an observation. Column 1 contains MATLAB® serial date numbers. The remaining columns contain the total return data for each security.
Number of data periods used to calculate each frontier.
Increment in number of periods between each frontier.
Number of portfolios to calculate on each frontier.
(Optional) Number of observations (NUMOBS) by number of assets (NASSETS) matrix with Boolean elements corresponding to the Universe. Each element indicates if the asset is part of the Universe on the corresponding date. Default = NUMOBS-by-NASSETS matrix of 1's (all assets active on all dates).
(Optional) Constraint matrix for a portfolio of asset investments, created using portcons with the 'Default' constraint type. This single constraint matrix is applied to each frontier.
(Optional) Minimum number of nonNaN points for each active asset in each window of data needed to perform the optimization. The default value is Window - NASSETS.
[PortWts, AllMean, AllCovariance] = frontier(Universe, Window, Offset, NumPorts, ActiveMap, ConSet, NumNonNan) generates a surface of efficient frontiers showing how asset allocation influences risk and return over time.
PortWts is a number of curves (NCURVES)-by-1 cell array, where each element is a NPORTS-by-NASSETS matrix of weights allocated to each asset.
AllMean is a NCURVES-by-1 cell array, where each element is a 1-by-NASSETS vector of the expected asset returns used to generate each curve on the surface.
AllCovariance is a NCURVES-by-1 cell array, where each element is a NASSETS-by-NASSETS vector of the covariance matrix used to generate each curve on the surface.