MVT
Optimize portfolio allocations for absolute and relative performance with this multi-goal optimization function. Maximize return while minimizing risk and tracking-error (Mean-variance-tracking-error)
Description
For investors concerned with both absolute and relative performance, the mean-variance tracking-error (MVT) objective function maximizes a portfolio’s expected return while minimizing both risk and tracking error. This function also allows for the robust specifications of linear and nonlinear constraints.
Syntax
The following describes the function signature for use in Microsoft Excel's formula bar.
Input(s)
Argument | Description |
---|---|
mu | Required. Vector of expected returns. |
sigma | Required. Vector of expected risk. |
rho | Required. Correlation matrix. |
λ1 | Optional. Scalar value for risk aversion. If not specified, it defaults to 1. |
λ2 | Optional. Scalar value for tracking aversion. If not specified, it defaults to 1. |
wBenchmark | Optional. Vector of benchmark weights. If not specified, the function assumes a vector of zeros. |
wInitial | Optional. Vector of initial weights (or your current weights). If not specified, the function assumes a vector of zeros. |
tc | Optional. Vector of transaction costs. If not specified, the function assumes a vector of zeros. |
lb | Optional. Vector of lower bound limits. If not specified, it defaults to a vector of zeros. |
ub | Optional. Vector of upper bound limits. If the argument is not specified, it defaults to a vector of ones. |
constraints | Optional. Matrix of constraints, operator enumeration, and values: The operator enumeration is represented by If the argument is not specified, it will default to a fully-funded constraint. i.e. |
nonlincons | Optional. Matrix to specify nonlinear constraint enumeration, operator enumeration, and values: The nonlinType enumeration is |
Output(s)
The function returns a vector of optimal weights across assets and appends the corresponding optimization's exit flag.
The output matrix follows the vector orientation of mu (column / row). If you have specified your inputs as column-vectors, the corresponding output matrix will be transpose of the above.
exitFlag | Description |
---|---|
-2 | No feasible solution found. Check your constraints and problem definition. |
-1 | Unexpected interruption. |
0 | Number of iterations exceeded. |
1 | First-order optimality measure is less than tolerance threshold and the constraints were satisfied. |
2 | Delta in optimal weights is less than the configured numerical step size. |
3 | Change in the expected utility value is less than the tolerance threshold. |
4 | Magnitude of search direction was less than the configured threshold. |
5 | Magnitude of directional derivative in the search direction was less than the configured threshold. |
Example
Further Reading
Last updated