pcalims

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.

Syntax

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

Arguments

AssetMin

Scalar or NASSETS vector of minimum allocations in each asset. NaN indicates no constraint.

AssetMax

Scalar or NASSETS vector of maximum allocations in each asset. NaN indicates no constraint.

NumAssets

(Optional) Number of assets. Default = length of AssetMin or AssetMax.

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

Examples

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

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.

Was this topic helpful?