Financial Toolbox | ![]() ![]() |
Linear inequalities for individual asset allocation
Syntax
Arguments
Description
[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
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]
.
Examples
Set the minimum weight in every asset to 0 (no short-selling), and set the maximum weight of IBM to 0.5 and CSCO to 0.8, while letting the maximum weight in INTC float.
Asset |
IBM |
INTC |
CSCO |
Min. Wt. |
0 |
0 |
0 |
Max. Wt. |
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 |
Min. Wt. |
0 |
0 |
0 |
Max. Wt. |
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.
See Also
pcgcomp
, pcglims
, pcpval
, portcons
, portopt
![]() | payuni | pcgcomp | ![]() |