Académique Documents
Professionnel Documents
Culture Documents
KUMAR MUTHURAMAN
McCombs School of Business, University of Texas at Austin
HAINING ZHA
School of Industrial Engineering, Purdue University
1. INTRODUCTION
We consider the continuous time portfolio optimization problem with proportional trans-
action costs. Such portfolio optimization problems are usually formulated as stochastic
control problems with controls that are termed as singular control. These singular con-
trols (e.g., transactions) can bring about an instantaneous change in the state variable
(e.g., fraction invested in an asset) rather than just a change in the rate of change of state.
Solutions to such singular control problems are sought by first arguing that it is equivalent
to solving a related partial differential equation known as the Hamilton–Jacobi–Bellman
(HJB) equation. The arising HJB equation is of the free boundary type, that is, the bound-
aries of the region in which the HJB is to be solved are not pre-specified and have to be
We thank S. Kumar, D. Duffie, B. Schmeiser, H. Feng, and A. Chockalingam for their comments and
feedback. We are also thankful to the anonymous referees and the editors for their valuable comments and
suggestions.
Manuscript received November 2005; final revision received October 2006.
Address correspondence to Kumar Muthuraman, McCombs School of Business, University of Texas at
Austin; e-mail: kumar.muthuraman@mccombs.utexas.edu.
C 2008 The Authors. Journal compilation
C 2008 Blackwell Publishing Inc., 350 Main St., Malden, MA 02148,
115
116 K. MUTHURAMAN AND H. ZHA
solved as a part of the solution itself. Moreover, the dimensionality of the HJB equa-
tion equals the number of stocks in the portfolio. Hence solving a portfolio optimization
problem with a large number of stocks essentially reduces to solving a free-boundary
problem in large dimensions. Runtimes of existing solution methods grow super expo-
nentially with dimension—making them unsuitable for problems with more than even
three stocks (Muthuraman and Kumar 2006). The primary objective of this paper is to
develop a computational scheme that scales well (polynomially) with dimension so one
can potentially solve large portfolio optimization problems.
We specifically consider the objective of maximizing long-term growth rate of the
portfolio in a market that contains one risk-free asset (bank) and multiple risky assets
(stocks). Denoting the portfolio’s total wealth over time as a stochastic process W (t), the
objective is to maximize
log W(t)
(1.1) lim inf E .
t→∞ t
Price processes of stocks are modeled as a multi-dimensional geometric Brownian motion.
We will also allow for correlation between prices of various stocks. The investor is given
an initial position in various assets. In time, he can choose to either buy stocks with money
in the bank or add money to the bank by selling stocks. Transacting, that is, buying or
selling stocks, incurs proportional transaction costs. The investor pays a proportion of
the value transacted to a third party that enables the transaction. This proportion may
depend on the particular stock being transacted as well as on whether the transaction is a
purchase or a sale. The investor is allowed to trade in continuous time and in infinitesimal
quantities.
For the optimization problem stated above, it can be argued that the optimal policy
is specified by a no-transaction region. When the proportions of the investor’s wealth
invested in each of the stocks lie within this region, the investor does not make transac-
tions. When fluctuations in the price processes drive the proportions of wealth invested
in the stocks out of the boundary of the no-transaction region, the investor transacts
the minimal amount required to keep the proportions in the region. The key difficulty
in obtaining the solution, either analytically or computationally, is that the domain over
which the HJB equation must be solved is not pre-specified. In such free-boundary prob-
lems the boundary is a part of the solution and needs to be computed. Obtaining the no
transactions region in one dimension is a search for two scalar boundary points. But as
dimensionality increases the problem size grows quickly, for example when three stocks
are considered the optimization is a search for six surfaces in three-dimensional space. In
general for the N stock case the search is for 2N hyper surfaces in N dimensional space.
this setting, the optimal policy obtained by Merton continuously transacts to hold fixed
fractions of total wealth in various stocks and consumes a (different) fixed fraction of
wealth. Merton’s policy requires that an infinite number of transactions be made in any
finite time interval. This suggests that in the presence of even very small transaction costs,
Merton’s policy would no longer be optimal. With transaction costs, the investor would
want to make fewer transactions. In particular, transactions would be necessary only if
the fraction of stock holding is “sufficiently” far away from Merton’s optimal fraction
to warrant the transaction. Magill and Constantinides (1976) first considered one-stock
portfolio optimization problem with proportional transaction cost and conjectured that
the optimal policy would be characterized by a no-transactions interval, such that the
optimal policy would not transact when the fraction of wealth in stock lies in this interval.
When the fraction lies outside the interval, the optimal policy would be to buy or sell just
enough to bring the fraction into the interval.
Taksar et al. (1988) were the first to recognize that the portfolio optimization problem
with proportional transactions costs can be analyzed under the stochastic singular control
framework. They restricted their analysis to the one-stock case and maximized the long-
term expected growth (1.1), which we consider in this paper. They reduce the portfolio
optimization problem to a one-dimensional PDE and show that a “bang-bang” type
policy is optimal (as in our case too). Davis and Norman (1990) considered proportional
transactions costs in Merton’s setting, again restricting their analysis to the one-stock
case. They provided detailed characterization of the optimal policy and conditions under
which the HJB equation has a smooth solution. A comprehensive review of portfolio
optimization with transaction costs for the one stock case can be found in Zariphopolou
(1999). A representative list of other papers that consider the one stock case include
Constantinides (1979, 1986), Duffie and Sun (1990), Shreve and Soner (1994), Tourin
and Zariphopolou (1994), Korn (1998), Weiner (2000), Janeček and Shreve (2004), and
Muthuraman (2006).
Relatively, the number of papers that treat the multiple stock case with transaction
costs are much lower. This is specifically due to the curse of dimensionality inherent in
the multiple stock problem. Akian et al. (2001) considered the same objective we consider
in this paper. They approximate the problem by a discounted control problem, show the
existence of a viscosity solution to the variational inequality (HJB) and the uniqueness of
the long-term expected growth rate. Numerically they solve a two-dimensional example
using policy iteration and full-multigrid-Howard algorithm. Muthuraman and Kumar
(2006) consider the multi-dimensional problem in Merton’s setting with transaction costs
and maximize the discounted utility of consumption. They transform the arising free-
boundary problem into a sequence of fixed boundary problems that are solved using
a variant of the finite element method. Both computational schemes can theoretically
handle portfolios of any size, but their runtimes grow super exponentially with dimension
making them inadequate for even solving problems with four stocks. Other papers that
consider the multi-stock portfolio optimization problems under various other model
settings include Akian et al. (1996), Atkinson et al. (1997), Bielecki and Pliska (2000),
Leland (2000), Liu (2004), Lynch and Tan (2002), Morton and Pliska (1995), and Pliska
and Selby (1994).
inherently multi-dimensional. We use the method developed here to compute results for
the portfolio optimization problems for up to seven stocks, that is, in seven dimensions
and show that the runtime grows close to cubically with dimension. To our knowledge this
is the first ever computational solution to a free boundary problem in a dimension more
than three. When we say this, of course we are excluding the class of multi-dimensional
free-boundary problems that can be reduced analytically to one-dimensional problems. A
nice example of a multi-dimensional portfolio optimization problem that can be reduced
to a set of one-dimensional problems can be found in Liu (2004). Though the scheme
that we develop in this paper is focused on the particular portfolio optimization prob-
lem, we believe that the sprit behind the scheme can easily be adopted to solving other
free-boundary problems as well.
In Section 2, we describe the model and the free-boundary HJB equation. Section 3
argues and shows that the free-boundary problem can be transformed to a sequence
of fixed boundary problems. Theorem 3.1 provides the theoretical guarantees for this
transformation, in the one-stock case. In Section 4 we introduce a simulation based
procedure that takes advantage of the boundary update procedure and finds the optimal
solution. Finally, in Section 5 we provide measures of performance of our scheme and
discuss some results using numerical examples to help the reader enhance intuition for
these optimal policies.
For the sake of readability, unless necessary, we will suppress the dependence on time t
when denoting the processes B(t), S0 (t), S(t), L(t), U(t). Here “·” denotes the standard
dot product and e denotes the N-vector of ones. At time t = 0, instantaneous transactions
can be made if chosen to do so by adjusting (L, U). Therefore,
(2.3) S0 (0) = y0 − (e + λ) · dL(0) + (e − µ) · dU(0),
This is the set of portfolio weights from which the investor can conduct transactions
to move to a point of non-negative value in all assets. The initial portfolio (y0 , y) and
its future evolution are restricted to lie in λ,µ . We assume that the initial endowment
(y0 , y) is in λ,µ . For illustrative purposes the solvency region in the one-stock case is
shown in Figure 2.1.
A trading policy (L, U) is called admissible if S0 and S given by equations (2.1) and
(2.2) lie in λ,µ for all t ≥ 0. Therefore, an admissible policy is one that ensures that
bankruptcy does not occur in finite time. We will use U to denote the set of all admissible
policies. U is clearly non-empty, since given an initial endowment (y, y0 ) ∈ λ,µ we can
always move all wealth to the bank at time 0 and thereby construct an admissible policy.
The investor’s objective is to choose a (L, U) ∈ U so asto maximize (1.1), where W ∈ R
denotes the total wealth in the portfolio, that is, S0 + iN=1 Si .
Introducing a change of state variable would help make the problem more tractable.
The new state variable X is a vector whose i-th component denotes the fraction of wealth
in stock i, that is, S/W . Further we define processes L̃ and Ũ) by the equations,
dL = diag(S) d L̃,
(2.5)
dU = diag(S) dŨ.
The processes L̃ and Ũ can be interpreted as the cumulative percentage of stocks bought
and sold, respectively. Now first expressing d(log (W )) in terms of X, d L̃ and dŨ by using
the Ito’s formula and then considering the expectation of its integral, we have
1 1
(2.6) E{log W(t)} = log W(0) + r
t t
t t t
1
− E h(X) ds + gl (X) d L̃(s) + gu (X) dŨ(s) ,
t 0 0 0
where
1 T T
(2.7) h(X) = X σ σ X − (α − r )T X,
2
In the above I indicates the identity matrix of appropriate dimension. Now the problem
is to minimize the following average expected “cost” up to time t:
t t t
1
(2.11) lim sup E h(X) ds + gl (X) d L̃(s) + gu (X) dŨ(s) .
t→∞ t 0 0 0
with the dynamics of X given by (2.10). Letting x = y/W (0−) we have X(0−) = x.
Note that when there are no transaction costs the second and third terms vanish. Thus
the minima of h(X) at every point in time gives us, X ∗ , the optimal weight allocation
fraction for the no transactions cost case. First order maximization condition on h(X)
directly yields, X ∗ = (σ σ T )−1 (α − r). The above is the same as the optimal portfolio
weights in the classical Merton problem with no transaction costs and consumption
Merton (1969).
Now suppose that the optimal policy was found and the optimal value of (2.11) is d.
Then using a standard representation (Bather 1968; Taksar et al. 1988) we can represent
the cumulative expected cost when the process X starts from x as t d + V (x). V (x) is
then called the differential cost of starting at x or the differential cost function. Then by
using dynamic programming arguments and Ito’s formula as in Taksar et al. (1988), we
can show that V satisfies
PORTFOLIO OPTIMIZATION PROBLEM 121
for the two stock case. We will represent the sell (buy) region and its boundary by si (bi )
and φsi (φbi ), respectively. The no transaction region is represented by .
The problem then becomes a free-boundary problem, since all that needs to be found
are the boundaries of the regions such that the respective equations hold within the
regions and equation (2.15) holds in the entire state space. Notice that if V (x) solves
(2.15) then V (x) + K 0 also solves (2.15) for any constant K 0 . Hence for uniqueness we
restrict V (0) = 0. The existence and uniqueness of d as well as the characterization of
the differential cost function, V , as the solution (in a viscosity sense) to the HJB can be
found in Akian et al. (2001).
update sequence that could give us an n+1 from {n , (V n , d n )} such that d n+1 < dn and
also the assurance that the sequence of ’s constructed by the procedure converges, then
we have effectively converted the free boundary problem into a converging sequence of
fixed boundary problems.
Such an update procedure is described by the following equations for φbin+1 (ith stock
buy boundary) and φsin+1 (ith stock sell boundary),
(3.2)
φbin+1 = inf φ > φbin | φ is the hyper surface formed by the local minimizers of Bi Vn
(3.3)
φsin+1 = sup φ < φsin | φ is the hyper surface formed by the local minimizers of Si Vn
This is equivalent to moving the boundary φbin (φsin ) towards the interior to the first set of
points where Bi Vn (Si Vn ) is minimized.
Notice that the boundary update procedure shown above moves the boundaries in a
monotonic fashion. Hence the generated sequence of ’s are nested, that is, n+1 ⊂ n .
This makes it obvious that for the boundary update procedure to work we require that
our initial guess, 0 , contains the optimal no-transactions region ∗ . For any given n
and V n , the following condition assures that ∗ ⊂ n ,
(3.4) Bi Vn |φbin > Bi Vn |φbin +τ ei ∀i and
for some > 0 and all τ ∈ (0, ). Here ei is a N-dimensional vector with i-th element
equals to one and all other elements equal to zero. The above conditions simply say that
it is necessary that the derivative of Bi Vn (Si Vn ) along the xi axis is negative (positive).
Therefore if 0 and V 0 satisfy the above condition, it guarantees that the arbitrarily
chosen 0 was large enough. If either of the above conditions fail, then it indicates that
the arbitrarily chosen 0 was not large enough. A restart of the procedure with a larger
0 is required. A good way to choose a larger 0 in such cases is to move each boundary
half way between the old position and the boundary of the solvency region and check
(3.4) and (3.5) again. Once 1 ⊂ 0 , subsequent s will be nested, that is, n+1 ⊂ n .
For the one-stock case (N = 1), the fixed boundary PDE (3.1) can be simplified as
(3.6) β2 (x)Vn + β1 (x)Vn + h(x) − dn = 0 in chosen n = (φbn , φsn )
with boundary condition
(3.7) BVn = Vn − j (x) = 0 at φbn ,
THEOREM 3.1. Consider the differential equation (3.6) with boundary conditions (3.7)
and (3.8). Assume that X ∗ is less than 1, that is, ασ−2 r < 1. Say, Vn ∈ C 2 (n ) solves (3.6)–
(3.8) in n ≡ (φbn , φsn ) and also that (BVn ) |φbn < 0 and (S Vn ) |φsn > 0.
Define n+1 ≡ (φbn+1 , φbn+1 ) as,
(3.14) φbn+1 = min x > φbn |(BVn ) |x = 0 and
(3.15) φsn+1 = max x < φsn |(S Vn ) |x = 0 .
If Vn+1 ∈ C 2 (n+1 ) is such that it solves (3.6)–(3.8) in n+1 ≡ (φbn+1 , φsn+1 ), then
Upon consecutive backing out it is possible (though rarely) that new (from (4.3)–(4.4))
is no longer a subset of the initial guess 0 , in which case we set n = 0 otherwise we
set n = new . Note that, by our assumption, ∗ is a subset of 0 . Figure 4.1 shows a
chart that summarizes the computational scheme.
The idea behind using an increasing number of sample paths to estimate V is to improve
on the computational efficiency. Since during the early stages of the iteration n tends to
be relatively further away from ∗ , the chances of over-shooting due to a cruder estimate
of V tends to be lower. Moreover, as Mn → ∞ the scheme itself converges to the boundary
update procedure with estimate V̂ converging to V . Hence we can get arbitrarily close to
the optimal ∗ and also for the one-stock case as Mn → ∞, Theorem 3.1 is sufficient to
establish the convergence of this simulation based scheme.
In the next subsection we discuss the policy space approximation we use and how
this approximation helps make the scheme scale polynomially in dimension. Section 4.2
contains some further remarks.
that the difference in the value function with and without the approximation is only of
order 10−2 %. We will use this approximation to describe the construction of the set
in this section and also for results in Section 5. However, later in this section, we make
a remark on how this assumption can be relaxed without sacrificing the polynomial
growth.
With the hyper-polygonal approximation we can represent the no-transactions region
by
(4.5) AX ≥ B,
where
1 b
a12 ··· b
a1N b1b
. .. .
. .. .. .
. . . . .
ab a bN2 ··· 1 bb
N
(4.6) A = N1 s
and B = s
−1 −a12s
· · · −a1N −b1
. .. .. .. .
. .
. . . . .
−a sN1 −a sN2 · · · −1 −bsN
The elements of A and B describe the buy and sell boundaries. The ith stock’s buy and
sell boundaries are given by
(4.7) xi ≥ bib − aibj x j and
j =1...N, j =i
(4.8) xi ≤ bis − aisj x j ,
j =1...N, j =i
respectively. Thus our search for the optimal policy becomes a search for matrix A and
vector B.
We first consider the two stock case (Figure 4.2) for the sake of easier description and
visualization. To construct n+1 from n , we require the new boundaries φb1 n+1
, φb2
n+1
, φs1
n+1
and φs2 . To move φb1 to φb1 using the boundary update equation (3.2), we seek the local
n+1 n n+1
points. However since B V̂n depends on the gradient, we would need to estimate V̂ on two
more lines parallel to φs2n
and φb2n
. Then we can use simple finite differences for gradient
estimation. Therefore to update boundary φb1 n+1
and φs1
n+1
for the first stock, we only need
to estimate the differential cost function V n for discretized points on four lines (4 P points).
We use the estimates on these points to calculate the gradient on two lines (2 P points).
We will call the lines on which we seek estimates of V n as well as its gradient as main
lines and the lines on which we seek estimates of V n only to facilitate the calculation of
the gradients on the main line as auxiliary lines. Note that main lines and accompanying
auxiliary lines are parallel. These lines are also shown in Figure 4.2 for the 2 stock case.
Now consider the general N-dimensional case. For a particular stock i, the update of
the buy i boundary and the sell i boundary requires the estimation of V̂n on N 2 lines.
These N 2 lines are in N groups of N lines each. Each group has one main line and N − 1
auxiliary lines. The gradient is estimated on the N main lines using the estimate of V on
all N 2 lines using finite differences as in the two stock case. On each of the N main lines,
PORTFOLIO OPTIMIZATION PROBLEM 127
the boundary update conditions (3.2) and (3.3) give 1 buy point and 1 sell point. Fitting
a N-dimensional hyper-plane for the new buy(sell) boundary using the N new buy(sell)
points is straight forward. For each of the N stocks we do the same. This implies that the
estimation of V̂ needs to be done on N 2 × N = N 3 lines. The discretization of these N 3
lines comprises our discretization set . If each line is discretized by P points then the
size of n is P N 3 , growing polynomially in N.
TABLE 5.1
Runtime Data under Two Schemes
N PDE Simulation
1 34 sec 4 mins
2 20 mins 58 mins
3 45 hrs 3.4 hrs
4 NA 8.6 hrs
5 NA 18.7 hrs
6 NA 36.6 hrs
7 NA 62.3 hrs
PORTFOLIO OPTIMIZATION PROBLEM 129
50 hrs
10 hrs
5 hrs
Runtime (log scale)
1 hr
30 mins
Simulation runtime
10 mins Simulation trend
FEM runtime
1 min
30 secs
1 2 3 4 5 6 7
Dimension (log scale)
To illustrate the convergence of boundaries in the two stock case we consider two
stocks that are correlated with one another. The specific parameters we choose are, σ =
0.3 0.1
(0.1 0.3 ), α1 = α2 = 0.14λ1 = µ1 = λ2 = µ2 = 5%, and r = 10%. Figure 5.3 shows the
boundaries obtained with each iteration. For this particular parameter set convergence is
achieved in 13 iterations. Iterations 4, 7, 9, and 11 are outward movements of the bound-
aries and are shown as dotted lines. As can be noticed, when the stocks are correlated, the
region of inaction is compressed along the main diagonal (1, 1) and elongated along the
off-diagonal (1, − 1). A heuristic reasoning for such a change in structure of the optimal
policy is provided in Muthuraman and Kumar (2006) and is as follows. As the correlation
between stocks become larger, it becomes less likely that an increase in the value of stock
1 is accompanied by a decrease in the value of stock 2. That is, in the region of inaction,
it is less likely that sample paths of the value processes will turn away from the main
diagonal. Hence transactions are more likely to be inevitable along the main diagonal.
Given this inevitability, one does not save much on transaction costs by giving the sam-
ple paths room to turn away from the boundary along the main diagonal. Therefore, a
new region of inaction that is compressed along the main diagonal will provide a better
value function because it does not let the value function deteriorate as much before it
intervenes. Of course, one can only shrink the region so much along the main diagonal
before the transactions costs become prohibitive.
130 K. MUTHURAMAN AND H. ZHA
8
Simulation Bds
PDE Bds
Iteration number
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
x
9
Simulation
PDE
8
6
Iteration number
0
–8 –7.5 –7 –6.5 –6 –5.5 –5
d x 10
–3
0.9
0.8
0.7
0.6
x2
0.5
0.4
0.3
0.2
0.1
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
x1
6. CONCLUSION
Several examples of stochastic singular control models can be found in finance. Being able
to solve such problems in large dimensions is of natural interest since the dimensionality of
such problems usually represents the total number of sources of randomness. By focusing
on a particular singular control problem arising in portfolio optimization with transac-
tion costs, we have been able to construct a computational scheme and demonstrate nu-
merically that the computational scheme scales polynomially with dimensions—thereby
being capable of tracting problems of large dimensions. Though the scheme presented in
this paper has been specifically constructed for the portfolio optimization problem the
methodology, we believe, is much more general. We hope that other researchers will be
able to adapt the scheme for similar large dimensional singular control problems.
Using a typical single processor machine available today, our implementation on Mat-
lab can solve as much as a seven dimensional problem in reasonable time. The scheme
described here directly lends itself to distributed computing. With an implementation of
the scheme in a complied language (like C++) on a distributed computing infrastructure
can make problems of much higher dimensions tractable.
APPENDIX
Proof of Theorem 3.1. Without loss of generality let n = 1.
(1) Since S V1 |φs1 = 0,
µ
(A.1) V1 (φs1 ) = k(φs1 ) = .
1 − µφs1
132 K. MUTHURAMAN AND H. ZHA
At φs1 ,
λ
(A.2) BV1 |φs1 = V1 (φs1 ) +
1 + λφs1
µ λ
(A.3) = + > 0.
1 − µφs
1 1 + λφs1
At φb1 we have BV1 |φb1 = 0 and (BV1 ) |φb1 < 0. Since BV1 |φs1 > 0, .BV1 |φb1 = 0
and (BV1 ) |φb1 < 0, there exists at least a point x0 ∈ (φb1 , φs1 ) such that (BV1 ) |x0 =
0. Since φb2 is defined as the infimum of all such x0 ’s, φb2 exits. The existence of
φs2 can be argued similarly.
(2) Let f (x) = V2 (x) − V1 (x). Now, from the above (BV1 ) < 0 in [φb1 , φb2 )
with BV1 = 0 at φb1 . Hence BV1 (φb2 ) < 0, which implies
(A.4) V1 (φb2 ) < j (φb2 )
and from boundary conditions we have
(A.5) V2 (φb2 ) = j (φb2 ).
Therefore f (φb2 ) > 0. Similarly we can argue that f (φs2 ) < 0. Because f (φb2 ) > 0
and f (φs2 ) < 0, there exists a point x0 in (φb2 , φs2 ), such that f (x0 ) = 0, f (x0 ) < 0.
In 2 ≡ (φb2 , φs2 ), V1 and V 2 satisfy
(A.6) β2 (x)V1 + β1 (x)V1 + h(x) − d1 = 0,
(A.15) f φb2 > 0,
we have K < 0, that is, (BV2 ) |φb2 < 0. Similar arguments yield (S V2 ) |φs2 > 0.
(4) The sequence {φbn } is clearly increasing and bounded above and hence converges.
While {φsn } is a decreasing sequence bounded below and hence also converges.
The optimal φb∗ and φs∗ are the limits of the sequences {φbn } and {φsn }, respectively.
REFERENCES