Linear inequalities for individual asset allocation

As an alternative to `pcalims`

, use
the Portfolio object (`Portfolio`

)
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.

```
[A,b] = pcalims(AssetMin, AssetMax, NumAssets)
```

| Scalar or |

| Scalar or |

| (Optional) Number of assets. Default = length of |

`[A,b] = pcalims(AssetMin, AssetMax, NumAssets)`

specifies
the lower and upper bounds of portfolio allocations in each of `NumAssets`

available
asset investments.

`A`

is a matrix and `b`

is
a vector such that `A*PortWts' <= b`

, where `PortWts`

is
a `1`

-by-`NASSETS`

vector of asset
allocations.

If `pcalims`

is called with fewer than two
output arguments, the function returns `A`

concatenated
with `b`

`[A,b]`

.

Set the minimum weight in every asset to 0 (no short-selling),
and set the maximum weight of IBM^{®} stock to 0.5 and CSCO to 0.8,
while letting the maximum weight in INTC float.

Asset | IBM | INTC | CSCO |
---|---|---|---|

| 0 | 0 | 0 |

| 0.5 | 0.8 |

AssetMin = 0 AssetMax = [0.5 NaN 0.8] [A,b] = pcalims(AssetMin, AssetMax)

A = 1 0 0 0 0 1 -1 0 0 0 -1 0 0 0 -1 b = 0.5000 0.8000 0 0 0

Portfolio weights of 50% in IBM and 50% in INTC satisfy the constraints.

Set the minimum weight in every asset to 0 and the maximum weight to 1.

Asset | IBM | INTC | CSCO |
---|---|---|---|

| 0 | 0 | 0 |

| 1 | 1 | 1 |

AssetMin = 0 AssetMax = 1 NumAssets = 3 [A,b] = pcalims(AssetMin, AssetMax, NumAssets)

A = 1 0 0 0 1 0 0 0 1 -1 0 0 0 -1 0 0 0 -1 b = 1 1 1 0 0 0

Portfolio weights of 50% in IBM and 50% in INTC satisfy the constraints.

Was this topic helpful?