Abstract
In this paper, we introduce the concept of standardized call function and we obtain a new approximating formula for the Black and Scholes call function through the hyperbolic tangent. Differently from other solutions proposed in the literature, this formula is invertible; hence, it is useful for pricing and risk management as well as for extracting the implied volatility from quoted options. The latter is of particular importance since it indicates the risk of the underlying and it is the main component of the option’s price. That is what trading desks focus on. Further we estimate numerically the approximating error of the suggested solution and, by comparing our results in computing the implied volatility with the most common methods available in the literature, we discuss the challenges of this approach.
Similar content being viewed by others
1 Introduction
For investors and traders, a key component in their decision making is to assess the risk they run. A common way to do so is to focus on the dispersion of returns. However, this measure has the problem that is computed on past performance and may have little to do with the current level of risk. Within the Black–Scholes framework (Black and Scholes 1973), later extended by Merton (1973), it is possible to identify a relation between the value of an asset and the option written on it. Though such a formula is subjected to strong criticism (Derman and Taleb 2005), and notwithstanding its pitfalls, the formula and its related approximations (Taylor or delta-gamma) are widely used in risk management (Estrella 1995) and “in many respects the story of the establishment of the Black–Scholes–Merton model (BSM) simply marks the emergence of contemporary financial risk management” (Millo and MacKenzie 2009). Many other models have been developed to address some of the BSM weaknesses, such as those proposed by Engle and Mustafa (1992), Heston (1993), Duan (1995) Ritchken and Trevor (1999), Christoffersen and Jacobs (2004) and Duan et al. (2006) as well as models based on neural networks (for a review see Mostafa et al. 2017) but those are beyond the scope of the present paper. This is for the simple reason that we share the same experience of most quants such as Paul Wilmott: when it comes to price and managing the risk of thousands of options in real time “better” models are not a suitable choice. Problems should be streamlined and models should be of practical use. Therefore constant volatility Black–Scholes is a common choice while tail risk is managed through worst-case scenarios. Last but not least, the BSM is, simply put, another way to ensure that “a portfolio consisting of a long position in a call and a short position in a put, valued by the traditional discounted expected value of their payoffs, must statically replicate a forward contract” (Derman and Taleb 2005). Therefore, irrespectively of its shortcomings, it is widely used as an arbitrage free tool by dealers or market-makers in options who need to stay consistent with the value of their “raw supplies” (Derman and Taleb 2005).
As the usage of the BSM formula has become widespread in financial markets (Millo and MacKenzie 2009), options are priced and traded in terms of their risk or, in other words, the so-called implied volatility (i.e. the actual volatility embedded in the option’s price). To be precise, given the value S of an underlying asset, the strike price K, the time to maturity T, the interest rate r and the volatility \(\sigma \), the BSM formula derives the price C of a European call option through the formula:
where \(X= K\,{\mathrm{e}}^{-rT}\) is the present value of the strike price, N(x) is the cumulative distribution function of the standard normal i.e.
and
are the first and the second parameter of probability, i.e. respectively, “the factor by which the present value of contingent receipt of the stock, contingent on exercise, exceeds the current value of the stock” (Nielsen 1993) and the risk-adjusted probability of exercise.
Since the BSM formula involves the use of the cumulative distribution function of the standard normal N(x), then we have to face two kinds of problems: (a) how to compute the price of the option for given S, K, T, r and \(\sigma \); (b) given S, K, T, r, how to compute the so-called “implied volatility”, i.e. the volatility corresponding to the current price of the option; in other terms, how to invert the call function, i.e. the function \(C={\mathscr {C}}(\sigma )\) which gives the price of the option as a function of the volatility.
The first problem may be faced in several ways. An approach is to use the standard software based on the power series expansion of the cumulative normal distribution function (cndf). Alternatively N can be approximated with suitable functions, generally of rational form. In this framework, there is a variety of contributions, see for example Bowling et al. (2009), Choudhury (2014) and Eidous and Abu-Shareefa (2020) who focus on the choice of the best coefficients. Hofstetter and Selby (2001) obtained approximations by replacing the cndf with the logistic distribution, Li (2008) developed an heuristic closed-form method based on the rational functions which requires one or two steps of Newton–Raphson algorithm to improve the accuracy. Unfortunately it works only in a limited domain. Jacquier and Lorig (2015) compute the option price by a quadrature of the inverse Fourier transform and the “true implied volatility by fitting the SVI parametrization to it”. Other closed-form approximations that work only in the case \(S=X\) are the Pólya approximation (Pólya 1949; Matić et al. 2017), and the logistic approximation (Pianca 2005). A completely different point of view is due to Fan and Mancini (2009), who derive the price of an European call by a “nonparametric regression”.
Concerning the second problem, the inverse of the call function does not have an analytical representation and therefore the problem can only be approached by numerical methods (Newton–Raphson and other iterative schemes) and, in some instances, even those methods may fail for technical reasons (Orlando and Taglialatela 2017; Dura and Moşneagu 2010; Lorig et al. 2014; Liu et al. 2019). Recently, Liu et al. (2019) and Cao et al. (2019) suggested new numerical methods to reconstruct the volatility through neural networks.
A different approach to the solution of both problems is to approximate directly the call function with a suitable function, and then to use the inverse of such a function to derive the approximated implied volatility. The rationale of such an approach is that “The cost and inconvenience of iterating also motivate the search for explicit formulas. For example, traders often need to plot intra-day implied volatility in real time. In this case, the non-numerical approach such as using an explicit formula is a must” (Li 2005). In this way, practitioners can use spreadsheets to derive the price of the call as a function of the volatility and the implied volatility as a function of the price. This is of particular importance since only volatility matters in option valuation while the direction of the asset price does not. Moreover, when traders agree on the volatility they agree, also, on the option value and personal preferences are not relevant.
Generally, such closed form approximations rely on Taylor approximations or on the power series expansion of the cumulative normal distribution function (cndf) [see for example Manaster and Koehler (1982), Brenner and Subrahmanyam (1998), Bharadia et al. (1995), Chance (1996), Corrado and Miller (1996a, (1996b), Liang and Tahara (2009) and Li (2005)] [for a review of the subject see Orlando and Taglialatela (2017)]. In particular, Li proposes to approximate the call function with its third or second order Taylor polynomial and derives the implied volatility by solving a third or second degree equation. Obviously, the Taylor polynomials have local character, so the approximations are useful only in the case \(S=X\) or S close to X and only for restricted values of \(\sigma \) and C.
In this paper, we propose a different approach; to be precise, for every value of S, X and T, the call function \(C={\mathscr {C}}(\sigma )\) is a sigmoidal function with finite limits at 0 and \(+\infty \); so we propose to approximate globally \({\mathscr {C}}\) with a function which has the same behaviour at 0, at \(+\infty \) and at the inflection point of \({\mathscr {C}}\). Moreover, since we have to use the inverse of the approximating function to approximate the inverse of \({\mathscr {C}}\), we need the approximating function to have an inverse which is easily analytically representable. So we have been led to look for the approximating function by means of the hyperbolic tangent as in Orlando and Taglialatela (2020), which is the prototype of a sigmoidal function with an easy inverse.
The paper is organized as follows. In the first section, we consider the case \(S\ne X\) and we introduce the so-called “standardized call functions”, which is a single-parameter function representing the general family of calls, and we propose the desired approximations of the call functions. In the second section we propose the approximation of the call function in the case \( S = X\). The third section is devoted to deriving the approximations of the implied volatility again in the cases \(S \ne X\) and \( S = X\). In the fourth section, we present some results of numerical simulations and compare such results with the ones given by other authors. Performance of this closed form solution as well as empirical tests on market data are included. Finally, the last section summarizes the work and concludes.
2 Approximating the call function when \(S \ne X\)
2.1 The standardized call function
In order to simplify the presentation we introduce a family of standardized call functions:
depending on a single parameter \(\alpha >0\).
The following Proposition contains the main properties of the mappings \(\chi _\alpha \).
Proposition 2.1
For all \(\alpha >0\) one has that:
-
(i)
\(\lim _{x\rightarrow 0^+} \chi _\alpha (x) = 0\) and \(\lim _{x\rightarrow +\infty } \chi _\alpha (x) = 1\).
-
(ii)
\(\chi _\alpha (x)\) is strictly increasing in \(]0,+\infty [\).
-
(iii)
\(\chi _\alpha (x)\) is strictly convex in ]0, 1] and strictly concave in \([1,+\infty [\).
Proof of (i)
It is a trivial consequence of the limits at \(\pm \infty \) of N(x).
Proof of (ii)
We have:
and, since
we get
from which we derive that \(\chi _\alpha (x)\) is strictly increasing in \(]0,+\infty [\). \(\square \)
Proof of (iii)
Differentiating (2.1) we get
from which we derive that \(\chi _\alpha (x)\) is strictly convex in ]0, 1] and strictly concave in \([1,+\infty [\).
For S, X and T fixed, the relationship between the call function \(C= {\mathscr {C}}(\sigma ) \) and the family of functions \((\chi _\alpha )_{\alpha >0}\) is contained in the following
Proposition 2.2
Let us fix \(S>0\), \(X>0\) and \(T>0\), with \(X \ne S\), and let us put
then we have
Proof
Assume \(X>S\); since \({\alpha ^2}/{2} = \log (X/S) = -\log (S/X)\), and therefore \(X=S{\mathrm{e}}^{\alpha ^2/2}\), we have
Assume \(X<S\); since \(\alpha ^2/2 = \log (S/X) = -\log (X/S)\) and therefore \(S= X {\mathrm{e}}^{\alpha ^2/2}\), we have
Now, since
we get
\(\square \)
2.2 Construction of the approximating functions
From Proposition 2.2 it follows that, in order to get a good approximation of the call functions \({\mathscr {C}}(\sigma )\), it is sufficient to give, for all \(\alpha >0\), a good approximation \(\widehat{\chi }_\alpha \) of \(\chi _\alpha \).
For the sake of simplicity, let us fix \(\alpha >0\) so that we can omit the index \(\alpha \) and simply denote \(\chi \) and \(\widehat{\chi }\) the mappings \(\chi _\alpha \) and \(\widehat{\chi }_\alpha \).
By Proposition 2.1, we know that \(\chi \) has a sigmoidal shape.
This fact suggests us to look for an approximation based on the hyperbolic tangent
which has a similar shape and has the advantage of having a very simple inverse function
In our case, we look for an approximating function of the form
where \(\varphi :]0,+\infty [ \rightarrow {\mathbb {R}}\) is strictly increasing and satisfies the conditions \(\varphi (0^+) = -\infty \) and \(\varphi (+\infty ) = + \infty \), so that \(\widehat{\chi }\) is strictly increasing and tends to 0 as x tends to 0 and tends to 1 as x tends to \(+\infty \).
For example, we can choose \(\varphi \) of the form
with \(c_1>0\) and \( c_2>0\) so that \(\varphi (x)\) is strictly increasing and has the desired behaviour at 0 and \(+\infty \).
Obviously, we have to choose the constants \(c_1, c_2, c_3\) in such a way that \(\widehat{\chi }\) gives the best approximation of \(\chi \); hence we impose that both \(\widehat{\chi }\) and \(\chi \) have an inflection point at \(x=1\) with the same tangent lines there, i.e. we impose that \(c_1\), \(c_2\) and \(c_3\) have to satisfy the conditions:
As
we have
Thus, conditions (2.7) give
If we put \(\beta = {\mathrm{e}}^{\alpha ^2/2} N(-\alpha )\), then we can rewrite such equations as
From (2.9) we get
thus Eq. (2.10) gives
and consequently
Finally, from (2.8) it follows
Hence, \(c_1\), \(c_2\) and \(c_3\) are uniquely determined and depend only on \(\alpha \). We have only to check that \(c_1\) and \(c_2\) are positive.
The positivity of \(c_2\) follows from (2.11); the proof of the positivity of \(c_1\) is a little more involved.
In fact the sign of \(c_1\) is the same as the sign of
The second factor is positive; hence, the sign of \(c_1\) is the same as the sign of the first one, i.e.
So, in order to prove that \(c_1\) is positive, it is sufficient to prove that
Such an inequality is an immediate consequence of the Komatsu–Pollak estimate (Komatsu 1955; Pollak 1956). For the reader’s convenience, we provide a proof in “Appendix”.
2.3 The approximating call functions
Hence, for all \(\alpha >0\) we have found a good approximation to \(\chi _\alpha \), namely the function
where \(c_1(\alpha )\), \(c_2(\alpha )\) and \(c_3(\alpha )\) are given by (2.12), (2.11) and (2.13).
From this and from Proposition 2.2, we can conclude that for all \(S>0\) and \(X>0\), with \(S\ne X\), a good approximation to \({\mathscr {C}}(\sigma )\) is the function
with
3 Approximating the call function when \(S=X\)
In the special case \(S=X\), we have \(d_1(\sigma ) = \frac{\sigma }{2}\,\sqrt{T\,}\) and \(d_2(\sigma ) = - \frac{\sigma }{2}\,\sqrt{T\,}=-d_1\). Hence, \({\mathscr {C}}(\sigma )\) reduces to
since \(N(-x) = 1-N(x)\) for all \(x\in {\mathbb {R}}\). Recalling the error function defined by
which is related to N(x) by the identity
we can also write
Hence, in order to approximate the call function, we have to approximate the function N(x) or equivalently \({{\,\mathrm{erf}\,}}(x)\). There are a lot of approximated formulae for N(x) as well as for \({{\,\mathrm{erf}\,}}(x)\), see Choudhury (2014), Eidous and Abu-Shareefa (2020) and the references therein. However, not all of these formulas are useful for our purpose, since the inverse is not easy to compute; (e.g. Eidous and Abu-Shareefa 2020) or they are similar to the hyperbolic tangent [see Page (1977) or the almost identical formula in Bowling et al. (2009)].
We propose to approximate \({{\,\mathrm{erf}\,}}(x)\) with the function
which has the same limit at \(+\infty \) and the same Taylor expansion of third order in 0 as the error function, and therefore we propose to approximate \({\mathscr {C}}(\sigma )\) with
Notice that \(\Theta (x)\) is quite similar to the functions
obtained, respectively, in Fairclough (2000) and Page (1977) by an optimization procedure.
Numerical tests show that \(\Theta (x)\), \(\Theta _F(x)\) and \(\Theta _P(x)\) provide approximations of the same order of accuracy (see Sect. 5.2 for details).
4 Approximation of the implied volatility
In order to find the implied volatility we should invert the call function \({\mathscr {C}}\), i.e. we should be able to solve the equation \({\mathscr {C}}(\sigma )=C\). Since \(\widehat{{\mathscr {C}}}\) is a good approximation of \({\mathscr {C}}\), we approximate the implied volatility by solving the equation
4.1 Case \(S \ne X\)
In this case, by (2.18), equation (4.1) is equivalent to
According to (2.5) such an equation is equivalent to
where \([S-X]^+ = \max (S-X,0)\) is the pay-off.
On the other hand, for any \(\lambda \in {\mathbb {R}}\) the equation
has a unique positive solution, given by
Thus, the implied volatility can be approximated by
where \(\Lambda = \frac{1}{2} \, \log \Bigl (\frac{C - [S-X]^+}{S-C}\Bigr )\) and \(c_1(\alpha )\), \(c_2(\alpha )\) and \(c_3(\alpha )\) are given by (2.12), (2.11) and (2.13).
4.2 Case \(S=X\)
In this case, the equation \(\widehat{{\mathscr {C}}}(\sigma ) = C\) is equivalent to the equation
Now it is well known that for all \(p>0\) the equation
has a unique real solution given by
Hence, the approximating value of the implied volatility, i.e. the unique solution to Eq. (4.4) is given by
with
5 Numerical results
Volatility in the markets has been calculated by many. Mo and Wu (2007), on a sample from January 3, 1996, to August 14, 2002, of 346 weekly observations for each index, reported that the implied volatility on the S&P 500 Index (SPX), the FTSE 100 Index (FTS), and the Nikkei-225 Stock Average (NKY) ranges from 15 to 35% with S/X comprised between 80 and 120% and maturity 1 m, 3 m, 6 m and 12 m. Glasserman and Wu (2011), on a sample consisting of 2049 data points from August 9, 2001 to June 16, 2009, found that the implied volatility ranges from 5 to 43% with currency options on EURUSD, GBPUSD and USDJPY for at 10-delta put (P10d), 25-delta put (P25d), At-The-Money (ATM), 25-delta call (C25d), and 10-delta call (C10d).
Figure 1 shows the overall daily distribution of the VIX (CBOE 2020) since inception up to 2015. Throughout these years median volatility has been \(\sim 18\%\), mode \(\sim 13\%\) and average is \(\sim 20\%\) and high values are rare.
5.1 Call when \(S \ne X\)
5.1.1 On the estimation error
First of all notice that for all \(\alpha > 0\) the approximation error
corresponds to the moneyness \(S/X={\mathrm{e}}^{\alpha ^2/2}>1\) as well as to the moneyness \(S/X={\mathrm{e}}^{-\alpha ^2/2}<1\).
We start by showing (Fig. 2) the graph of \(E_\alpha (x)\) for \( \alpha = 0.3124\) corresponding to the moneyness \(S/X = 1.05\), as well as \(S/X=0.95\). There it can be seen that the error of the approximation \(\bigl |E_\alpha (x)\bigr |\) is greater than 0.01 only for \(x>2\), e.g. for \(T=0.25\), when \(\sigma > 1.2495\) which is an unrealistic level of the volatility.
More generally, Tables 1 and 2 report the error \(\bigl |E_\alpha (x)\bigr |\) for some significant values of x and \(\alpha \) in absolute and percentage terms. Notice that the chosen values of \(\alpha \) correspond approximately to S/X equal to 1.03, 1.13, 1.32, 1.65, 2.18 as well as S/X equal to 0.97, 0.88, 0.75, 0.61, 0.46 respectively. These tables show that the approximation is sufficiently good, especially for the small values of x, which correspond to realistic values of sigma.
We have also tried to compute the maximum value of the approximation error as a function of \(\alpha \). Indeed for every \(\alpha >0\) the function \(\bigl |E_\alpha (x)\bigr |\) is smooth in \(]0,+\infty [\), and tends to 0 as x tends to 0 and to \(+\infty \). Thus, the maximum value of \(\bigl |E_\alpha (x)\bigr |\) in the interval \(]0,+\infty [\) exists and can be located by finding the zeros of its derivative,
where \(\varphi _\alpha (x):= c_1(\alpha )\,x-\frac{c_2(\alpha )}{x}+c_3(\alpha )\) and \(c_1(\alpha )\), \(c_2(\alpha )\) and \(c_3(\alpha )\) are given by (2.12), (2.11) and (2.13). Unfortunately, finding the zeros of \(E_\alpha '\) is an almost impossible task. The same applies to finding a function \(\Phi =\Phi (\alpha )\) such that for every \(\alpha >0\) one has \(\bigl |E_\alpha (x)\bigr | \le \Phi (\alpha )\) for all x.
For the said reason, for a given \(\alpha >0\), in order to compute
we resort to numerical methods, namely to the Nelder–Mead simplex algorithm (Nelder and mead 1965; Gao and Han 2012), which, even though it is slower than gradient-based algorithms, works well when the call function to approximate is steep or flat [for issues related to those cases see Orlando and Taglialatela (2017)]. Table 3 reports the maximum value of the approximation error for the same values of \(\alpha \) considered in Tables 1 and 2.
5.1.2 Monte Carlo analysis on the estimation error
Notice that for all \(\alpha > 0\), \(T > 0\), \(\sigma > 0\) the approximation error
represents the approximation error between the call \( {{\mathscr {C}}} (\sigma )\) and its approximation \(\widehat{{\mathscr {C}}}(\sigma )\) for the case when \(X=1\) and \(S= {\mathrm{e}}^{\alpha ^2/2} >1 = X\) as well for the case \(S=1\) and \(X= {\mathrm{e}}^{\alpha ^2/2} >1 = S\).
The following Table 4 shows that such an approximation error is very good for the most traded combination of T, S/X and \(\sigma \).
We have also performed a Monte Carlo analysis on the error
for 10, 000 values of \(\alpha \) and 500 instances of \(\sigma \), uniformly distributed in the interval ]0, 1.25]. We first take the whole interval ]0, 1.25] and then we divide it into five parts (each containing 100 \(\sigma \)) to illustrate where the differences are higher or lower.
In Tables 5, 6 and 7, we show such an analysis, respectively, for the cases where time is equal to 1 month, one quarter and one semester (respectively).
Notice that the biggest errors are when \(\sigma \in [0.75,1.25]\) i.e. for those cases in which the volatility is extremely rare (see Fig. 1).
5.2 Call when \(S = X\)
To show the approximation’s error, in Fig. 3 we plot the graph of the difference between the functions \({{\,\mathrm{erf}\,}}(x)\) and \(\Theta (x)\) as defined in Sect. 3.
As previously mentioned, there is a large number of approximations for the standard normal distribution or, equivalently, for the error function. In Table 8, we compare our approximations with Bowling et al. (2009) [which is equivalent to Page (1977)], and Eidous and Abu-Shareefa (2020). As shown, the approximations are very close and \(\Theta \) has the smallest RMSE.
5.2.1 Monte Carlo analysis on the estimation error
Now we consider the lattice \({\mathfrak {L}}\) composed of the couples \((\sigma , T)\) with \(\sigma \in [0, 1.25]\) and \(T =k/12 \) with \(k=1,\dotsc , 24\). From it, we randomly extract 10,000 samples. The statistics on the errors reported in Table 9 confirm the good quality of the approximation.
5.3 Implied volatility
In Orlando and Taglialatela (2017), we compared the results derived with Brenner and Subrahmanyam (1998), Corrado and Miller (1996a, (1996b) and Li (2005) formulae. As we found that the latter is the most accurate, we consider S. Li formula as our benchmark. Notice that, for reader’s convenience, ranges are similar to the ones published by AMC (see Li 2005). This because we wanted to make easier for the reader a comparison with one of the most precise approximations available in the literature.
5.3.1 Case when \(S \ne X\)
In Table 10, we compare the results obtained by S. Li formula denoted by \(\widehat{\sigma }_{L}\) with those obtained with formula (4.3) denoted by \(\widehat{\sigma }\). The prices of all calls have been generated with the BSM model and, then, the implied volatility has been derived by using the inversion formulae. Each column provides the results of the said formulae for maturities T from 0.1 to 1.5 versus the true volatility.
As shown, \(\widehat{\sigma }\) is available even when \(\widehat{\sigma }_{L}\) is not and approximates better the implied volatility for all maturities, moneyness and level of \( \sigma \) except the part where it is very high (but this occurrence is very unlikely as shown in Fig. 1). Moreover the error for the \(\widehat{\sigma }\) formula is more consistent.
When S is close to X, the proposed approximating function is structurally less precise than the S. Li formula. This because his formula is derived from the Taylor polynomial with center \(S/X =1\). Nevertheless, in Table 11 we report some results for the case \(S/X = 1.05\) and low levels of \(\sigma \), where our formula produces a result close to the reality for the short term traded options (i.e. the most traded), while the benchmark fails to provide any value.
5.3.2 Case when \(S = X\)
Let us now consider the ATM case. In Table 12, we compare the implied volatility \(\widehat{\sigma }\) as defined in (4.5) with \(\widehat{\sigma }_{L}\) calculated with S. Li formula (Li 2005). Notice that precision of our formula is of \(10^{-6}\).
Furthermore, in Table 13, we show a Monte Carlo simulation where the prices of all calls are generated with the BSM model for a given volatility ranging from 15 to 125% and maturity comprised between 0.1 and 1.5 years. Displayed on the left of Table 13 there are some statistics on the error between the true volatility and the estimated one.
5.3.3 Empirical results on SPDR S&P 500 ETF TRUST
In Table 14 we show how Eq. (4.3) compares versus (Li 2005) and the widely used Brenner and Subrahmanyam (1998) (\(\widehat{\sigma _B}\)) formula. As shown, S. Li formula often does not provide any value, whereas Brenner and Subrahmanyam and our formula give an estimate in all cases. Unfortunately, Brenner and Subrahmanyam formula is precise only for ATM options which may exist only at the inception.
5.4 Computational performance of the algorithm: hybrid method versus closed form solution
With regard to computational performance, we recall that the scope of this work is limited to analytical approximations. Among the reasons of this choice is the practical need to obtain a fast result. In order to asses that, we take as a benchmark a hybrid numeric algorithm able to quickly compute the implied volatility in a large number of cases such as the one proposed in Orlando and Taglialatela (2017). While we do not want to discuss all potential alternatives in this instance, we limit to mention that there are other solutions such as the built-in blsimpv available in Matlab (2020) or the heuristic hybrid method proposed by Li (2008) as implemented by Whirdy (2020).
The idea in both papers Li (2008) and Orlando and Taglialatela (2017) is to derive numerically the implied volatility from a suitable starting point with the following characteristics: as close as possible to the true value and able to “guide” a gradient based algorithm to not diverge. Apart from the said similarity, the two approaches are quite different in their implementation. In fact, the first one calculates Black–Scholes implied volatility by using M. Li’s rational function approximations for the initial estimate, followed by 3rd-order Householder’s root finder (i.e. using Vega, Vomma and Ultima) (Li 2008; Whirdy 2020). The second adopts the Newton–Raphson algorithm by taking as a starting point the inflection of the call function (Orlando and Taglialatela 2017). The problem with the first approach is that M. Li formula (Li 2008) works only in a very strict domain while the second approach (Orlando and Taglialatela 2017) works almost every time (unless the objective function is flat or vertical). Table 15, for a given true volatility of 10%, displays the implied volatility obtained with the two above mentioned approaches. As shown, once more, the Li (2005) formula in some instances does not provide a solution and the Whirdy algorithm (Li 2008; Whirdy 2020) shoots off.
As the chosen parameters are not uncommon to find in the current market environment, we discard (Li 2008; Whirdy 2020) in favour of Orlando and Taglialatela (2017).
Having demonstrated that the best available hybrid solution is Orlando and Taglialatela (2017), in this work, we compare the said algorithm with the proposed analytic formula for ATM, ITM and OTM options. In Table 16 we show the performance of the Newton–Raphson method as described in Orlando and Taglialatela (2017) versus \(\widehat{\sigma }\) on a test run over 10,000 options. The closed form solution, executed in VBA, is quite fast in finding the 10,000 volatilities for the corresponding ATM, ITM and OTM options and, as expected, it is faster than its corresponding numerical algorithm.
6 Stress tests
Stress testing is a key activity for managing the risk. Risk is represented by \(\sigma \) which is the only variable that may jump suddenly. By sampling the approximating functions in different segments of \(\sigma \), stress testing boils down to taking one of those intervals. Tables in Sects. 5.1.2, 5.2.1 and 5.3.1 list the possible outcomes for both: volatility and strike. Alternative formulas (Corrado and Miller 1996a, b; Li 2005, 2008) for some values cannot provide any solution.
7 Conclusions
In regard to the BSM formula “in many respects the story of the establishment of the Black–Scholes–Merton model simply marks the emergence of contemporary financial risk management” (Millo and MacKenzie 2009). Despite the many pitfalls of the BSM formula, there are several reasons that keep it alive. For example “the BSMs biggest strength is the possibility of estimating market volatility of an underlying asset generally as a function of price and time without, for example, direct reference to expected yield, risk aversion measures or utility functions. The second greatest strength aspect is its self-replicating strategy or hedging: explicit trading strategy in underlying assets and risk-less bonds whose terminal payoff, which equals the payoff of a derivative security at maturity. In other words, theoretically an investor can continuously buy and sell derivatives in the strategy and never incur loss. It is also simple and mathematically tractable as compared to some of its more recent variations” (Yalincak 2012). Therefore, even though in many respects BSM is outdated and has a number of shortcomings, it is still widely used especially for real time computations and for extracting the implied volatility.
In this work, we have recalled the importance of calculating the value of the call for pricing as well as for inferring the implied volatility. To be precise a standardized call function has been introduced to represent the whole family of calls and to simplify the calculations. Then we have shown how the approximation of the aforementioned standardized call can be performed through the hyperbolic tangent instead of the usual Taylor truncation. This allows a greater accuracy for extreme values of \(\sigma \), which makes this approach particularly suitable for stress testing and hedging purposes.
Finally, we have derived some explicit formulae for approximating the implied volatility that seem to be better than the ones proposed in the literature so far and are valid regardless of an option’s moneyness. Therefore because of the higher accuracy and flexibility, this approach could replace current methods with little additional effort.
References
Bharadia, M., Christofides, N., Salkin, G.: Computing the Black–Scholes implied volatility: generalization of a simple formula. Adv. Futures Options Res. 8, 15–30 (1995)
Black, F., Scholes, M.: The pricing of options and corporate liabilities. J. Polit. Econ. 81(3), 637–654 (1973)
Bowling, S.R., Khasawneh, M.T., Sittichai, K., Cho, B.R.: A logistic approximation to the cumulative normal distribution. J. Ind. Eng. Manag. 2(1), 114–127 (2009)
Brenner, M., Subrahmanyam, M.G.: A simple formula to compute implied standard deviation. Financ. Anal. J. 44(5), 80–83 (1998)
Cao, J., Chen, J., Hull, J.C.: A neural network approach to understanding implied volatility movements (2019). Available at SSRN https://ssrn.com/abstract=3288067
CBOE: VIX and volatility (2020). http://www.cboe.com/products/vix-index-volatility. Accessed 30 June 2020
Chance, D.M.: A generalized simple formula to compute the implied volatility. Financ. Rev. 31(4), 859–867 (1996)
Choudhury, A.: A simple approximation to the area under the standard normal curve. Math. Stat. 2(3), 147–149 (2014)
Christoffersen, P., Jacobs, K.: Which GARCH model for option valuation? Manag. Sci. 50(9), 1204–1221 (2004)
Corrado, C.J., Miller, T.W.: A note on a simple, accurate formula to compute implied standard deviations. J. Bank. Financ. 20(3), 595–603 (1996a)
Corrado, C.J., Miller, T.W.: Volatility without tears: a simple formula for estimating implied volatility from options prices over a wide range of strike prices. Risk 9(7), 49–52 (1996b)
Derman, E., Taleb, N.N.: The illusions of dynamic replication. Quant. Financ. 5(4), 323–326 (2005)
Duan, J.-C.: The GARCH option pricing model. Math. Financ. 5(1), 13–32 (1995)
Duan, J., Gauthier, G., Simonato, J., Sasseville, C.: Approximating the GJR-GARCH and EGARCH option pricing models analytically. J. Comput. Financ. 9(3), 41 (2006)
Dura, G., Moşneagu, A.-M.: Numerical approximation of Black–Scholes equation. Ann. Alex. Ioan Cuza Univ. Math. 56(1), 39–64 (2010)
Eidous, O.M., Abu-Shareefa, R.: New approximations for standard normal distribution function. Commun. Stat. Theory Methods 49(6), 1357–1374 (2020)
Engle, R.F., Mustafa, C.: Implied arch models from options prices. J. Econom. 52(1–2), 289–311 (1992)
Estrella, A.: Taylor, Black and Scholes: series approximations and risk management pitfalls. Technical Report No. 9501, Federal Reserve Bank of New York (1995). https://www.newyorkfed.org/research/staff_reports/research_papers/9501.html. Accessed 20 Oct 2019
Fairclough, T.J.: The Case of the Counterfeit Error Function. Institut Teknologi Brunei, Brunei Muara (2000)
Fan, J., Mancini, L.: Option pricing with model-guided nonparametric methods. J. Am. Stat. Assoc. 104(488), 1351–1372 (2009)
Gao, F., Han, L.: Implementing the Nelder–Mead simplex algorithm with adaptive parameters. Comput. Optim. Appl. 51(1), 259–277 (2012)
Glasserman, P., Wu, Q.: Forward and future implied volatility. Int. J. Theor. Appl. Financ. 14(03), 407–432 (2011)
Heston, S.L.: A closed-form solution for options with stochastic volatility with applications to bond and currency options. Rev. Financ. Stud. 6(2), 327–343 (1993)
Hofstetter, E., Selby, M.J.: The logistic function and implied volatility: quadratic approximation and beyond. Technical Report No. 04-214, Warwick Business School Preprint Serie (2001). https://warwick.ac.uk/fac/soc/wbs/subjects/finance/research/wpaperseries/2004/04-214.pdf. Accessed 20 Oct 2019
Jacquier, A., Lorig, M.: From characteristic functions to implied volatility expansions. Adv. Appl. Probab. 47(3), 837–857 (2015)
Komatsu, Y.: Elementary inequalities for Mills’ ratio. Rep. Stat. Appl. Res. Un. Jpn. Sci. Eng. 4, 69–70 (1955)
Li, S.: A new formula for computing implied volatility. Appl. Math. Comput. 170(1), 611–625 (2005)
Li, M.: Approximate inversion of the Black–Scholes formula using rational functions. Eur. J. Oper. Res. 185(2), 743–759 (2008)
Liang, S., Tahara, Y.: A formula to compute implied volatility, with error estimate. Interdiscip. Inf. Sci. 15(2), 267–272 (2009)
Liu, S., Oosterlee, C.W., Bohte, S.M.: Pricing options and computing implied volatilities using neural networks. Risks 7(1), 1–22 (2019)
Lorig, M., Pagliarani, S., Pascucci, A.: A Taylor series approach to pricing and implied volatility for local-stochastic volatility models. J. Risk 17(2), 3–19 (2014)
Manaster, S., Koehler, G.: The calculation of implied variances from the Black–Scholes model: a note. J. Financ. 37(1), 227–230 (1982)
Matić, I., Radoičić, R., Stefanica, D.: Pólya-based approximation for the ATM-forward implied volatility. Int. J. Financ. Eng. 4(02–03), 1750032 (2017)
Matlab: Black–Scholes implied volatility (2020). https://www.mathworks.com/help/finance/blsimpv.html. Accessed 10 Aug 2020
Mehta, S.: Volatility in motion (2015). http://statisticalideas.blogspot.com/2015/07/volatility-in-motion.html. Accessed 20 Oct 2019
Merton, R.C.: Theory of rational option pricing. Bell J. Econ. Manag. Sci. 4(1), 141–183 (1973)
Millo, Y., MacKenzie, D.: The usefulness of inaccurate models: towards an understanding of the emergence of financial risk management. Account. Organ. Soc. 34(5), 638–653 (2009)
Mo, H., Wu, L.: International capital asset pricing: evidence from options. J. Empir. Financ. 14(4), 465–498 (2007)
Mostafa, F., Dillon, T., Chang, E.: Computational Intelligence Applications to Option Pricing, Volatility Forecasting and Value at Risk, vol. 697. Springer, Berlin (2017)
Nelder, J.A., Mead, R.: A simplex method for function minimization. Comput. J. 7(308), 13 (1965)
Nielsen, L.T.: Understanding \(n(d_1)\) and \(n(d_2)\): risk adjusted probabilities in the Black–Scholes model. J. Fr. Financ. Assoc. 14, 95–106 (1993)
Orlando, G., Taglialatela, G.: A review on implied volatility calculation. J. Comput. Appl. Math. 320, 202–220 (2017)
Orlando, G., Taglialatela, G.: On the approximation of the Black and Scholes call function. J. Comput. Appl. Math. (2020). https://doi.org/10.1016/j.cam.2020.113154
Page, E.: Approximations to the cumulative normal function and its inverse for use on a pocket calculator. J. R. Stat. Soc. Ser. C (Appl. Stat.) 26(1), 75–76 (1977)
Pianca, P.: Simple formulas to option pricing and hedging in the Black–Scholes model. Rendiconti per gli Studi Economici Quantitativi 1, 223–231 (2005)
Pollak, H.O.: A remark on “Elementary inequalities for Mills’ ratio” by Yûsaku Komatsu. Rep. Stat. Appl. Res. Un. Jpn. Sci. Eng. 4, 110 (1956)
Pólya, G.: Remarks on computing the probability integral in one and two dimensions. In: Neyman, J. (ed.) Proceedings of the First Berkeley Symposium on Mathematical Statistics and Probability, August 13–18, 1945 and January 27–29, 1946, pp. 63–78, Berkeley, Calif. Statistical Laboratory of the University of California, Berkeley, University of California Press (1949)
Ritchken, P., Trevor, R.: Pricing options under generalized GARCH and stochastic volatility processes. J. Financ. 54(1), 377–402 (1999)
Whirdy, M.: Black–Scholes implied volatility (2020). https://www.mathworks.com/matlabcentral/fileexchange/41473-calcbsimpvol-cp-p-s-k-t-r-q. Accessed 10 Aug 2020
Yalincak, O.H.: Criticism of the Black–Scholes model: but why is it still used?: (The answer is simpler than the formula) (2012). Available at SSRN https://ssrn.com/abstract=2115141
Funding
Open access funding provided by Università degli Studi di Bari Aldo Moro within the CRUI-CARE Agreement.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix: Proof of inequality (2.16)
Appendix: Proof of inequality (2.16)
Consider the function
in order to prove the assertion it will be sufficient to prove that \(h(x) > 0 \) for all \(x>0\).
On the other hand, since \(h(0) = 0 \) and \(h(+\infty ) = 0\), it is sufficient to prove that there exists \(x_1>0\) such that h is strictly increasing in \(]-\infty ,x_1]\) and strictly decreasing in \([x_1,+\infty [\).
To this purpose we remark that one has
where we have put
Therefore in order to study the sign of \(h'\), we need to study the sign of the polynomial
in the interval \(]-1,1[\). Since p(u) has two real roots, \(u_1\) and \(u_2\), such that \( 0<u_1<1<u_2\), one has \(p(u) > 0\) if \(u\in ]-1,u_1[\) and \(p(u) < 0\) if \(u\in ]u_1, 1 [\).
On the other hand it is easy to see that u(x) is strictly increasing; therefore, if we put
we deduce that \(h'(x)>0\) if \(x\in ]-\infty ,x_1[\) and \(h'(x)<0\) if \(x\in ]x_1,+\infty [\).
Thus, h is strictly increasing in \(]-\infty ,x_1]\) and strictly decreasing in \([x_1,+\infty [\), as desired.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Mininni, M., Orlando, G. & Taglialatela, G. Challenges in approximating the Black and Scholes call formula with hyperbolic tangents. Decisions Econ Finan 44, 73–100 (2021). https://doi.org/10.1007/s10203-020-00305-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10203-020-00305-8