Скачать книгу
it has been shown that classical finite difference schemes fail to give acceptable answers when is large (typically values between 1000 and 10000). We get so-called spurious oscillations, and this problem is also encountered when solving one-factor and multifactor Black–Scholes equations using finite difference methods. We have resolved this problem using so-called exponentially fitted schemes. We motivate the scheme in the present context, and later chapters describe how to apply it to more complicated cases.
In order to motivate the fitted scheme, consider the case of constant and . We wish to produce a difference scheme in such a way that the discrete solution is equal to the exact solution at the mesh points for this constant-coefficient case. We introduce a so-called fitting factor in the new scheme:
The motivation for finding the fitting factor is to demand that the exact solution of (2.1) (which is known) has the same values as the discrete solution of (2.24) at the mesh points.
Plugging the exact solution (2.22) into (2.24) and doing some simple arithmetic, we get the following representation for the fitting factor:
(2.25)
Having found the fitting factor for the constant coefficient case, we generalise to a scheme for the case (2.1) as follows:
(2.26)
In practice we work with a number of special cases:
(2.27)
In the final case is the hyperbolic cotangent function.
In later chapters we shall apply the fitting scheme to the one-factor and multifactor Black–Scholes equations, and we shall show that we get good approximations to the option price and its delta in all regions of space where is the underlying asset and is time (up to maturity ). This is in contrast to the Crank–Nicolson scheme where the spurious oscillations are seen, especially when the underlying is near the strike price or when the payoff function is discontinuous.
2.4.2 Scalar Non-Linear Problems and Predictor-Corrector Method
Real-life problems are very seldom linear. In general, we model applications using non-linear IVPs:
Here is a non-linear function in u in general. Of course, Equation (2.28) contains Equation (2.1) as a special case. However, it is not possible to come up with an exact solution for (2.28) in general, and we must resort to some numerical techniques. Approximating (2.28) poses challenges because the resulting difference schemes may also be non-linear, thus forcing us to solve the discrete system at each time level by Newton's method or some other non-linear solver. For example, consider applying the trapezoidal method to (2.28):