A perturbative formula to price barrier options with time dependent parameters in the Black and Scholes world ^{ *}
Lorella Fatone, Maria Cristina Recchioni, Francesco Zirilli
Warning: If your browser does not allow you to see the content of this website click here to download a postscript file that reproduces the material contained here.
In this paper using a perturbative method a series expansion of the price of a (put up and out) barrier option with time dependent parameters in the Black and Scholes world is obtained. The first three terms of this series are written explicitly as formulae involving some elementary and non elementary transcendental functions. The formula obtained has been tested on some examples taken from the financial literature. The numerical experience shows that in the cases of practical interest considered the use of the first two or three terms of the series expansion mentioned above guarantees three or four correct significant digits in the prices computed. Similar formulae can be obtained for other types of barrier options. This website contains a Fortran code that implements the first three terms of the series expansion and some material that helps the understanding of the companion paper [11] (see Section 4) and make possible to the user to exploit the formula that has been derived to evaluate the prices of the up and down barrier options.
A detailed exposition of the material summarized in this website can be found in [11].
We study the problem of pricing barrier options on an underlying asset in the Black and Scholes world when the parameters that define the problem, that is the volatility, the dividends of the asset dynamic and the risk free interest rate are time dependent. Barrier options are an extensively traded type of derivative, extremely liquid in the foreign exchange market and in the credit derivatives markets see for example [1], [2]. Barrier options are activated (knockins) or terminated (knockouts) when a specific trigger is reached within the expiry date. The pricing of barrier options strongly depends on the type of monitoring of the trigger, that is: discrete or continuous monitoring. In fact in the case of a discretely monitored barrier options the trigger is checked only at fixed times with a given frequency while in the case of continuously monitored barrier options the trigger is monitored continuously. The pricing of these two types of barrier options must be done in two different ways, in fact as shown in [7] it is not efficient to use the pricing techniques of continuous barrier options to price the discrete barrier options and viceversa. In this paper we are interested in pricing continuous barrier option in the Black and Scholes world when the volatility of the underlying, the risk free interest rate and the dividends are functions of time. A wide literature exists about pricing continuous barrier options when the previous parameters are assumed to be constant, see for example [3], [4], [5], [6], [8]. Only recently some results concerning the pricing of continuous barrier options with time dependent parameters have been proposed, see for example [9]. We propose a perturbation series expansion to price this last type of barrier options.
Let us describe our method, for simplicity we restrict our attention to continuous up and out single barrier options, that is options that are terminated when the price of the underlying asset comes over a fixed trigger (i.e. the barrier). However formulae similar to those derived here can be obtained for other types of barrier options. We assume that the underlying asset price evolves according to the following stochastic differential equation:
 (1) 
 (2) 
 (3) 
 (4) 
 (5) 
The perturbation approach proposed is based on the fact that when the function a(t), t < T is given by:
 (6) 
The Fortran code distributed in this website (see Section 4) is a code that computes the price of an up and down put barrier option P(t,S) according to the formula outlined in Section 3. The Fortran code consists of a main program Fmain.f90 that computes the price using at most three terms of the series expansion presented in Section 3 and a file tvpack.f downladable from the website http://www.math.wsu.edu/faculty/genz/software/software.html that contains some subroutines to evaluate the univariate, bivariate and trivariate cumulative normal ditributions.
The main program takes as input five user supplied functions needed to evaluate the functions a(t), s^{2}(t) and the integrals between the current time t=t_{1} < T where the option is evaluated and the maturity time T of the functions a(t), r(t) and s^{2}(t) respectively. Detailed instructions can be found in the file UnivPM_MathFinPutBarrierF_readme.txt.
The reader not interested in mathematical details may jump to Section 4.
Let us consider the following boundary value problem:

 (8) 
 (9) 
 (10) 
In [11] explicit formulae for P_{0}(t,S), P_{1}(t,S), P_{2}(t,S) are given. The value of P(t,S) evaluated by the computer programs of Section 4 is one of the following approximate values: P_{0}(t,S), P_{0}(t,S)+P_{1}(t,S), P_{0}(t,S)+P_{1}(t,S)+P_{2}(t,S).
The codes made available are: Fmain.f90, tvpack.f. The manual, i.e. UnivPM_MathFinPutBarrierF_readme.txt helps to use the codes.
The archive UnivPM_MathFinPutBarrierF.zip contains the following files:
Fmain.f90: a Fortran main code that computes the first and second order approximations
P_{0}+P_{1} and/ or P_{0}+P_{1}+P_{2}
of the price P of an up and out put barrier option.
tvpack.f: a fortran code that computes the univariate, bivariate and trivariate cumulative normal ditributions.
Note that these last routines are routines available free of charge on the internet.
The use of routines taken from high quality mathematical software libraries (IMSL, NAG, FUNPACK and so on) is suggested.
UnivPM_MathFinPutBarrierF_readme.txt: a text file that explains the code and the parameters and the
functions that the user must supply.
We invite the user to fill up the following
request of informations. We plan to use the informations acquired in this
way for the
following purposes:
1) improving the quality of this website and of the
software libraries UnivPM_MathFinPutBarrierF
2) enlarging our knowledge of mathematical finance through
the knowledge and understanding of
the problems of interest to the users of this website.
