A Robust Optimization Approach to the Portfolio Selection Problem

A Robust Optimization Approach to the
Portfolio Selection Problem using the
Mean Absolute Deviation Model
David Rutt
A thesis submitted in partial fulfillment of the requirements for the
degree of
BACHELOR OF APPLIED SCIENCE
Supervisor: R. Kwon
Department of Mechanical and Industrial Engineering
University of Toronto
March 20, 2008
1
Abstract
The portfolio selection problem is a problem which has generated a great deal of research
since it was first formally defined by Harry Markowitz more than half a century ago. It
was a breakthrough in modern economic analysis. However, it is not without its faults.
The Mean Absolute Deviation Model is an attempt to improve upon the Markowitz
Model by simplifying the solution process. Once again, though, the MAD Model is not
without its faults. In this paper, it is shown that the MAD Model is very sensitive to
errors in the market forecasts that are required for its formulation. In addition to showing
this sensitivity, a formal robust model is derived and presented. Unfortunately, certain
limitations prevented rigorous testing of the formal robust model. Alternatively, a less
rigid analysis based upon the principles of robust optimization was performed, and this
analysis proved to be useful – it was discovered that the techniques of robust optimization
have practical applications pertaining to the portfolio selection problem.
2
Acknowledgements
The author would like to acknowledge Professor Roy Kwon of the Department of
Mechanical and Industrial Engineering at the University of Toronto for his assistance and
direction with this project.
3
Table of Contents
List of Symbols............................................................................................................... 5
List of Figures................................................................................................................. 6
List of Tables .................................................................................................................. 7
List of Equations ............................................................................................................. 8
1. Background................................................................................................................. 9
1.1 Optimization Techniques..................................................................................... 11
2. Purpose ..................................................................................................................... 14
3. Building the MAD Model.......................................................................................... 15
3.1 An Aside ............................................................................................................. 16
3.2 Data..................................................................................................................... 16
4. Sensitivity of the MAD Model .................................................................................. 18
4.1 The Chopra/Ziemba Approach............................................................................. 18
4.2 The Pattern Approach.......................................................................................... 20
5. The Model................................................................................................................. 21
5.1 A Complete Robust Formulation ......................................................................... 21
5.2 Testing the Robust Concept ................................................................................. 25
6. Conclusions............................................................................................................... 29
7. Future Research......................................................................................................... 30
7.1 Uncertainty Sets .................................................................................................. 30
7.2 Normality Assumption......................................................................................... 30
7.3 Solving the Robust Model ................................................................................... 31
7.4 More Extensive Testing....................................................................................... 31
8. References................................................................................................................. 32
9. Figures and Tables .................................................................................................... 33
9.1 Figures ................................................................................................................ 33
9.2 Tables.................................................................................................................. 40
Appendix A: Computer Code ........................................................................................ 42
Appendix B: Thesis Plan............................................................................................... 44
Appendix C: Data.......................................................................................................... 45
4
List of Symbols
x j = amount of money invested in security j
! = minimum return rate as specified by investor
M 0 = amount of money to be invested
T = time horizon
r j = average return rate of security j.
r jt = the return rate for security j in time period t.
R jt = value of security j in time period t, as given in historical data.
a jt = deviation of r jt from the mean r j
k = error magnitude
t = risk tolerance
5
List of Figures
Figure 1 – efficient frontier for the basic MAD Model................................................... 33
Figure 2 - effect of errors on the objective function ....................................................... 34
Figure 3 - effect of errors on the optimal allocation ....................................................... 35
Figure 4 - Effects of errors of type 1 on the MAD model............................................... 36
Figure 5 - Effects of errors of type 2 on the MAD model............................................... 37
Figure 6 - Effects of errors of type 3 on the MAD model............................................... 38
Figure 7 - sensitivity of the robust approach .................................................................. 39
6
List of Tables
Table 1- base line results for the MAD sensitivity analysis............................................ 40
Table 2 - Summary of the types of errors used in MAD sensitivity analysis................... 40
Table 3 - Optimal allocations for the robust analysis ..................................................... 40
Table 4 - Comparison of robust and non-robust objective values ................................... 41
7
List of Equations
Equation 1..................................................................................................................... 15
Equation 2..................................................................................................................... 15
Equation 3..................................................................................................................... 16
Equation 4..................................................................................................................... 18
Equation 5..................................................................................................................... 23
Equation 6..................................................................................................................... 23
Equation 7..................................................................................................................... 24
Equation 8..................................................................................................................... 24
8
1. Background
The financial portfolio optimization problem has been around (at least informally) for
decades. How does an investor allocate his funds among a set of investments to maximize
return while simultaneously minimizing risk? Clearly this is an impossible scenario; risk
and return are inverse concepts, so to maximize expected return means one must increase
the risk inherent in their portfolio as well. It was not until Harry Markowitz published his
mean-variance model in 1952 that the idea of finding the perfect balance between risk
and expected return was formalized.
When Markowitz published his mean variance portfolio optimization model in 1952, it
was a breakthrough achievement in modern portfolio theory. However, there is a major
drawback to his model. To measure risk, the Markowitz model calculates the co-variance
between each pair of securities. Co-variance is simply a value that measures how two
securities are related; if security A and B tend to rise together, their co-variance will be
close to one, and if they exhibit dissimilar behavior, their co-variance will be close to 0.
Because the co-variance between any pair of investments must be calculated to run the
Markowitz model, this results in a large number of calculations. The size of the covariance matrix that must be computed is n 2 . For 5 investments, this means 25 covariances, for 50 investments, this means 2,500 co-variances, and for 500 investments
!
this means 250,000 co-variances. The size of the co-variance matrix, coupled with the
fact that the Markowitz model is formulated as a quadratic program (much less efficient
than a linear program) means that the model becomes infeasible very quickly as the
number of investments increases.
9
Because of the co-variance problem, it turns out that the Markowitz model has not been
used much in practice1 since its publication in 1952. Even 55 years later, with the
progress that has been made in computing power, the enormous co-variance matrix
required for the Markowitz model makes the problem too difficult. It is for this reason
that other models have been developed.
In the 1980s, Konno and Yamazaki developed a model that uses the mean absolute
deviation rather than mean variance as a measure of risk. In addition, their model does
not measure how pairs of securities are related. This enables the model to be formulated
as a linear program. For this reason, the MAD model (as I will hereby refer to it) is much
easier in a computational sense. Furthermore, if a key assumption holds true, the MAD
model is equivalent to the Markowitz model (i.e. it is optimal). This key assumption will
be discussed in the future research section, section 6.
A problem that is inherent in any portfolio optimization model is the uncertainty in the
forecasted market data. Invariably, any potential investor will make predictions about the
future market when deciding how to allocate his funds; not to do so would be foolish.
However, there is a great deal of uncertainty in the market due to a number of factors.
Therefore, an important result to investigate is how sensitive portfolio models are to
errors in the forecast data.
10
Another important technique that will be used is robust optimization. Robust optimization
is concerned with mathematical programs where a particular parameter is uncertain. The
basic idea behind it is that it determines the set of decision variable values that maximize
the worst-case scenario across the range of possible values for the uncertain parameter.
1.1 Optimization Techniques
This project involves optimization under uncertainty. Optimization with uncertain
parameters is a large field with many possibilities. It is therefore important to justify our
choice of robust optimization, since there are many other methods for optimizing under
uncertainty. The following section will describe these different methods.
1) Robust Optimization – this is what we are using. Robust optimization develops
finite uncertainty sets for the uncertain parameters. It then finds the set of values
in the uncertainty set that corresponds to the worst-case scenario, and finally
optimizes this worst-case scenario. The reason optimizing the worst-case scenario
is optimal is that it reduces risk. An advantage of robust optimization is that it is
capable of planning for long planning horizon.
2) Stochastic Optimization – stochastic optimization is another method for
optimizing under uncertainty. The principle of stochastic programming is similar
to robust optimization; however, in stochastic optimization, probability
distributions are constructed to represent the uncertain parameters. It is impossible
then to optimize the worst-case scenario, since probability distributions are
11
infinite. Rather, stochastic optimization strives to find a solution that is feasible
for all or most of the range of the distributions, and maximize the expected value
given the probability distributions of the uncertain parameters. The most common
form of stochastic optimization is two-phase linear programming. Two phase
linear programming involves the user making a decision, followed by a random
event occurring, followed by the user making another decision based on the
outcome of the random event. The optimal policy is comprised of an initial
decision and a set of decision rules that governs which actions should be taken
based on the results of the random event. A big advantage of using stochastic
programming for the portfolio selection problem is that it is flexible to changes in
the market. If the market fluctuates in unexpected ways, the set of decision rules
will tell the investor how to re-allocate their funds to take advantage of the new
market conditions. This can, however, be a lot of work – every period, the
investor needs to update their forecasts of the market and possibly perform several
transactions based on what happened on the market. This increases the time one
must spend maintaining the portfolio as well as the transaction costs.
3) Markov Decision Process – A Markov Decision Process (MDP) is a
representation of a dynamic program. An MDP is represented by the state, the
decision set, which is made up of a finite set of allowable decisions, the transition
probabilities, i.e. the probability that given the current state i the next period’s
state will be j, and the expected rewards. An advantage of using MDP to select a
portfolio is that MDP plans for the entire planning horizon, as opposed to two-
12
phase linear programs, which only plan for one period. However, this technique is
limited by the fact that there can only be a finite number of elements in the
decision set and the state space, as opposed to stochastic programming, in which
uncertainty is represented by probability distributions. Furthermore, solving the
portfolio selection problem using MDP would require re-allocation of funds each
period which, as previously mentioned, increases the time one must spend
maintaining portfolio, as well as the transaction costs.
13
2. Purpose
The purpose of this project is to build a robust version of the MAD model. The
motivation behind this project is that investors wish to be able to invest their money to
achieve as high a return as possible while still keeping their risk below a target level, and
they don’t want small errors in their market forecast data to greatly affect the outcome.
Currently, no such model exists that is computationally easy.
This purpose can be broken down into a series of logical steps. The first step is to build
the MAD model and verify its validity. The second step is to show that the model is
sensitive to small errors in the return data. Third, a robust version of the MAD model will
be formulated. Finally, the robust MAD model will be tested.
14
3. Building the MAD Model
The MAD model is a linear program, the formulation of which is given below.
N
Maximize
"r x
j
j
j=1
Subject to
N
y t + # a jt x j " 0, t = 1KT
!
(1)
j=1
N
y t " $ a jt x j # 0,
t = 1KT
(2)
j=1
N
!
"x
j
(3)
= M0
j=1
T
!
!
1
" yt # t
T t=1
x j , yt " 0
(4)
(5)
Where:
!
xj = amount of money invested in security j
! ρ = minimum return rate as specified by investor
M0 = amount of money to be invested
T = time horizon. The first year for which data is available is denoted t = 0, so T
actually equals the number of years for which data is available – 1.
rj = return rate of security j. It is estimated with the following formula:
1 T
rj = " rjt
T t=1
Equation 1
rjt = the return rate for security j in time period t. These values are based on
!
historical
data, calculated with the following formula:
rjt =
R jt
R jt"1
Equation 2
Rjt = value of security j in time period t, as given in historical data.
!
ajt = deviation
of rjt from the mean rj, as expressed by the formula:
15
a jt = rjt " rj
Equation 3
Explained in!layman’s terms, the model attempts to minimize risk while achieving a
minimum return goal as specified by the investor.
3.1 An Aside
The model described above maximizes return while setting a constraint on risk.
Another version of the model minimizes risk in the objective function while setting a
minimum return goal as one of the constraints. The two versions of the model are
equivalent for our purposes. In fact, the minimize risk/constrain return version was
used initially to test the formulation of the model before the author decided it prudent
to switch to the maximize return/constrain risk version.
The model was built in Microsoft Excel using the Solver add-in. The model was then
tested using the data in Appendix C. ρ was varied from 6.5% to 10.5% in steps of 0.5% in
order to construct the efficient frontier shown in figure 1. It is fairly clear from the graph
that the efficient frontier is mostly a straight line, and only deviates at the extremes. This
is consistent with our expectations, and was enough to verify that the model was
formulated properly.
3.2 Data
The data that has been used up to this point in the project (i.e. the R jt ' s ) is shown in
Appendix C. It is obvious from this data that there are three investment options (stocks,
bonds and money markets); therefore the model solves how!the investor should split his
16
money between these three alternatives. It can be seen that T = 43 for this data. This data
was sufficient for testing the model and its sensitivity.
17
4. Sensitivity of the MAD Model
After building the model and ensuring that it was valid, the next step was to test its
sensitivity. In other words, the goal was to vary the data and investigate how the optimal
allocation and optimal objective value reacted. This was done in two ways. The first used
randomly generated numbers to simulate a random error. The second method defined
specific patterns of errors.
4.1 The Chopra/Ziemba Approach
The method described below is very similar to that of Chopra and Ziemba [1993] who
established sensitivity of the Markowitz model, and in fact their paper was used as a
template for this part of the sensitivity analysis of the MAD model.
In the first analysis, the mean return rate ( ri ) for each investment was varied according to
the following formula:
!
ri * = ri (1 + kzi )
Equation 4
ri * represents the average return rate for security i when error is introduced. k is a
scaling factor that measures the magnitude of the error. k was varied between 0.05 and
0.2 in steps of 0.05 to investigate the effect of different error magnitudes. zi is a
randomly generated, standard normally distributed number. In addition, three different
values of the risk tolerance t were investigated. In all, there were 12 different result sets,
18
one for each combination of k and t . Furthermore, 20 iterations of the model were run
for each parameter set to eliminate randomness. In total, the model was run 240 times.
Results were measured in two ways. First, the objective function of the model with error
was compared to the objective function of the base line model. The average difference
(for each run of 20) was measured as a percentage difference. For example, if the
baseline return is 0.1 and the return with error is 0.09, the percentage difference is 10%.
The second method of measuring sensitivity is to measure the difference in the optimal
allocation. For this purpose, a similar value was computed, except that because the
investor’s money is allocated among three alternatives, the percentage difference between
the allocation with errors and the baseline allocation is averaged across these three
alternatives.
Figure 2 shows what happens to the objective when the mean return rates are varied as
described previously. Figure 3 shows the same result for the allocation. From the graphs,
it is immediately clear that as the scaling factor increases, these differences become more
pronounced. This is an intuitive result – as the magnitude of the forecast error increases,
the model results become more different from the base line result.
The objective function varies by as much as 13% for a low risk tolerance, 8% for an
average risk tolerance, and 12% for a high risk-tolerance. As far as the allocation is
concerned however, the error has a much greater impact. For a low risk tolerance, the
allocation varies by at least 12%, and up to 64%. Average and high-risk tolerances show
19
a similar trend. These are very significant differences, and it is clear to see that even
small errors in the return data can cause large differences in the model results.
4.2 The Pattern Approach
When an investor projects the market perfectly, he is still subject to random error. This
type of error is modeled by the previous section. However, other types of disparities
between projection and realization can occur. If the investor is looking at a specific sector
of the market, for example, it is possible that he will under/over forecast the whole sector,
causing his projections to be off by about the same amount. In order to model this type of
error, specific error patterns were developed.
Three types of errors were developed for this test. The first (referred to as type 1) adds a
constant value to each projected . The second multiplies each projected
by a constant
value. The third multiplies 2 of the 3 projected ’s by a constant value and the third by a
greater constant value. The errors are summarized in table 2.
The results from this experiment confirmed the results from before. The sensitivity was
found to be very large, and predictably grew as the magnitude of the error grew. Figures
4, 5 and 6 show this.
20
5. The Model
As previously discussed, the method chosen to account for uncertainty in the
problem data is robust optimization. However, in the previous discussion comparing
methods of optimizing uncertainty, one key disadvantage of robust optimization was not
mentioned. That disadvantage is the resulting complexity of solving the robust model.
Re-formulating the model as a robust program results in a non-linear model, which is
very difficult to solve. Therefore, the following section will describe robust optimization
as it pertains to the portfolio selection problem in two ways. 1) a robust model will be
formulated and presented. Because it is difficult to test this model without developing a
complex solution technique, the second section will involve 2) testing the concept of
robust optimization using less precise but less complex methods.
5.1 A Complete Robust Formulation
Once again, the MAD Model is given as:
N
Maximize
"r x
j
j
j=1
Subject to
N
y t + # a jt x j " 0, t = 1KT
!
(1)
j=1
N
y t " $ a jt x j # 0,
t = 1KT
(2)
j=1
N
!
"x
j
= M0
(3)
j=1
T
!
!
!
!
1
" yt # t
T t=1
x j , yt " 0
(4)
(5)
In order to formulate this as a robust model, we will need to translate the parts of the
model with uncertainty to the form:
Maximize c T x
Subject to Ax " b
!
Because the only uncertain data are the R jt ’s, which in turn affect the a jt ’s and rj ’s, the
!
affected parts of the model will be the objective function and constraints (1) and (2). We
!
can ignore constraints (3), (4) !
and (5) for now since they will! not be affected
during the
transition to a robust model.
The following matrices correspond to a matrix-based formulation:
!
!
c T = [r1
r2
... rN 0 0 ... 0]
x = [x1
x2
... x N
# a11
%
% a12
% M
%
a
A = % 1T
%"a11
%
%"a12
% M
%"a
$ 1T
y1
a21
a22
M
a2T
...
...
"a21
"a22
... "aN1
... "aN 2
M
"a2T
...
aN1
aN 2
M
aNT
M
... "aNT
T
... yT ]
y2
0 ... 0&
(
1 ... 0(
M
M(
(
0 ... 1(
1 0 ... 0(
(
0 1 ... 0(
M M
M(
0 0 ... 1('
1
0
M
0
T
b = [0 0 ... 0 0 0 ... 0]
!
!
22
Please note that this is a simplified version of the formulation. Since the a jt ’s and rj ’s are
derived from the R jt ’s, the full formulation would make the following substitutions:
!
T
R
1
rj = # jt
T t=1!R jt"1
!
Equation 5
!
And
a jt = rjt "
T
R jt
1
#
T t=1 R jt"1
Equation 6
.
!
We have kept it to this simplified version for convenience and readability.
The next step is to introduce robustness into the model. Robust optimization involves
defining uncertainty sets for the uncertain parameters. In robust literature, it is common
to consider uncertainty sets of the form:
L
U = {(c, A) = (c 0 , A 0 ) + $ u l (c l , A l ) | u " #}
l=1
where the set " determines the type of uncertainty set. We are using an ellipsoid
! uncertainty set, which is defined as follows:
!
X = {u | u t u " 1}
Therefore, the problem can now be formulated thusly:
!
Maximize c T x
Subject to Ax " b
L
Where (c, A) " {(c, A) = (c , A ) + $ u l (c l , A l ) | u t u # 1}
!
l=1
!
0
!
0
23
By definition the robust counterpart problem is given by:
Maximizex," "
Subject to Ax " b for all (c, A) " U
c T x " # for all (c, A) " U
!
After substituting
the definition of the uncertainty set we get:
!
!
!
!
"
Maximize
x,"
L
Subject to (A 0 )T x + # u l (A l )T x " b for all u t u " 1
l=1
!
!
L
(c 0 )T x + " u l (c l )T x # $ for all u t u " 1
l=1
!
!
In order to complete the formulation we require the following identities:
!
min{z t x | x t x " 1} = # z t z
Equation 7
!
max{z t x | x t x " 1} = z t z
Equation 8
From these identities, it follows that:
!
L
L
min{" u l (A l )T x | u t u # 1} = $
" ((A )
l T
x) 2
l=1
l=1
L
L
min{" u l (c l )T x | u t u # 1} = $
" ((c )
l T
x) 2
l=1
l=1
!
Substituting, we finally get the complete robust counterpart problem:
!
Maximizex," "
L
Subject to (A ) x "
0 T
# ((A )
l T
x) 2 $ b
(1)
x) 2 $ %
(2)
l=1
!
L
(c 0 )T x "
# ((c )
l T
l=1
!
N
"x
j
= M0
(3)
j=1
T
!
1
" yt # t
T t=1
(4)
!
!
24
x j , yt " 0
(5)
As can be seen, constraints (1) and (2) are non-linear, making this a very difficult
!
problem to solve.
An important aspect of robust optimization to consider is the selection of the
uncertainty sets. We chose to use an ellipsoid set because we considered it to be an
accurate representation of the uncertainty inherent in financial markets. However, we did
not conduct a formal study into the best uncertainty set. This could be an area for future
research. Additionally, once the type of uncertainty set is chosen, properties of that
uncertainty set must be determined. For example, for an ellipsoid set, the bounds of the
set must be determined. A great deal of research could be conducted pertaining to
uncertainty set selection.
5.2 Testing the Robust Concept
As previously mentioned, the complete robust formulation is very difficult to test due to
its non-linearity and is beyond the scope of the project. However, the concept behind
robust optimization is intriguing, and we feel it necessary to at least find a simpler way to
test how robust optimization works in the portfolio selection problem. As a refresher, the
concept of robust optimization is to develop uncertainty sets for uncertain data, and
optimize the worst-case scenario.
25
The methodology will be similar to the methodology when we tested the sensitivity of the
MAD Model. Using the same data set, we will vary the return data in the same way,
using this formula:
ri * = ri (1+ kz i )
Once again, the model will be run for 4 different risk tolerances (t’s) and 3 different
! scaling factors (k’s). It will be run 20 times for each combination of k and t, resulting in
240 different runs. The 20 different sets of randomly generated errors correspond to the
uncertainty sets.
Because the purpose of robust optimization is to optimize the worst-case scenario, we
must define what the worst-case scenario is. In the investigation into the sensitivity of the
MAD Model, we measured sensitivity in two ways: sensitivity of the objective value, and
sensitivity of the optimal allocation. For this analysis, we will only measure the
sensitivity of the objective value, since that is the ultimate goal of portfolio selection – to
find the portfolio that yields the highest return. Furthermore, we will use a pre-defined set
of decision variable vectors for reasons that will become clear shortly. The following
paragraph will describe this set.
Recall that we are using a data set which includes three securities, so we must derive
values for three decision variables, one corresponding to each security. Each decision
variable can take on a value from 0 to 1. The set of decision vectors will be such that each
decision variable value will be a multiple of 0.1 and the three will sum to 1. For example,
{0, 0, 1}, {0.3, 0.6, 0.1}, and {0.8, 0, 0.2} are all acceptable sets. This definition results
26
in 67 vectors. The code used to generate all possible vectors is shown in Appendix A.
The reason we chose to use this definition is because it provides a very broad range of
decision vectors and we feel we can perform a fairly complete analysis with this set.
Given the above information, the methodology for testing the robust concept will be as
follows (for each combination of k and t):
1) For each of the 67 possible decision vectors, we will generate 20 vectors of
returns that include error, coming to 1340 overall.
2) We will calculate the objective value and risk of each decision vector.
3) We will discard any decision vector where fewer than 5 of the 20 error vectors are
tolerable according to the risk tolerance. Though this may seem like a low
threshold, it is actually fairly comparable to the reliability of the non-robust
analysis.
4) From the remaining decision vectors, we will choose the one with the highest
minimum value. This is effectively the minimax principle that robust optimization
is based on.
The resulting optimal decision sets are shown in table 3.
After performing these steps, several conclusions were reached. First, it was found that
the non-robust version actually performed slightly better as far as the objective function
is concerned. The improvement ranged from 2.5 to 5% (note, this is 2.5 to 5% compared
27
to one another, it does not reflect the return rate. In terms of return rate, the difference
ranges from .02 to .05%, not very large at all). This is displayed in table 4.
On the other hand, the robust investigation showed some positive aspects. The objective
function values were much more consistent than the non-robust MAD Model. The
average percentage deviation ranged from 3% to 9%, which is significantly less volatile
than the results from the non-robust MAD sensitivity analysis. This is in line with our
expectation, and can be seen in figure 7.
28
6. Conclusions
Through this project, we have been able to come to a number of conclusions regarding
the MAD Model, its sensitivity, and the usefulness of robust optimization as it pertains to
portfolio optimization.
It was shown in section 4 that, just like the Markowitz Model, the MAD Model is very
sensitive to errors in the forecast data. When error is introduced into the problem
parameters, both the optimal objective value and optimal decision variables change
substantially.
Furthermore, from the results of these experiments, we can conclude that robust
optimization is a viable technique for improving the MAD Model for portfolio selection.
Although we weren’t able to thoroughly test a complete robust model, we were able show
the usefulness of robust optimization through other means. Additionally, we formulated a
robust
model
that
can
be
used
in
future
research
in
this
field.
7. Future Research
7.1 Uncertainty Sets
The choice of uncertainty set plays a big role in robust optimization. We chose to use
ellipsoid sets in our formulation of the robust model because they seemed intuitively like
an accurate representation of the uncertainty present in financial markets. However, it is
not enough to base these decisions purely on intuition. Therefore, a useful future study
would exhaustively research the best type of uncertainty set.
In addition to deciding upon the best type of uncertainty set, it is important to know the
parameters of that set. Another potential future study could look at several possible types
of uncertainty sets and derive the most accurate parameters for each type. A study of this
type could also look into different sectors of the market.
7.2 Normality Assumption
As mentioned previously, the MAD Model relies on a basic assumption that market data
is multivariate normally distributed. We have not examined this assumption in-depth, and
therefore it could dramatically alter the results. It would be wise to research the effects of
this assumption to build a complete picture of robust optimization as applied to the
portfolio selection problem.
30
7.3 Solving the Robust Model
As mentioned previously, we were not able to solve the completely formulated robust
MAD Model because of its non-linearity. Instead, we tested the robust concept in other
ways. An obvious extension of this project would then be to develop a solution procedure
for the robust formulation. In addition, because non-linear programs are generally
difficult and time-consuming to solve, it would be prudent to study the possibility of reformulating the model as a linear model, just as Konno and Yamazaki were able to do
with the Markowitz Portfolio Model. When dealing with non-linear models, solution
efficiency becomes very important; this is why the MAD Model was developed in the
first place.
7.4 More Extensive Testing
As it is, the model was only tested using one data set (shown in Appendix C). Another
extension of this project would be test the robust model using more extensive data sets
from the market. These data sets could be controlled in several ways, since as the amount
and variety of data increases, so does the surety and usefulness of the results.
31
8. References
1. Konno, Hiroshi and Yamazaki, Hiroaki. “Mean-Absolute Deviation Portfolio
Optimization Model and Its Applications to Tokyo Stock Market.” Management
Science 37.5 (1991): 519-531
2. Chopra, Vijay K. and Ziemba, William T. “The Effect of Errors in Means,
Variances, and Covariances on Optimal Portfolio Choice.” Journal of Portfolio
Management 19.2 (1993): 6-11
3. Ordonez, Fernando. “Lecture 1: Introduction to Robust Optimization” and
“Lecture 2: Non-linear and Conic Programming” ISE 599-Fall04: Robust
Optimization (2004)
4. Freund, Robert M. “Optimization under Uncertainty” April 27, 2004.
5. Erdogan, E., Goldfarb, D. and Iyengar, G. “Robust Active Portfolio Management”
November 27, 2006
6. van der Vlerk, Maarten. “Stochastic Programming Community Home Page”
http://stoprog.org/index.html?spintroduction.html.
32
9. Figures and Tables
9.1 Figures
Efficient Frontier
0.120
0.100
Risk
0.080
0.060
0.040
0.020
0.000
0.06
0.065
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
Required Rate of Return
Figure 1 – efficient frontier for the basic MAD Model
33
Difference in Objective Function Value due to Error for Different
Risk Tolerances
14.00
12.00
Percent Difference
10.00
8.00
6.00
R isk Tolerance
= 0.05
R isk Tolerance
= 0.025
R isk Tolerance
= 0.075
4.00
2.00
0.00
0
0.05
0.1
0.15
0.2
0.25
E r r o r Sca ling F a cto r (k )
Figure 2 - effect of errors on the objective function
34
Difference in Optimal Allocation due to Error for Different Risk
Tolerances
70.00
Percent Difference
60.00
50.00
40.00
Risk Tolerance = 0.05
Risk Tolerance = 0.025
Risk Tolerance = 0.075
30.00
20.00
10.00
0.00
0
0.05
0.1
0.15
Error Scaling Factor (k)
0.2
0.25
Figure 3 - effect of errors on the optimal allocation
35
Figure 4 - Effects of errors of type 1 on the MAD model
36
Figure 5 - Effects of errors of type 2 on the MAD model
37
Figure 6 - Effects of errors of type 3 on the MAD model
38
Figure 7 - sensitivity of the robust approach
39
9.2 Tables
Table 1- base line results for the MAD sensitivity analysis
Risk
Return
0.075
0.05
0.025
0.095
0.084
0.069
xs
xb
xm
0.464
0.297
0.099
0.363
0.253
0.022
0.173
0.450
0.880
rs
rb
rm
0.121
0.121
0.121
0.079
0.079
0.079
0.063
0.063
0.063
Table 2 - Summary of the types of errors used in MAD sensitivity analysis
Type
Description
Range
Increment
1
0.005
2
0.05
3
.05
Table 3 - Optimal allocations for the robust analysis
k
t
0.05
0.05
0.05
0.025
0.05
0.075
0.1
0.1
0.1
0.15
0.15
0.15
0.2
0.2
0.2
0.025
0.05
0.075
0.025
0.05
0.075
0.025
0.05
0.075
xs
0.1
0.2
0.4
0
0.3
0.5
0.1
0.3
0.3
0
0.3
0.3
xb
0
0.4
0.5
0.1
0.2
0
0
0.1
0.4
0.1
0.2
0.6
xm
0.9
0.4
0.1
0.9
0.5
0.5
0.9
0.6
0.3
0.9
0.5
0.1
40
Table 4 - Comparison of robust and non-robust objective values
Risk
Robust
non-Robust Percent better
0.025
0.067
0.069
2.521
0.050
0.079
0.084
5.737
0.075
0.090
0.095
5.597
41
Appendix A: Computer Code
Code used to generate sets
Sub Macro1()
'
Dim r1, r2, r3 As Single
Dim c, i, j, k As Integer
Dim a(11, 11, 11) As Integer
c=2
For i = 0 To 10
r1 = i / 10
For j = 1 To 10
If (r1 + j / 10) <= 1 Then
r2 = j / 10
Else
r2 = 0
End If
For k = 1 To 10
If (r1 + r2 + k / 10) <= 1 Then
r3 = k / 10
Else
r3 = 0
End If
If (a(r1 * 10, r2 * 10, r3 * 10) = 0 And r1 + r2 + r3 = 1) Then
Cells(c, 1) = r1
Cells(c, 2) = r2
Cells(c, 3) = r3
c=c+1
a(r1 * 10, r2 * 10, r3 * 10) = 1
End If
Next k
Next j
Next i
Code for minimax
Sub minimax()
Dim i, localMinRow(66), MiniMaxRow As Integer
Dim localMin(66), minimax As Single
Dim shts() As String
42
shts() = Split(".05, .025;.05, .05;.05, .025;.05, .025;.05, .025;.05, .025;.05, .025;.05,
.025;.05, .025;.05, .025;.05, .025;.05, .025", ";")
For i = 1 To 12
Worksheets(i).Select
For j = 1 To 66
If (Cells(20 * j + 1, 17) >= 17) Then
localMin(j) = Cells((j - 1) * 20 + 1, 15)
localMinRow(j) = (j - 1) * 20 + 1
For k = 1 To 20
If (Cells((j - 1) * 20 + 1 + k, 15) < localMin(j)) Then
localMin(j) = Cells((j - 1) * 20 + 1 + k, 15)
localMinRow(j) = (j - 1) * 20 + 1 + k
End If
Next k
Else: localMinRow(j) = 1000
End If
Next j
For k = 1 To 66
Cells(k + 1, 18) = localMinRow(k)
Cells(k + 1, 19) = localMin(k)
Next k
minimax = localMin(1)
MiniMaxRow = 1
For j = 1 To 66
If (localMin(j) > minimax) Then
minimax = localMin(j)
MiniMaxRow = localMinRow(j)
End If
Next j
Cells(2, 17) = minimax
Cells(3, 17) = MiniMaxRow
Next i
End Sub
43
Appendix B: Thesis Plan
This is the thesis plan that was created at the beginning of the year. As can be seen, the
project stayed on track through the first semester, but was de-railed in the early parts of
the second semester, resulting in a change in the goals of the thesis and a more
compressed schedule than planned.
Task
Construct MAD model
Verify MAD model sensitivity
Finish progress report
Construct robust MAD model
Implement robust MAD model
Test robust MAD model
Validate robust MAD model
Finish up all experiments
Finish first draft of final report
Assemble final edited report
Prepare final presentation
Proposed Completion Date
October 3
November 7
November 14
December 21
January 13
January 27
February 15
February 24
March 9
March 20
1 week prior to presentation date
Actual Completion Date
October 3
November 7
November 14
March 13
---March 13
March 15
March 20
TBD
44
Appendix C: Data
45