Main Content

frontier

Rolling efficient frontier

Description

[PortWts,AllMean,AllCovariance] = frontier(Universe,Window,Offset,NumPorts) generates a surface of efficient frontiers showing how asset allocation influences risk and return over time.

Note

An alternative for portfolio optimization is to use the Portfolio object for mean-variance portfolio optimization. This object supports gross or net portfolio returns as the return proxy, the variance of portfolio returns as the risk proxy, and a portfolio set that is any combination of the specified constraints to form a portfolio set. For information on the workflow when using Portfolio objects, see Portfolio Object Workflow.

[PortWts,AllMean,AllCovariance] = frontier(___,ActiveMap,Conset,NumNonNan) specifies options using one or more optional arguments in addition to the input arguments in the previous syntax.

Input Arguments

collapse all

Total return data for a group of securities, specified as a number of observations (NUMOBS) by number of assets plus one (NASSETS + 1) time series array. Each row represents an observation. Column 1 contains MATLAB® serial date numbers. The remaining columns contain the total return data for each security.

Data Types: double

Number of data periods used to calculate each frontier, specified as a positive integer value.

Data Types: double

Increment in number of periods between each frontier, specified as a numeric value.

Data Types: double

Number of portfolios to calculate on each frontier, specified as a positive integer.

Data Types: double

(Optional) Indicates if an asset is part of the Universe on the corresponding date, specified as a number of observations (NUMOBS) by number of assets (NASSETS) matrix with Boolean elements corresponding to the Universe.

Data Types: double

Constraint matrix for a portfolio of asset investments, specified using portcons with the 'Default' constraint type. This single constraint matrix is applied to each frontier..

Data Types: double

Minimum number of non-NaN points for each active asset in each window of data needed to perform the optimization, specified as a numeric value.

Data Types: double

Output Arguments

collapse all

Weights allocated to each asset., returned as a number of curves (NCURVES)-by-1 cell array, where each element is a NPORTS-by-NASSETS matrix of weights.

Expected asset returns used to generate each curve on the surface, returned as an NCURVES-by-1 cell array, where each element is a 1-by-NASSETS vector of the expected asset returns.

Covariance matrix used to generate each curve on the surface, returned as an NCURVES-by-1 cell array, where each element is a NASSETS-by-NASSETS vector.

Version History

Introduced before R2006a