Você está na página 1de 14

Pricing Asian Options by Contour Integration, including Asymptotic Methods for Low Volatility

WORKING PAPER William T. Shaw Mathematical Institute 24-29 St Giles Oxford OX1 3LB shaww@maths.ox.ac.uk

1. Introduction
Geman and Yor (1993) have given a very elegant approach to the pricing of continuously and arithmetically averaged Asian options. This method was simplified and implemented by the current author (Shaw, 1998) using Mathematica (Wolfram, 1999) to evaluate and integrate the relevant hypergeometric functions, yielding highly accurate results. In a recent paper, Fu, Madan and Wang (1999) made an interesting comparison of several semi-analytical and numerical methods for the pricing of continously averaged Asian Options. One of the methods cited is that due to the author of this note (Shaw, 1998). In their paper, Fu et al suggest that the "Shaw" approach can give answers that are in error by an order of magnitude, and/or is highly inefficient. Here these claims are rebutted, and we show how-precision answers may be obtained from Mathematica when the inversion method is properly applied. This is in a computing framework where the full model takes no more than fourteen lines of code. Our 1998 model also gives answers in agreement (to the relevant precision) with models produced more recently by Vecer (2001 - although his method predates the working paper cited here) and Linetsky (2001). Here we present our current version of the model. Secondly, it is commonly assumed that the Geman-Yor approach is unsuitable for the case of low volatilites. This is reflected in the fact that the author's previous implementation is indeed slow to calculate the results for smaller values of s2 HT - tL using standard variables. It is shown how to transform the hypergeometric function into a collection of geometric series using a contour integral approach based on Mellin transforms, which allows a one to two order of magntitude improvement in computation time for low volatility, while retaining good accuracy and allowing the limit s 0 to be taken computationally. The plan of this paper is as follows. First we set out the Geman-Yor model and its implementation in Mathematica. Next we perform some minor optimizations and add explicit management of the truncation parameter. We then perform some sample evaluations based on some text problems set out by Fu et al (1999). We then make some comparisons with J. Vecer's PDE approach (see the 2001 working paper by Vecer - though his method has been established for longer), which leads to a very elegant numerical method for quick solution to a large class of problems. Linetsky (2001) has also given highly accurate results, also using the symbolic capabilities of Mathematica. We show how all 3 methods give consistent results on the test problems decribed by Fu et al, in contrast to almost all previous methods. Next we explore the low volatility limit. The basic mathematical problem is to extract the limiting form of a confluent hypergeometric function when its argument and its parameters become large, but are also complex. This, so far as the author is aware, is an untreated problem in the literature. F. Olver (1980) has treated the uniform asymptotics for the case where the parameters are real, and shows how the confluent hypergoemetric function can then be expressed in terms of parabolic cylinder functions. Given that the results are not yet known for the complex case, we pursue another approach in this paper based on approximating the Mellin transform of the Laplace transform using an asymptotic expansion of the quotient of Gamma functions. This allows the hypergeometric function to be re-expressed in terms of a series whose first term is the elementary geometric limit of a hypergeometric function. Given that our current interest is the fast and reliable extraction of values for the Asian option, we find our approach sufficient. Furthermore, the evaluation of para-

highly accurate results, also using the symbolic capabilities of Mathematica. We show how all 3 methods give consistent results on the test problems decribed by Fu et al, in contrast to almost all previous methods. 2 Shaw Next we explore the low volatility limit. The basic mathematical problem is to extract the limiting form of a confluent hypergeometric function when its argument and its parameters become large, but are also complex. This, so far as the author is aware, is an untreated problem in the literature. F. Olver (1980) has treated the uniform asymptotics for the case where the parameters are real, and shows how the confluent hypergoemetric function can then be expressed in terms of parabolic cylinder functions. Given that the results are not yet known for the complex case, we pursue another approach in this paper based on approximating the Mellin transform of the Laplace transform using an asymptotic expansion of the quotient of Gamma functions. This allows the hypergeometric function to be re-expressed in terms of a series whose first term is the elementary geometric limit of a hypergeometric function. Given that our current interest is the fast and reliable extraction of values for the Asian option, we find our approach sufficient. Furthermore, the evaluation of parabolic cylinder functions, that are themselves special but non-trivial examples of hypergeometric functions, may not necessarily be any more efficient, and our approach has the merit of yielding simple algebraic (if rather long) expressions that can be coded up in other programming languages. We then give some examples leading to one to two order of magnitude improvement in evaluation time for the difficult example proposed by Fu et al, and we also show how one can let s 0 without computational difficulty. The results obtained compare favourably with those obtained by a sensible low-volatility "Black-Scholes" type approximation. In the course of this analysis we develop (a) a formula for hypergeometric functions in a certain limit, valid for complex arguments; (b) a symbolic machine for computing the asymptotics of quotients of gamma functions. Both of these results may have wider utility. I am particularly grateful to V. Linetsky, Jan Vecer for general discussions on Asian options and supplying me with early versions of their papers. I am also indebted to V. Henderson likewise and furthermore for detailed comments and corrections to earlier versions of this work, particularly for treating the cases where q > r. I also wish to express my thanks to A. Wood, R. Paris, and A. Olde Daalhuis for discussion of the asymptotic issues. This work has also benefited from several discussions with J. Dewynne and the pursuit by himself and A. Odumboni (2001) of a parallel asymptotic approach based on the corresponding partial differential equations.

