focussed on the distribution of prices, typically in the extreme quantiles where the greatest risk is usually deemed to lie, so their ability to give an accurate assessment of second and higher moments tends to be at least as important, if not more so. While, in the market, prices of a large number of traded financial securities can be considered known to a reasonable degree of accuracy (the bid–offer spread), this is not the case if one is asking about the distribution of those prices in the future, market information about which is typically much scarcer and the uncertainty about which is correspondingly much greater.
One of the issues with the way in which perturbation expansions were derived and presented historically is that they were deduced as particular solutions associated with a specific payoff structure: often this was a vanilla European‐style payoff. Such results could not therefore be used for related problems like, say, forward‐starting options. Likewise, restrictive assumptions were often made about market data, such as volatilities being constant, without clarification of how results could be generalised. We shall refer to such approaches to perturbation analysis as first generation. The last five years or so have seen focus shift more and more to deriving instead pricing kernels; in other words, general solutions to the pricing equation which can be used relatively straightforwardly to derive solutions for multiple payoff configurations. This approach to perturbation analysis we shall refer to as second generation. A good introduction to this subject is provided by Pagliarani and Pascucci [2012], where pricing kernels are referred to as transition densities.The approach we shall take below is robustly second generation, seeking from the outset a pricing kernel associated with a given model before applying it to calculate derivative prices or risk measures. As we shall see, our approach has the further advantage that it provides a way not only to derive a pricing kernel (approximate or exact) systematically from a pricing equation, but also to extend it to include additional risk factors so that pricing kernels derived for simpler problems can be recycled in producing kernels for new and more complex problems. Indeed we will see (in Chapter 6) that, where risk factors do not impact on the discounting applied, they can often be included in a generic way using vectorised notation so that a single generic pricing kernel can present a unified solution to many different pricing equations. Also it will be seen that the resulting formulae all tend to have very similar structures so the coding effort involved in implementing them in a pricing library tends to be fairly light with significant code reuse possible.In this way we will seek to go beyond existing second generation approaches and create the tools or frameworks from which pricing kernels can be constructed, rather than focussing on the pricing kernels themselves. In effect we are advocating for a Generation 2.5 approach.
Although the requirements of investment banks have historically been the main driver of innovation in pricing methodologies, banks' pricing libraries are, in general, in a fairly mature and stable state: there is relatively little happening in the way of new product or model development. New implementation of pricing routines is much less likely to be happening in the front office of investment banks than in small investment houses, hedge funds, consultancies or other service providers. Rather than developing high‐powered generic Monte Carlo engines in C++ code, they are more likely these days to be developing or buying‐in more bespoke risk and pricing models, increasingly in more flexible scripting languages such as Python rather than in C++, since rapid development, easy maintenance and transparency are more likely to be at a premium. Further, the availability for more than a decade now of the Boost.Python C++ library allows routines and software objects written in C++ to be seamlessly accessed from or integrated into Python scripts, allowing the advantages of both worlds potentially to be enjoyed. It is in relation to such usage that we see the type of easily implemented perturbation solutions presented in this book as being most relevant.
The great majority of work on derivatives pricing using perturbation expansions from the SABR model of Hagan et al. [2002] has been in the context of local and/or stochastic volatility (mainly the latter). Furthermore, relatively little attention has been paid to short‐rate models, either for interest rates or for credit. One might ask why this is the case. This is a surprisingly difficult question to answer definitively because no one tends to report the reasons why they did not do research in a given area. The bias may in part be a consequence of the fact that short‐rate models are considered to have been surpassed by other more flexible frameworks such as that of Heath et al. [1992] (HJM) and the LIBOR market model (LMM). There appears to be a sense that short‐rate models are “harder” than models of spot processes on account of the non‐linear interaction between the short rate appearing both in the payoff specification and in the discount factor. While this may limit considerably the scope for exact analytic solutions, it ought not to be considered overly problematic in relation to perturbation expansion approaches: the impact on the discount factor is invariably quite weak, which plays into a perturbation strategy. Much of the analysis in the present volume seeks to exploit precisely this fact, building rapidly convergent perturbation series in powers of the short rate(s). It remains unclear to the author why more advantage has not been taken of this possibility by other researchers.We shall, as indicated, focus on short‐rate models at the expense of consideration of the HJM framework and the related LIBOR market model (although some short‐rate models such as Hull–White can be derived from within a HJM framework). This is mainly because the latter do not lend themselves so well to analysis by the techniques we expound below. A word should be said in defence of this decision. In the first instance, as the book's title suggests, we are specifically interested in credit derivatives, and the HJM and LMM frameworks have far less utility in that space than do short‐rate models. Further, insofar as our focus in the interest rate modelling we do perform is mainly on hybrid derivatives pricing rather than the types of interest rate option that tend to be the main targets of HJM and LMM approaches, short‐rate modelling is what is likely already being used in practice in the contexts we address.
The main shortcoming of the argument that traditional pricing libraries are about to be replaced by machine-learned versions of the algorithms they embody is that it currently lacks any real evidential basis. The strong recent interest in machine learning in the financial engineering community can be attributed to its increasingly being used, evidently to good effect, in devising and improving trading strategies by detecting signals in market data and trading patterns which a human observer might miss; and of course in algorithmic trading where the speed of the algorithm is key to profitability and even the latency of internet connections can have a significant impact. This has led to an upsurge of interest in this area, not only from those who already have relevant domain knowledge but also from many researchers who have established credentials in other areas, including I should add perturbation methods. But the colonisation by machine learning of the space currently occupied by pricing libraries is currently more an aspiration than a defined programme of research.While it is probably too early to call how things will pan out in this area, we would venture that the future is best viewed not as a competition between analytic formulae and machine-learned alternatives but as an opportunity for mutually beneficial collaboration. For example, it is noteworthy that Horvath et al. [2019] in their highly influential paper target not option prices but Black-Scholes implied volatility in the learning process for a rough volatility model. So they are implicitly making use of the Black-Scholes pricing formula to provide an approximation for the rough volatility model price. Perhaps more interestingly, the recent work of Antonov et al. [2020] addresses the challenging problem of how to handle efficiently the outer limits of the (high-dimensional) phase space addressed by a machine-learned representation of a pricing algorithm, effectively by substituting in an asymptotic representation of the pricing algorithm for points outside a core region of the phase space which is sampled fairly exhaustively in the learning process. The utility of such an approach hinges crucially on the availability of an asymptotically valid approximate solution to the problem at hand, which can effectively be used as a control variate in the learning process.
Finally, although it is true that there is a dearth of unified presentations of perturbation methodologies in the literature, we seek to address this in what follows by demonstrating how the particular second generation approach we advocate is applicable across a wide range of financial products, market underlyings and modelling assumptions for numerous tasks ranging from straightforward valuation to scenario generation, XVA and model risk quantification. We also seek to present