- Assets and Funds
- The Current Portfolio
- The Current Allocation
- Obtaining a Desired Allocation
- Finding Alternative Allocations
- Finding Pure Asset Plays

To see the power of matrix operations, we consider an important example -- the choice
of a portfolio of *investment funds* designed to achieve a desired *asset
allocation*.

Assume that an Analyst has identified three major asset classes:

DomBds: Domestic Bonds DomStx: Domestic Stocks ForStx: Foreign Stocks

Three Funds are available for investment:

FundA FundB FundC

After considerable work, the Analyst has estimated the *exposures* of each fund
to each of the three asset classes. For present purposes, think of these as the funds' *allocations*
of money among the asset classes. The results of the analysis are summarized in matrix **A**:

FundA FundB FundC DomBds 0.60 0.20 0.00 DomStx 0.40 0.50 0.30 ForStx 0.00 0.30 0.70

Thus FundA has 60% of its money in Domestic Bonds and 40% in Domestic Stocks; Fund B has 20% in Domestic Bonds, 50% in Domestic Stocks, and 30% in Foreign Stocks, etc..

At the moment, the Investor has 20% of her money invested in FundA, 30% in FundB and
50% in FundC. This is shown in vector **x**:

FundA 0.20 FundB 0.30 FundC 0.50

What is the Investor's current allocation among the three major asset classes? The
answer can be found by simply multiplying matrix **A** by vector **x**.
The required MATLAB statement is:

b = A*x

This provides the result:

DomBds 0.18 DomStx 0.38 ForStx 0.44

Thus her portfolio has 18% in Domestic Bonds, 38% in Domestic Stocks and 44% in Foreign Stocks.

Note the dimensions associated with this calculation:

A {assets*funds) * x (funds*1) ===> b {assets*1}

The inner dimensions are the same, as they must be. And the dimensions of the result are, as usual, the outer dimensions of the two operands.

What if the Analyst, after conferring with the Investor, decided that it would be better to allocate the assets differently, with 15% in Domestic Bonds, 35% in Domestic Stocks and 50% in Foreign Stocks? How should money be divided among the investment funds to achieve this goal?

To begin, create vector **bb** {assets*1}, with the desired allocation:

DomBds 0.15 DomStx 0.35 ForStx 0.50

We seek a new vector of fund investments that will provide this allocation. Let the
former be **xx** {funds*1}. We want the following to hold:

A*xx = bb

To solve this set of equations requires only the MATLAB statement:

xx = inv(A)*bb

or the equivalent operation in Excel (or another system).

The required investments are given in **xx**. In table form:

FundA 0.20 FundB 0.15 FundC 0.65

The Investor should put 20% of her assets in FundA, 15% in FundB and 65% in FundC.

What if the Analyst wished to present two different allocations among asset classes to
the Investor? The procedure described above could be repeated with different values in
vector **bb**. But there is an even simpler approach.

First, include all allocations of interest in a matrix, with one column per desired *mix*.
In this case, **BBB** {assets*mixes} is:

Mix1 Mix2 DomBds 0.15 0.15 DomStx 0.35 0.40 ForStx 0.50 0.45

It is tempting to simply substitute this matrix for the vector **bb** used
in the previous case. In fact, this is a temptation to which one can and should succumb,
for it will provide the desired answers.

The MATLAB statement:

XXX = inv(A)*BBB

will produce the following, in table form:

Mix1 Mix2 FundA 0.20 0.10 FundB 0.15 0.45 FundC 0.65 0.45

Why does this work? Recall that matrix multiplication can be regarded as a series of
multiplications of the first matrix (here, inv(**A**)) by the adjoining
column vectors in the second matrix (here, **BBB**). Not surprisingly, each
column in the result (**XXX**) is the solution to a simpler problem in which
only the corresponding column of **BBB** is utilized.

What about the dimensions? To answer this question we need to know the dimensions of
inv(**A**). Recall that **A** is {assets*funds}. It follows that
its inverse is {funds*assets} (it is, after all, *inverted*). Thus:

inv(A) {funds*assets} * BBB {assets*mixes} ===> XXX {funds*mixes}

as characterized above.

In this example the only vehicles available for direct investment are the three
investment funds. If one wishes to invest in asset classes, it must be done via such
funds. We have shown how to find the set of fund allocations required to achieve any
desired *asset allocation*. One particularly interesting set of the latter includes
the three possible *pure asset plays*.

Consider the following set of mixes, contained in matrix **BBBB**:

Mix1 Mix2 Mix3 DomBds 1.00 0.00 0.00 DomStx 0.00 1.00 0.00 ForStx 0.00 0.00 1.00

Mix1 represents allocation of all one's assets to Domestic Bonds, Mix2 to Domestic Stocks, and Mix3 to Foreign Stocks. Each is a "pure asset play". For example, an Investor with Mix1 will be totally unaffected by the performance of Domestic Stocks and Foreign Stocks -- only the returns from Domestic Bonds will matter.

To find the allocations among investment funds required to achieve each of these mixes,
we simply repeat the procedure used in the previous case. Letting matrix **XXXX**
represent the desired results:

XXXX = inv(A)*BBBB

which gives:

DomBds DomStx ForStx FundA 2.60 -1.40 0.60 FundB -2.80 4.20 -1.80 FundC 1.20 -1.80 2.20

Thus one wishing to create a pure Domestic Bond play would place an amount equal to
260% of her money in FundA and 120% in FundC. To help finance these investments, she would
take a *negative position* in Fund B with an amount equal to 280% of her money.

Could this be done in practice? Possibly, if the investment funds' shares were traded
and could be "sold short". Some *closed-end* fund shares might be used in
this manner, but in all likelihood such an extreme strategy would be infeasible or at
least costly. To deal with such real-world aspects requires more complex problem
formulations and solution procedures, which will be discussed in due course..

However simplistic, this example does illustrate an important point. Look again at
matrix **BBBB**. It is, in fact, a {3*3} *identity matrix* (which can
be created in MATLAB with the expression eye(3)).. Thus **XXXX** is the
product of the inverse of **A** times an identity matrix. But this must be
the inverse of **A**! Hence, each column in the inverse of **A**
shows the allocation of money among funds that will provide a pure asset play. As will be
seen, this relationship can be applied in both normative and positive applications.