2. Recap of the Geman-Yor model


We are investigating the model of the continuously and arithmetically averaged Asian Call given by Geman and Yor (1993) (henceforth abbreviated as GY), as also summarized by Eydeland and Geman (1995). Suppose that the current time is t, and that the option matures at a time T > t. The averaging is arithmetical, continuous, and began at a time t0 t. Suppose that the known average value of the underlying over the time interval @t0 , tD is ES. GY define the following changes of variables, as also given by Shaw (1998), and presented here as inputs in Mathematica's "StandardForm":
t@T_, n@r_, a@S_, m@n_, t_, s_D := s ^ 2 HT - tL 4; q_, s_D := 2 Hr - qL s ^ 2 - 1; ES_, K_, s_, T_, t_, to_D := s ^ 2 H4 * SL HK * HT - toL - Ht - toL * ESL; p_D := Sqrt@n ^ 2 + 2 * pD

The value of the average price option is then given by

The remaining function C@t, n, aD is not given explicitly, but GY give its Laplace transform,

as an integral:

UHp, n, aL =

-r HT-tL 4 S CHt, n, aL 2 HT - t0 L s
0

CHt, n, aL -p t t

H1 - 2 a xL 2 x 0 x 2 UHp, n, aL = m-n p Hp - 2 n - 2L GH 2 - 1L
1 a 2 m-n -2 m+n +1

-x

Pricing Asian Options by Contour Integration

where m is as given above as a function of p and n. GY develop a series description of the transform and show how it can be inverted. We shall now explore how this can be managed and simplified in Mathematica.

3. Mathematica Implementation of Arithmetic Asian


We have already done the first part of the translation to software - we first entered the definitions of the various basic functions. Now we enter the definition of the integral that is part of the transform, and request immediate evaluation.
G[p_, m_, n_, a_] = Integrate[x^((m - n)/2 - 2)*(1 - 2*a*x)^((m + n)/2 + 1)*Exp[-x], {x, 0, 1/(2*a)}, GenerateConditions -> False]; TraditionalForm[G[p, m, n, a]]
1 1 1 1 2 2 H-m+n+2L a 2 H-m+n+2L GH Hm - n - 2LL GH Hm + n + 4LL 1 F1 H Hm - n - 2L; m + 1; - a L 2 2 2 2 GHm + 1L
1 1

There are further cancellations when we insert the other terms that make up the transform:
G@p, m, n, aD U@p_, m_, n_, a_D = SimplifyA E; m-n p * Hp - 2 n - 2L Gamma@ - 1D 2 TraditionalForm@U@p, m, n, aDD
1 1

We now have the ingredients to build the Mathematica model of the arithmetic average price Asian Call. In the following the Laplace transform inversion is done by direct numerical integration along the truncated Bromwich contour. This contour is a simple vertical line to the right of any finite singularities. In Shaw (1998), the truncation is fixed initially at a value of 500. However, I issued the following warning: "readers may need to experiment and increase the integration range for peculiar parameter values". That is, the integration range must be taken to be long enough that the results have stabilized. The allegedly inaccurate results cited by Fu et al (1999) arise solely from using a truncation that is too short the default value of 500 can easily be seen to be too small for low volatility cases by plotting the absolute value of the transform. To emphasize the role of the integration truncation parameter, we here make it an explicit argument of the option valuation function, and also parametrize the number of recursive subdivisions of the range needed - we may also need to increase this as the integration range is stretched.

1 1 1 2 2 H-m+n+2L a 2 H-m+n+2L GH Hm + n + 4LL 1 F1 H Hm - n - 2L; m + 1; - a L 2 2 2 p Hp - 2 Hn + 1LL GHm + 1L

4. The Original Model


Here I have included an explicit truncation parameter to avoid repeat of the error in using a default truncation that is too small. The symmetry properties of the inversion integral allow us to write one integral from zero to infinity. Interestingly, there is no efficiency benefit obtained from either extracting real parts within the integral, or from using sine or cosine transforms variations. (This is certainly true in Mathematica, where internal optimization may have clouded the matter Maric (1999) states that there is benefit in doing so, in addition to employing Kummer's identity).
AriAsianPriceCall@S_, ES_, K_, r_, q_, s_, T_, t_, to_, truncation_, recursion_D := Module@8ti = t@T, t, sD, n = n@r, q, sD, a = a@S, ES, K, s, T, t, toD, contour<, contour = Max@0, 2 * n + 2D + 0.5; ac = 1 HPiL * NIntegrate@U@Hcontour + I pL, m@n, Hcontour + I pLD, n, aD * Exp@Hcontour + I pL * tiD, 8p, 0, truncation<, MaxRecursion -> recursionD; Exp@-r * HT - tLD * 4 * S HHT - toL * s ^ 2L * Re@acDD

Shaw

5. Global Structure of the Transform


The transform has some manifest poles in two locations: p = 0and p = 2 n + 2. For the pole at zero, the residue can be identified by Mathematica as, assuming n is positive.
Apart@Simplify@Residue@U@p, n, n, aD, 8p, 0<DD . Gamma@2 + nD -> H1 + nL * Gamma@1 + nDD

At the other pole, the residue is best obtained by a limiting procedure. Under the assumption that n > -1, we can work this out as:
Simplify@Limit@Hp - 2 - 2 nL * U@p, n + 2, n, aD, p -> 2 + 2 nDD 1 2+2n

1 -a - 2 H1 + nL

We can move the integration line left past one or both poles by adding in one or both of these values. In the case where n < 0 the residue at zero takes a different form, and if n < -1 the residue at 2 n + 2 takes a different form. However, we must also note the branch cut structure of the transform. There are none such arising from the hypergeometric function itself, but the function m branches at p = -n2 2. We take the branch cut along the negative real axis. When n = 0 the branch point is the origin, where there is already a pole. So attempts to move the integration contour intercept with the real axis to the left of the origin are awkward - we have found no benefit in doing so even when n > 0 so do not pursue this. However, when n > -1 we have found some speed benefit by placing the contour intercept between the origin and 2 n + 2. This procedure has also been suggested by K. Maric (1999) and we have found this speeds up the computation somewhat. This is implemented in the next section. However, as noted above we have found no benefit in reducing the integration to one involving sine or cosine transforms, or, as was also suggested by Maric, using Kummer's identity to improve the conditioning of the hypergeometric power series. This may be a reflection of Mathematica's internal optimizations - Maric's transformations may be very valuable in using lower-level programming environments.

6. Modified Contour and Analytic Extraction of Right Residue


This gives same answers as our original model but is faster, at least when r > q, or n > -1. There is no further benefit from removing the residue at p = 0, or displacing the contour at all if n < -1. We actually abandon this modification when n < -0.9 (as the space between the poles becomes very small) and revert to our original scheme.
AriAsianPriceCallMid@S_, ES_, K_, r_, q_, s_, T_, t_, to_, truncation_, recursion_D := Module@8ti = t@T, t, sD, n = n@r, q, sD, a = a@S, ES, K, s, T, t, toD, contour<, contour = If@n > -0.9, Min@0.5, n + 1D, 0.5D; res = If@n > -0.9, Exp@H2 n + 2L * tiD H2 n + 2L, 0D; int = H1 PiL * NIntegrate@U@contour + I p, m@n, Hcontour + I pLD, n, aD * Exp@Hcontour + I pL * tiD, 8p, 0, truncation<, MaxRecursion -> recursionD; Exp@-r * HT - tLD * 4 * S HHT - toL * s ^ 2L * Hres + Re@intDLD

Fu et al supplied a family of test problems with various S/K, r, s values. These are now presented together with answers supplied by Fu et al (1999)(Monte Carlo), Vecer (e.g. as in his 2001 working paper) and Linetsky (2001).

Pricing Asian Options by Contour Integration

FMW Test Problem 1


Timing@AriAsianPriceCallMid@1.9, 0, 2, 0.05, 0, 0.5, 1, 0, 0, 1000, 11DD 80.984 Second, 0.193174<

Vecer: 0.193; Linetsky: 0.1931737903; FMW (MC100): 0.196

FMW Test Problem 2


Timing@AriAsianPriceCallMid@2.0, 0, 2, 0.05, 0, 0.5, 1, 0, 0, 1000, 11DD 86.188 Second, 0.246416<

Vecer: 0.246; Linetsky: 0.2464156905; FMW (MC100): 0.249

FMW Test Problem 3


Timing@AriAsianPriceCallMid@2.1, 0, 2, 0.05, 0, 0.5, 1, 0, 0, 1000, 11DD 86.437 Second, 0.30622<

Vecer: 0.306; Linetsky: 0.3062203648; FMW (MC100): 0.309

FMW Test Problem 4


Timing@AriAsianPriceCallMid@2.0, 0, 2, 0.02, 0, 0.1, 1, 0, 0, 40000, 16DD 8447.938 Second, 0.055986<

Vecer: 0.0560; Linetsky: 0.0559860415; FMW (MC100): 0.0565. We will consider the timing of this shortly.

FMW Test Problem 5


Timing@AriAsianPriceCallMid@2.0, 0, 2, 0.18, 0, 0.3, 1, 0, 0, 2000, 14DD 815.609 Second, 0.218388<

Vecer: 0.218; Linetsky: 0.2183875466; FMW (MC100): 0.220

FMW Test Problem 6


Timing@AriAsianPriceCallMid@2.0, 0, 2, 0.0125, 0, 0.25, 2, 0, 0, 1500, 14DD 810.75 Second, 0.172269<

Vecer: 0.172; Linetsky: 0.1722687410; FMW (MC100): 0.172

Shaw

7. Low Volatility Modelling I: Naive Geometric Approach to the s=0 limit

The behaviour of the GY model as s * HT - tL 0 is somewhat awkward. The truncation required gets larger and larger. This is not in itself a problem, but coupled to the computational cost of many evaluations of the hypergeometric function for large values of its arguments it becomes a problem. Fu et al have a point when they say the convergence in case 4 is slow and Mathematica takes too long. We have no argument with this assertion. Furthermore, standard techniques for contour deformation to the left half plane (Talbot; Talbot-Rizzardi or TR) behave inconsistently. We need to understand why this is, gievn that TR integration is accepted method for accelerating convergence of Laplace inversion. In this section we pursue this question on a semi-formal basis, in order to get a basic idea what is happening mathematically. It should be noted that I am only investigating the pointwise limit of the transform, considered as a function of the transform variable p. First we take a more detailed look at the structure of the hypergeometric function. Let us set: 1 1 8a, b, z< = 9 Hm - n - 2L, m + 1, - = 2 2a
b; zL

so that the hypergeometric part of the transform is just


1 F1 Ha;

with series expansion:

Suppose now that z, b in such a way that both a and the ratio z bremains finite. This can be seen to be the required limit by inpsection of the s-scaling of t, a, n, m. Then this series approaches which is just a Hz bL a Ha + 1L Hz bL2 a Ha + 1L Ha + 2L Hz bL3 a Ha + 1L Ha + 2L Ha + 3L Hz bL4 1 + + + + + ... 1! 2! 3! 4!

az a Ha + 1L z2 a Ha + 1L Ha + 2L z3 a Ha + 1L Ha + 2L Ha + 3L z4 1 + + + + + ... b 1! b Hb + 1L 2 ! b Hb + 1L Hb + 2L 3! b Hb + 1L Hb + 2L Hb + 3L 4 !

If we fix the transform parameter p and let s 0 this corresponds to the desired limit. We need to look at the other parts of the GY transform and analyse those also. While probing further, we also need to note the following. First, if r > q, which is the normal case for equities, then n + as s 0. Second, we note the following identity holds, provide n -1: m-n p = 2 2n+2 i y 2 p j z j1 + H2 n + 2 - pL j z z j !!!!!!!! !!!!!!!!!!!!!!!!! z = 2 !!!!!!!!! j 2 + 2 p M In + 2 + 2 +2 pM z 2n+ In + n n k {
2 i 1 j1 + + OiJ N yy j 1 zz j j zz j j zz n k k n {{

z -a I1 - M b

so that the following is true, for fixed p, asymptotically, for n +. m-n p ~ 2 2n+2 H2 aL 2 +1
v- m

Now the transform U is composed of three parts. The first part is the trivial power

Pricing Asian Options by Contour Integration

The next piece is the quotient of the Gamma functions. Some elementary algebra applied to Stirling's formula gives
1- 2 G HHm + n + 4L 2L m+n ~ J + 1N G Hm + 1L 2
Hm-nL Hm-nL

Finally, the geometric limit already described above gives the hypergeometric function as asymptotic to:
1- 2 1 J1 + N 2 a Hm + 1L

So the whole transform is asymptotic to F1- 2 p Hp - 2 n - 2L


m-n

where

where the latter term gives the asymptotic form of F as n . We need to take a little care in taking the final asymptotic limit, as both F and its exponent have to be considered. Bearing in mind that F1- 2 = H1- 2 L logHFL
m-n m-n

m+n 1 F = J + 1N J2 a + N ~ 1 + 2 aHn + 1L 2 m+1

we see that the deviation of F from its final asymptotic form is less important than expressing (m-n) accurately in the exponent. Putting this all together, and retaining the first important term in 1 n, we see that the U function is convergent pointwise to:
2 n+2 H2 a Hn + 1L + 1L1- p Hp - 2 Hn + 1LL p

This has an inverse which is computable exactly by direct use of tables or using the Bromwich integral inversion formula. It is important to note that the contour of completion that we introduce in order to apply the calculus of residues must be in the right half-plane if logH1 + H2 n + 2L aL t < tC = 2n+2

and hence the result for the inversion is zero in this case. This also explains why numerical inversion by uncritical application of the method of Talbot-Rizzardi can give unreliable answers, as that method typically involves a contour deformation to the left half-plane. When t > tC the inversion gives a non-zero result. Putting the two results together gives the inverse of U as 1 CHt, n, aL = Max@H2 n+2L t - 1 - H2 n + 2L a, 0D 2n+2
-r HT-tL SH i ES Ht - t0 L + -1L j r-q j j - K, Maxj j j T - t0 k
Hr-qL HT-tL

which when written out in normal S, t coordinates and rescaled according to the GY approach gives the right zero volatility solution for the price of the Asian Call option, i.e. y z z 0z z z z {

This result is important as it means we have the right limiting form. It also sheds light on the diffculty of using standard contour deformation methods to evaluate the GY inversion integral. The safest thing is to keep the integral along the original Bromwich vertical contour.

Shaw

8. Low Volatility Modelling II: Mellin Transforms and Asymptotics of Gamma Quotients
The results developed so far give us what is in fact the zero-volatility limit. We do not yet have any insight into what to do when s is small but non-zero. A route to this that may yield considerable insight analytically is the complex generalization of the results of Olver (1980). What we want to do now is to be able to develop some form of expansion in which what we have found already emerges as the first term. This is difficult to do by inspection. But it is a useful goal in that the results in principle, involving simple arithmetical operations on complex number, can be coded up in any low-level programming language capable of basic complex number manipulation. To develop this notion of a geometric limit more carefully, we start again with the transform U in the form (we now set t = 2 a), UN U = p Hp - 2 n - 2L

The limit we are interested in is for t 0and m such that t * m has a limit. Using an identity from Gradshteyn and Ryzik (1980), or by using the Dirichlet series, we can more elegantly write the numerator function U N in terms of its Mellin transform:
+ 1 GHcL GHzL GHa - zL U N = t -z z 2 p GHaL - GHc + zL

1 GH Hm + n + 4LL 1 1 1 2 U N = t- 2 Hm-n-2L 1 F1 J Hm - nL - 1; m + 1; - N GHm + 1L 2 t

where

m-n a = - 1 2 m+n c = + 2 2

In terms of these parameters, we can write UN compactly as (note that b = a + c): GHcL 1 U N = t -a 1 F1 Ja; a + c; - N t GHa + cL

For those familiar with the Mellin representation of hypergeometric functions, note that the one employed here is slightly different in that we have defined the transform so as to include the powers of t. For those unfamiliar with the Mellin representation, it is helpful to note the following: (a) Deforming the contour to surround the poles at a - z = -kand evaluating the residues there gives the standard series for the hypergeometric function; (b) Deforming the contour to surround the poles at z = -kand evaluating the residues there gives a standard asymptotic series for U N valid for small t, with a, c fixed. We already know that the original series, as can be re-extracted by the argument in (a), is awkward as the volatility tends to zero, (t 0and m, c : t * m or t * c has a limit). The standard asymptotic series, as defined by procedure (b), is fine if t 0 with a, c finite and fixed. We need a new limiting procedure to treat the case of interest here. There are two key observations. First, we have the Mellin transform identity:

Pricing Asian Options by Contour Integration

The integrand of what we want is the integrand of the right side of this expression, multiplied by GHcL G Hc + zL

+ 1 GHzL GHa - zL H1 + tL-a = t-z z H2 p L - GHaL

We need to know the limit of this as c becomes large, preferably in a form that allows the Mellin transform to be integrated. Fortunately, the characteristics of this function as c becomes large are well known, at least if we consider the standard domain of asymptotic theory. The question also arises as to what role might be played by hyperasymptotic corrections, as the integration parameter s ranges along the imaginary axis where the standard series expansion for the Gamma function can be reorganized in a subtle way (see, e.g. Paris and Kaminski, 2001 and references therein). The first term tells us a lot. We have the gamma quotient identity GHs + AL ~ sA-B GHs + BL as s becomes large. So in our case: GHcL ~ c-z GHc + zL Assuming we can carry this out under the Mellin integration:
+ 1 GHzL GHa - zL U N ~ Hc * tL-z z = H1 + c * tL-a 2 p - GHaL

which again supplies us with a geometric limit for the numerator! It should be noted that here c ~ n + 2. But in fact, we have some latitude here, corresponding to taking a slightly different leading term and reorganizing the subsequent asymptotic series. This arise because we can use the gamma quotient identity in various ways. We need s + A = c; s+B=c+z So that it is necessarily the case that we set A-B=z But s only has to satisfy A+B+2s = 2c+z Whatever choice is made, we obtain
+ 1 GHzL GHa - zL U N ~ Hs * tL-z z = H1 + s * tL-a 2 p - GHaL

as the dominant term in the asymptotic series. We have found it optimal to use this result with the choice s = Hm + nL 2 + 1, which has the same asymptotic behaviour (s ~ n + 1) as what we used before in the naive approach. The next part of the process is to extend this simple geometric formula to be a full asymptotic series. The relevant series is well known (see e.g. Paris and Kaminski 2001 and references cited therein). GHs + AL ~ sA-B C j HA, BL s- j GHs + BL j=0

10

Shaw

Paris and Kaminski tabulate the results for j = 0 up to j = 4. It is straightfoward to recover these results using known expansions for the log of the gamma function, and many more terms can be derived using Mathematica (a) to extract the results; (b) to simplify the C j to a polynomial in z; (c) to invert the Mellin transform.

Symbolic Computation of Asymptotic Series


We now consider how to implement the above scheme directly. We make the following rules to express our choice of A, B.
rules = 8A 1, B z + 1<;

The first term in the series is given by

The expanded Mellin transform contains various powers of z multiplying the base case. These become powers of -t t

f@t_, s_, a_D := H1 + t * sL ^ H-aL

It is useful to precompute a set of these acting on f :


NMax = 30; funcarr = NestList@Factor@H-t * D@#, tDLD &, f@t, s, aD, NMax - 1D;

Give the coeffcients of a series expansion in powers of z, we take an corresponding linear combination of powers of -t : t
Operator@list_ListD := Sum@list@@kDD * funcarr@@kDD, 8k, 1, Length@listD<D newrules = 8t 2 * a, s Hm + nL 2 + 1, a -> 1 2 Hm - nL - 1< m+n m-n 9t 2 a, s 1 + , a -1 + = 2 2 GeometricHypergeometric@n_D := Module@8firstpart, secondpart, nonexp, ser, coeffs, seriesdata, rawfunc, invpowers, rez, reza<, firstpart = Series@-A + B + H1 x + A - 1 2L * Log@1 + x * AD H1 x + B - 1 2L * Log@1 + x * BD, 8x, 0, n + 2<D; secondpart = Series@Sum@BernoulliB@2 * kD H2 * k * H2 * k - 1LL x ^ H2 * k - 1L HH1 + x * AL ^ H1 - 2 * kL - H1 + x * BL ^ H1 - 2 * kLL, 8k, 1, 2 * n<D, 8x, 0, n + 2<D; nonexp = Normal@firstpart + secondpartD; Remove@firstpart, secondpartD; ser = Normal@Series@Exp@nonexpD, 8x, 0, n<DD; Remove@nonexpD; coeffs = Map@Factor, CoefficientList@ser, xDD; Remove@serD; invpowers = Table@s ^ H1 - kL, 8k, 1, n + 1<D; H* Print@coeffs*invpowersD;*L seriesdata = Map@CoefficientList@#, zD &, Hcoeffs . rulesLD; Remove@coeffsD; rawfunc = Map@Factor, Map@Operator@#D &, seriesdataDD; rez = Apply@Plus, invpowers * rawfuncD; Remove@rawfuncD; reza = rez . newrules; Remove@rezD; rezaD

At the end of the calculation we will need to subsitute the particular values for t, s, a given by the GY model. This can be done with a second rule set:

First an example, to recover the leading order term, we merely evaluate:

Pricing Asian Options by Contour Integration

11

stuff = GeometricHypergeometric@0D
1+ m+n 2 I1 + 2 a I1 + MM 2
1

H-m+nL

Those wishing to check the series employed, or who are otherwise fond of asymptotic theory might wish to note that the expressions for the series expansion of the Gamma function quotient may be obtained by un-commenting the Print statement contained in the above function, and suppressing the function output. If we do this, we obtain, for example (the list gives each term in the expansion, which are in practice added together):
GeometricHypergeometric@4D;
HA - BL H-1 + A + BL H-1 + A - BL HA - BL H2 - 7 A + 3 A2 - 5 B + 6 A B + 3 B2 L 91, , , 2s 24 s2 2 - B + 2 A B + B2 L H-2 + A - BL H-1 + A - BL HA - BL H-1 + A + BL H-3 A + A , 48 s3 1 HH-3 + A - BL H-2 + A - BL H-1 + A - BL HA - BL H-8 - 18 A + 125 A2 - 90 A3 + 15 A4 + 5760 s4 18 B + 110 A B - 210 A 2 B + 60 A 3 B + 5 B2 - 150 A B2 + 90 A2 B2 - 30 B3 + 60 A B3 + 15 B4 LL=

This should be compared with the results in Paris and Kaminski (2001) We note the effortless manner in which a large expansion can be carried out. In practice, we find that a 13-term asymptotic series is a good compromise between accuracy and speed. So for our example computations we set (commenting the intermediate Print statement is a good idea here!):
stuff = GeometricHypergeometric@12D; UMellinRaw@p_, m_, n_, a_D = stuff Hp * Hp - 2 * Hn + 1LLL; UMellin@p_, m_, n_, a_D := UMellinRaw@p, m, n, aD;

Now we shall explore the use of this formula. We shall re-investigate all the test problems supplied by Fu et al, to see how well the asymptotic result does for larger s as well. But note in particular the timing for case 4.

AriAsianPriceCallMellin@S_, ES_, K_, r_, q_, s_, T_, t_, to_, truncation_, recursion_D := Module@8ti = t@T, t, sD, n = n@r, q, sD, a = a@S, ES, K, s, T, t, toD, contour<, contour = If@n > -0.9, Min@0.5, n + 1D, 0.5D; res = If@n > -0.9, Exp@H2 n + 2L * tiD H2 n + 2L, 0D; int = 1 HPiL * NIntegrate@UMellin@Hcontour + I pL, m@n, Hcontour + I pLD, n, aD * Exp@Hcontour + I pL * tiD, 8p, 0, truncation<, MaxRecursion -> recursionD; Exp@-r * HT - tLD * 4 * S HHT - toL * s ^ 2L * Hres + Re@intDLD

FMW Test Problem 1 - Asymptotic


Timing@AriAsianPriceCallMellin@1.9, 0, 2, 0.05, 0, 0.5, 1, 0, 0, 1000, 11DD 811.75 Second, 0.192972<

FMW Test Problem 2- Asymptotic


Timing@AriAsianPriceCallMellin@2.0, 0, 2, 0.05, 0, 0.5, 1, 0, 0, 1000, 11DD 812.812 Second, 0.246522< 812.782 Second, 0.306501<

FMW Test Problem 3- Asymptotic


Timing@AriAsianPriceCallMellin@2.1, 0, 2, 0.05, 0, 0.5, 1, 0, 0, 1000, 11DD

12

Shaw

FMW Test Problem 4- Asymptotic


Timing@AriAsianPriceCallMellin@2.0, 0, 2, 0.02, 0, 0.1, 1, 0, 0, 40000, 16DD 815.843 Second, 0.0559856< 812.344 Second, 0.218359< 812.281 Second, 0.172363<

FMW Test Problem 5- Asymptotic

Timing@AriAsianPriceCallMellin@2.0, 0, 2, 0.18, 0, 0.3, 1, 0, 0, 2000, 14DD

FMW Test Problem 6- Asymptotic


Timing@AriAsianPriceCallMellin@2.0, 0, 2, 0.0125, 0, 0.25, 2, 0, 0, 1500, 14DD

These results demonstrate a significant improvement in efficiency for the difficult case [4], but also show reasonable accuracy for all the cases. Now we can also ask what happens as we let s 0? Let's do this by taking case 4 and re-setting the volatility to 0.1, 0.05, 0.01 and 0.001.

Case 4 but with volatility approaching zero


5% Vol
Timing@AriAsianPriceCallMellin@2.0, 0, 2, 0.02, 0, 0.05, 1, 0, 0, 400000, 16DD 817.063 Second, 0.0337117< 818.953 Second, 0.0200275< 819.969 Second, 0.0197353<

1%Vol

Timing@AriAsianPriceCallMellin@2.0, 0, 2, 0.02, 0, 0.01, 1, 0, 0, 40000000, 16DD

0.1%Vol

Timing@AriAsianPriceCallMellin@2.0, 0, 2, 0.02, 0, 0.001, 1, 0, 0, 40000000000, 16DD

9. Comparison with a Low Volatility Black Scholes Approximation


We can construct a speculative ad hoc analytical asymptote for comparison. First, we know that we can approximate the arithmetically averaged Asian option with a log-normal model leading to a description in the Black-Scholes spirit. This involves the standard Asian forward value for the underlying. If the average accumulated to date is zero (as is the case in the test problems, this is just the underlying integrated along the zero-volatility curve: S HHr-qL HT-tL - 1L r-q

We expect this to be the mean parameter of the exact distribution, irrespective of the limitations of the log-normal distribution - note that this is precisely what appears in the zero volatility limit in any case. What volatility should we use when s 0.This can be decided in two ways. First, a detailed Riemann sum approximation can be used to show that for !!! small volatilities and zero drift it is the value s 3 that in fact always applies to the geometric case. Second, a detailed inspection of the formula for the effective volatility of the log-normal approximation to the arithmetical case shows that

Pricing Asian Options by Contour Integration

13

We expect this to be the mean parameter of the exact distribution, irrespective of the limitations of the log-normal distribution - note that this is precisely what appears in the zero volatility limit in any case. What volatility should we use when s 0.This can be decided in two ways. First, a detailed Riemann sum approximation can be used to show that for !!! small volatilities and zero drift it is the value s 3 that in fact always applies to the geometric case. Second, a detailed inspection of the formula for the effective volatility of the log-normal approximation to the arithmetical case shows that !!! its low volatility limit is also s 3 . As the volatility gets smaller we naively expect the result to be less sensititve to the detailed form of the distribution. So we build a model based on the Black-Scholes model with exact forward price for !!! average and the choice s 3 for the volatility, and tabulate the results for the cases considered above.
Norm[(z_)?NumberQ] := N[0.5*Erf[z/Sqrt[2]] + 0.5]; Norm[x_] := (1 + Erf[x/Sqrt[2]])/2; done[s_, s_, k_, t_, r_, q_] := ((r - q)*t + Log[s/k])/(s*Sqrt[t]) + (s*Sqrt[t])/2; dtwo[s_, s_, k_, t_, r_, q_] := ((r - q)*t + Log[s/k])/(s*Sqrt[t]) - (s*Sqrt[t])/2; s[t_, n_] := (Exp[(n+1)*2*t]-1)/(2*(n+1)); BlackScholesCall[s_, k_, v_, r_, q_, t_] := s*Exp[-q*t]*Norm[done[s, v, k, t, r, q]] - k*Exp[-r*t]*Norm[dtwo[s, v, k, t, r, q]]; LowVolBSAsian[S_, ES_, K_, r_, q_, s_, T_, t_, to_]:= Module[{ti=t[T, t, s],n=n[r, q, s], a = a[S,ES,K,s,T,t,to], c, aca, acb, ac}, BlackScholesCall[s[ti, n], a, 2/Sqrt[3], 0, 0, ti]*Exp[-r*(T - t)]*4* S/((T - to)*s^2)]; TableForm[{{10, LowVolBSAsian[2.0,0,2,0.02, 0, 0.1, 1,0,0]}, {5, LowVolBSAsian[2.0,0,2,0.02, 0, 0.05, 1,0,0]}, {1, LowVolBSAsian[2.0,0,2,0.02, 0, 0.01, 1,0,0]}, {0.1, LowVolBSAsian[2.0,0,2,0.02, 0, 0.00001, 1,0,0]}}] 10 5 1 0.1 0.0559233 0.0339096 0.0199263 0.0197353

This gives very close agreement with the values obtained by our asymptotic method based on Mellin transforms.

10. Summary
In this paper we have refined and optimized the previous Geman-Yor-Mathematica based model of Asian options and shown that it gives highly accurate results. We have also developed a mathematical optimization for low volatility that allows efficent extraction of results as s 0. These are in agreement with an ad hoc asymptotic model. It would be instructive to extend these results by: (a) using Olver's parabolic cylinder asymptotics; (b) comparing with asymptotics obtained directly from the PDE approach; (c) investigating the Laplace transform of the asymptotic Black-Scholes model; (d) investigating the importance of a hyperasymptotic reorganization. This is in progress. This work has also developed straightforward symbolic-computation methods for extracting the asymptotics of Gamma functions and their quotients, and of hypergeometric functions, which may have other useful applications.

14

Shaw

References
Eydeland, A. and Geman, H., 1995, Asian options revisited: inverting the Laplace transform, RISK Magazine, March 1995. Fu, M. Madan, D. and Wang, T., 1999, Pricing Continuous Asian Options:A Comparison of Monte Carlo and Laplace Transform Inversion Methods, Journal of Computatonal Finance, Vol 2., No. 2, 1999, pp 49-74 Geman, H. and Yor, M., 1993, Bessel processes, Asian options and Perpetuities, Mathematical Finance 3, p. 349. Gradshteyn, I.S. and Rhyzik, I.M., 1980, Tables of Integrals, Series and Products (Corrected and Enlarged Edition), Translated by A. Jeffrey, Academic Press. Linetsky, V., 2001, Exact Pricing of Asian Options: An Application of Spectral Theory (Nov. 2001 working paper submitted for publication), Northwestern University. Maric, K., 1999, A Model that Prices Asian Call Options, Thesis, Department of Mathematics, Stockholm University. Olver, F.W.J., 1980, Whittaker functions with both parameters large: uniform approximations in terms of parabolic cylinder functions. Proc. Roy. Soc. Edinburgh Sect. A 86(3-4), pp. 213-234. Odumboni, A.A., 2001, Valuing Arithmetic Asian Options with Low Volatility, MSc thesis, University of Oxford. Paris, R.B. and Kaminski, D. 2001, Asymptotics and Mellin-Barnes Integrals, Cambridge University Press. Shaw, W. T., 1998, Modelling Financial Derivatives with Mathematica, Cambridge University Press, 1998. Vecer, J., 2001 (Nov 2001 version of working paper used here) Unified Pricing of Asian Options, Columbia University. See other references therein. Wolfram, S., 1999, The Mathematica Book, 4th ed. Wolfram Media/Cambridge University Press, 1999.

Você também pode gostar