Home American Option Pricing Using Particle Filtering Under Stochastic Volatility Correlated Jump Model
Article Publicly Available

American Option Pricing Using Particle Filtering Under Stochastic Volatility Correlated Jump Model

  • Bin Song EMAIL logo , Enqi Liang and Bing Liu
Published/Copyright: December 25, 2014
Become an author with De Gruyter Brill

Abstract

A particle filter based method to price American option under partial observation framework is introduced. Assuming the underlying price process is driven by unobservable latent factors, the pricing methodology should contain inference on latent factors in addition to the original least-squares Monte Carlo approach of Longstaff and Schwartz. Sequential Monte Carlo is a widely applied technique to provide such inference. Applications on stochastic volatility models has been introduced by Rambharat, who assume that volatility is a latent stochastic process, and capture information about it using particle filter based “summary vectors”. This paper investigates this particle filter based pricing methodology, with an extension to a stochastic volatility jump model, stochastic volatility correlated jump model (SVCJ), and auxiliary particle filter (APF) introduced first by Pitt and Shephard. In the APF algorithm of SVCJ model, it also provides a modification version to enhance the performance in the resampling step. A detailed implementation and numerical examples of the algorithm are provided. The algorithm is also applied to empirical data.

1 Introduction

American options can be exercised at any time from inception to its maturity. American options traded in practice involve in those written on individual equities traded on the American Stock Exchange (AMEX), on index options on the S&P 100 Index, and on S&P 500 Index Futures traded on the Chicago Board Options Exchange (CBOE).

[4] first introduced the valuation problem of American options by solving an optimal stopping problem of a discounted expectation of the payoff function under a risk-neutral measure. Assuming that all the factors that affect the underlying price process are observable, the optimal stopping problem can be solved using the principles of dynamic programming, semi-analytical approximations as an adjustment from European options, deterministic solution of solving variational inequalities and stochastic solution of Least-Square Monte Carlo approach. “Volatility smile” in most option markets suggests that the volatility is not constant. The inconsistency between observed market data and the constant volatility model stimulates more realistic assumptions to model the underlying process, such as local volatility model class and stochastic volatility model class. Another stylized fact in the market data is the appearance of jumps in prices. Early jump models have been explored by [7], in which the jump part is modeled as a compound Poisson process, and the volatility remains constant. Since then, more general models are proposed, for example, stochastic volatility jump model class, which allows jumps appear in both volatility and price process. [10] described a new radial basis functions (RBFs) algorithm for pricing American options under Merton’s jump-diffusion model, which is based on a differential quadrature approach, that allows the implementation of the boundary conditions in an efficient way. The semi-discrete equations obtained after approximation of the spatial derivatives, using RBFs based on differential quadrature are solved, using an exponential time integration scheme. They also illustrate the efficiency and accuracy of this new algorithm.

Partial integro-differential formulations are often used for pricing American options under jump-diffusion models. A survey on such formulations and their numerical methods is presented. A detailed description of six efficient methods based on a linear complementarity formulation and finite difference discretizations is given. Numerical experiments compare the performance of these methods for pricing American put options under finite activity jump models, see [11]. [6] present an upwind difference scheme for the valuation of perpetual American put options, using Heston’s stochastic volatility model. The matrix associated with the discrete operator is an M-matrix, which ensure that the scheme is stable. They apply the maximum principle to the discrete linear complementarity problem in two mesh sets and derive the error estimates.

[1] considers the problem of pricing American options when the dynamics of the underlying are driven by both stochastic volatility following a square-root process.

As we have known, the volatility can not be directly observed. Under the framework of partial observation, Sequential Monte Carlo (SMC) is a widely studied algorithm that provides statistical inference on unobservable state-space models. Sequential importance resampling (SIR) algorithm can be used to estimate the latent factors given the observed data. In particular, we discuss how particle filtering, usually considered as the “default choice” of SMC, is implemented. An extension of SIR algorithm, called APF which is introduced by [8]. In the context of American option pricing, [9] is the first to study the particle filter based pricing problem.

2 American option pricing problem with stochastic volatility jump models

We employ a hidden Markov model (HMM) to describe the price process driven by unobservable latent factor. Let (Ω, 𝓕, ℙ) be a probability space satisfying usual conditions. Let {Ln}n≥0 and {Sn}n≥0 be vector-valued stochastic processes defined on (Ω, 𝓕, ℙ). Assume that only {Sn}n≥0, denoted as the dynamic of asset prices, is observable, while the “latent factor” that {Ln}n≥0, which stands for “latent”, is unobservable. We denote the lowercase {sn}n≥0 and {ln}n≥0 as observed and known data set. Also denote s0:n : eqq{s0, s1, ⋯, sn} and l0:n : eqq{l0, l1, ⋯, ln}.

L0p(l0)(1)
Ln+1|Ln=lnp(ln+1|ln)(2)
Sn+1|L1:n+1=l1:n+1=Sn+1|Ln+1=ln+1p(sn+1|ln+1)(3)

This class of hidden Markov models (HMM) includes most models of interests in quantitative finance. For example, stochastic volatility models and jump models. Our last goal is to derive an Monte Carlo based algorithm on the valuation of American option.

2.1 Optimal stopping problem under partial information

Assume that we have a hidden Markov model {(Ln, Sn), n = 0, 1, ⋯, T} as described in (1)∼(3) under a finite dimensional time space 𝓣 : eqq{0, 1, ⋯, T}. The filtration generated by {(Ln, Sn)} is 𝓕n = σ {(Li, Si);i = 0, 1, ⋯, n}, and the observable filtration generated by observable data is FnS = σ (S0, S1, ⋯, Sn). A random variable τ : Ω → 𝓣 is a FnS -stopping time if {τn} ∈ FnS for every n ∈ 𝓣. Also define 𝓣S as the set of FnS -stopping times τ ∈ 𝓣. At time 0, the initial price S0 is known and the latent factor L0 follows a known distribution π0 = p(l0), which is derived from the historical data up to S0.

Let u0 = u0 (S0, π0) denotes the price of an American option on S0. Under certain regular conditions, the fundamental theorem of asset pricing shows that the arbitrage-free price of the option with maturity T is a finite-horizon partially observable optimal stopping problem:

u0(S0,π0)=supτTSEQerτg(Sτ,Lτ,τ)S0=s0,L0π0(4)

where g : 𝓢 × 𝓛 × 𝓣 → ℝ is the payoff function at time τ. For a strike price K, the payoff of a call option is g = g(Sτ) = (SτK)+; and for a put option, g(Sτ) = (KSτ)+. In addition, 𝔼 [⋅|⋅] stands for the conditional expectation under the chosen equivalent martingale measure ℚ with respect to ℙ. In this setting, the decision maker has only access to Sn at time n, so that the decision is made only relying on FnS.

According to [12], the above partially observable problem can be transformed to an equivalent fully observable form by introducing a new state “filtering distribution”, denoted as Πn = p(Ln|s0:n), which can be estimated by sequential Monte Carlo techniques. Given (Sn, Πn), the optimal pricing problem is equivalent to

u0(S0,π0)=supτTSEQerτg~(Sτ,Πτ,τ)S0=s0,L0π0(5)

where

g~(Sn,Πn,n)=E[g(Sn,Ln,n)FnS]=g(Ln,Sn)Πn(Ln)dLn(6)

Theoretically, we can solve it following the dynamic programming recursion:

un(Sn,Πn)=maxg~(Sn,Πn,n),Cn(Sn,Πn,n),n=T,,1(7)

where Cn(Sn, Πn, n) is the continuation value at time t defined as

CT(ST,ΠT,T)=g~(ST,ΠT,T)(8)
Cn(Sn,Πn,n)=Eun+1(Sn+1,Ln+1,n+1)Sn,Πn,n=T1,,0(9)

Then the optimal stopping time is

τ=mintT|g~(Sn,Πn,n)>Cn(Sn,Πn,n)(10)

The above recursion show that (Sn, Πn) are sufficient statistics that determine the optimal stopping time. However, it is often impossible to solve the problem exactly following (7). The difficulty inside comes first from the fact that the filtering distribution Πn is infinite dimensional, and that a lack of accurate estimation of continuation value Cn(Sn, Πn, n). To overcome these two problems, Monte Carlo technique can be used to provide approximation. This is essentially done by firstly using particle filter to approximate the filtering distribution Πn, and summarize it within a finite-dimensional vector that describes the statistical property of it. Then a least-square Monte Carlo can be applied to estimate Cn(Sn, Πn, n). The detail algorithm is introduced in the next section.

2.2 Generic particle filter based American options pricer

We combine the dynamic programming algorithm with sequential Monte-Carlo techniques to pricing American options by particle filtering. The key to solve (7) is to provide a finite dimensional summary vector πnm of from m filtered particles at time n. The filtering distribution vary from time to time. For stochastic volatility model, the posterior distribution is usually near to the previous one. In such a case, measures of location and scale would be sufficient. The posterior distribution of volatility of the jump models can be highly skewed and may contains multiple peaks, especially when a jump in volatility and price occurs. In such a case, one may think of taking two modes of the filtered particles.

Assumes that under our algorithm, we have M scenarios indexed by i, with N time steps indexed by j, and m particles in each step indexed by k. For sake of simplicity, we present the SIR version here. Since the filtering step can be separated from the backward decision step, it is straightforward to implement the corresponding APF version.

Assume that under the physical measure ℙ, the asset price St is driven by two latent factors, namely, the latent variance and the latent jump process. Specifically, we assume that they are the solutions of the following stochastic differential equations:

dStSt=μdt+VtdWts+(eZts1)dNt(11)
dVt=κθVtdt+ηVtdWtv+ZtvdNt(12)
E[dWtsdWtv]=ρdt(13)

Where W=(Wts)t0 and W=(Wtv)t0 are two Brownian motions under probability measure ℙ, with parameters κ, θ, η and ρ are the same as Heston model. In addition, we assume that the jump sizes are ZtsN(μs,σs2),Ztvexp(μv) with correlation ρz. The jump times NtPoit) is a Poisson process with intensity λt for both spot and variance. This implicates the spot and variance would jump simultaneously, which is coherent with listed option data. For sake of simplicity, we assume the independence of jump and spot volatility, i.e. the correlation ρz = 0, because this parameter is difficult to estimate, as argued by [3] and [2].

2.3 Particle filtering in stochastic volatility jump model

The only difference between SVCJ and SV model is to simultaneously sample two latent factors and calculate the importance density in a more careful way. In SIR algorithm, the derivation is more straghtforward. The APF algorithm is more challenging because by first resampling, posterior distributions become some normal mixture.

2.3.1 Discretization of SVCJ model

Denote yn+1 = ln(Sn+1/Sn) as the log-return of asset price. By Euler-Maruyama scheme with sufficiently small equidistant time step h, we can discretize (11)∼(13) associated with the discretely observed data by

yn+1=j=1nh(μVn+jh2)h+j=1nhVn+jh(1ρ2ΔWn+jh(1)+ρΔWn+jh(2))+j=1nhZn+jhsJn+jh(14)
Vn+1=Vn+j=1nhκθVn+jhh+j=1nhη|Vn+jh|ΔWn+jh(2)+j=1nhZn+jhvJn+jh(15)

where (ΔWn+jh(1),ΔWn+jh(2)) are two independent Brownian motions, and Jn+jhBert) are Bernoulli random variables with intensities λt. The jump size is consistent over all time-discretization choice. We summarize the latent factors by

Ln=(Vn,Zns,Znv,Jn)(16)

It is easy to show that π0 = p(l0) = p(V0) ∼ χ2(2κθη2,η22κ). We still need to specify Πn = p(Ln|s0:n) = p(Ln|y0:n) by sequential Monte Carlo.

2.3.2 APF algorithm for SVCJ model

For APF algorithm, we need to specify how to compute the importance weights via p(yn+1|Ln), and sample from p(Ln+1|Ln, yn+1) to obtain an empirical approximation of Πn+1. The first step to evaluate p(yn+1|Ln) can be separated via

p(yn+1|Ln)=p(yn+1|Ln:n+1)p(Ln+1|Ln)dLn:n+1(17)

Notice that the conditional distributions of p(yn+1|Ln+1) are Gaussian. The approximation of p(yn+1|Ln:n+1) is straight forward from

p(yn+1|Ln:n+1(k))ϕ(yn+1|μy(k),(σy(k))2)(18)

To approximate p(Ln+1|Ln), we need to be more careful to deal with jumps of spot variance, because the jumps of asset prices do not have an influence on it. Following the mind as SV model, we need to compute the predictive particles V^n+jh(k) . One way to do so is to compute the conditional expectation of 𝔼[Vn+jh |Vn] by

V^n+jh(k)=E[Vn+jh|Vn(k)]=Vn(k)+κ(θVn(k))jh+λμv(19)

This is the most referred approach in current literature. However, it is essentially just a movement for all particles, and may suffer from sample impoverishment problem. We propose another way to calculate this predictive density. We thus have the approximation of (17) with

p(yn+1|Ln(k))i=0ϕyn+1|j=0nh(μV^n+jh(k)2)h+iμs,j=0nhV^n+jh(k)(1ρ2)h+iσs2λieλi!λϕyn+1|j=0nh(μV^n+jh(k)2)h+μs,j=0nhV^n+jh(k)(1ρ2)h+σs2+(1λ)ϕyn+1|j=0nh(μV^n+jh(k)2)h,j=0nhV^n+jh(k)(1ρ2)h(20)

where ϕ(⋅|μ, σ2) is a normal density. Then we can resample particles Ln(k) using p(yn+1 |Ln(k)).

The second step is to update the particles from p(Ln+1|Ln, yn+1). In SVCJ model, this remains to sample three variables: the jump times, the jump sizes, and the spot variance. Since the latter two depend on the first, we can simulate the jump times marginalizing out jump sizes:

p(Jn+1(k)=i|Vn(k),yn+1)p(yn+1|Jn+1(k)=i,{V^n+jh(k)})p(Jn+1(k)=i)ϕyn+1|j=0nh(μV^n+jh(k)2)h+iμs,j=0nhV^n+jh(k)(1ρ2)h+iσs2λieλi!λϕyn+1|j=0nh(μV^n+jh(k)2)h+μs,j=0nhV^n+jh(k)(1ρ2)h+σs2,i=1(1λ)ϕyn+1|j=0nh(μV^n+jh(k)2)h,j=0nhV^n+jh(k)(1ρ2)h,i=0(21)

The last step is a Bernoulli approximation of Poisson distribution. For sufficiently small λ ≤ 0.1, which is usually the case in empirical study, these two do not distinguish themselves. With the approximation of jump times Jn+1(k) , we can then sample jump sizes for those particles with Jn+1(k) ≥1. Thanks to the normal assumption of jump size, this can be easily done via a well-known property that conditional normal distribution is again of a form of normal distribution. Given the jump times Jn+1(k) , we have Zn+1sN(Jn+1(k)μs,Jn+1(k)σs2), and yn+1N(j=0nh(μV^n+jh(k)2)h+Jn+1(k)μs,j=0nhV^n+jh(k)(1ρ2)h), and thus can represent the conditional distribution by another normal distribution:

p(Zn+1s|Jn+1(k),yn+1)=p(yn+1|Jn+1(k),Zn+1s)p(Zn+1s,Jn+1(k))p(yn+1,Jn+1(k))=ϕ(μz(k),(σz(k))2)(22)

where the mean and variance is given by

μz(k)=Jn+1(k)μs+Jn+1(k)σs2j=0nhV^n+jh(k)(1ρ2)hyn+1j=0nh(μV^n+jh(k)2)hJn+1(k)μs(σz(k))2=Jn+1(k)σs2(1Jn+1(k)σs2j=0nhV^n+jh(k)(1ρ2)h)

For the spot variance, we have a similar formula with stochastic volatility:

p(Vn+1|Ln,yn+1)p(Vn+1|Ln)p(yn+1|Vn+1)(23)

2.3.3 Modification of APF in SVCJ model

APF algorithm can overcome sampling impoverishment problem by first resampling. However, in the resampling step of spot variance in APF, the conditional expectation as the predictive sample, which may again suffers from such a problem. The problem arises in SVCJ model when the jumps in volatility occur. When there is a jump in volatility, the distribution of post-jump volatility changes dramatically comparing to the pre-jump volatility, and there is a probability that a finite-dimensional sample space does not contain the post-jump particles. We consider the following example.

Consider the case that at time n, we have a spot volatility Vn = 4, and a jump occurs with Zn+1v = 10, resulting in a post-jump volatility to be Vn+1 = 14 and observed return yn+1 = −15. A typical view of such a case would looks like the first panel in Figure 1.

Figure 1 Illustration of predictive particles calculated via conditional expectation in APF
Figure 1

Illustration of predictive particles calculated via conditional expectation in APF

In Figure 1, we have some initial particles {Vn(k)} as histogramed in red. The corresponding probability distribution of these particles is non-central χ2-distribution, which looks similar with normal distribution, as plotted in red dash-dot line. Now a jump occured at a size of Zn+1v = 10, leads to the updated true volatility value to be Vn+1 = 14, plotted in a blue line. The corresponding probability density function conditioned on the jump occured is plotted in blue dash-dot line. By Bayesian formula, we can update the initial particles incorporating the new information yn+1 = −15, using first the conditional expectation (19) to “esimate” the volatilities, then calculate the importance weights using (20), and resampling according to the weights. The posterior resampled particles {Vn+1i(k)}k=1m becomes then the reweighted version of initial particles.

However, none of the resampled particles {Vn+1i(k)}k=1m contains, or even be near to, the true post-jump value of volatility. Although we give a large weight for the maximum value of initial particle, and obtain some particles with a value around 8.25, we cannot capture any post-jump particle. The interpretation is quite straghtforward: the prediction step using conditional expectation (19) just shifts forward the particle a bit, and the resampling step is just to reweight the probability of the existed particles and thus does not change the sample state space of the particles. As a result, if a jump does occur, neither do the two steps would create reasonable particles for the post-jump volatility.

To overcome this problem, we can think of a scheme to diversify the particles by adding some particles conditioning on the case when we have jumps. Assume that we have a probability of jump λ, we can assign some of the particles to be having some jumps. Precisely, we can assign a number kλ with the form

kλ=max1,[λm](24)

where [x] stands for taking the floor of x to make it an integer, and compute the predictive particles by

V^n+1(k)=Vn(k)+κ(θVn(k))+Zn+1v,(k)(25)

for k = 1, ⋯, kλ randomly chosen, and the jumps Zn+1v,(k) ∼ exp(μv). The intuition behind (24) is quite straightforward: we add at least one particle with jump, and add more if we have enough total particles. With this, we can diversify the particles by manually assigning some particles with jumps. In our example here, the result can be shown in panel 2 of figure 1.

In the panel 2 of figure 1, we first sample V^n+1(k) from (25), and compute the importance weights as in (20) and resample. Not surprisingly, we add some diversification on particles, in the sense that they contains the region of “true post-jump volatility”. Notice that the resampled particles do not typically concentrate on some single point, even at the point where the true value stays. This is a well-known effect shown by many Bayesian statistical problems, that the historical data would tend to reject the posterior distribution and make a compromise in between. In the example here, since the probability of jumps is quite low, the model made a compromise in such a way that it increases almost all the numbers of with-jump particles (comparing to one particle in before), but with a highly non-normal posterior density.

This would introduce new challenges in the American option pricing problem, in which we have to summarize particles in each step.

2.3.4 Numerical experiment

We now show some numerical results on the stochastic volatility model with jumps. The parameters are as follows:

The parameters in Table 1 are based on [3], and a larger observation period T = 2000 can capture more jumps in the simulation. We show an comparison of performances for all models by RMSE and MAE. For each model, we implemented the SIR algorithm, the original APF algorithm (APFo) as proposed by [13] and [5], and the modification of APF algorithm (APFm). The main results are shown in Table 2.

Table 1

Parameters of SVCJ model in the numerical example

κθηρλμSσSμVT
0.020.90.1500.006−2.5422000

Table 2

Simulation results for SVCJ model

mSIRAPFoAPFm
R[1]MRMRM
Variances Vn
10012.458.1513.018.3911.527.41
100013.156.9310.906.859.776.26
1000011.126.7010.966.909.586.29
Jumps in price JnZns
1003.540.272.340.262.740.29
10003.400.282.160.252.120.23
100003.190.282.050.222.060.22
Jumps in volatility JnZnv
1002.440.232.290.252.000.21
10003.110.281.940.221.940.22
100001.820.201.910.211.880.21

In Table 2, in general, APFm outperforms the other two. Comparing the RMSE of filter variance, for example, we can observe that when a particle number of 10000 is used, which we think can eliminate the Monte Carlo approximation error, the RMSE is near to 1. However, we can find that the APF algorithm is not always performing better than SIR, especially when the jump intensity is large, say 0.2. This is because we are using an approximation of Bernoulli distribution rather than Binomial to compute the importance weights of jumps, and thus would fail when the jump occurs twice. But for daily return, the event is so rare that it is almost negligible.

In Figure 2, panel 1∼4 show the daily return, spot volatility, jumps in price and jumps in volatility respectively. Both SIR and the modified APF algorithm are implemented. The price process is simulated from SVCJ model, which makes it more difficult to “disentangle” the jumps from the volatility comparing to SVJ model.

Figure 2 A representative sample path of daily returns, volatility, jumps in prices and jumps in volatility with corresponding filtered estimators. Parameters are taken from Table 2 with m = 10000, nh = 100 and T = 5000.
Figure 2

A representative sample path of daily returns, volatility, jumps in prices and jumps in volatility with corresponding filtered estimators. Parameters are taken from Table 2 with m = 10000, nh = 100 and T = 5000.

Generally, both SIR and the APFm algorithm follow the true volatility trend. The APFm outperforms SIR in general. It would provide some possibly unreasonable jump particles and thus predict small jumps in volatility. Figure 3 shows the evolution of particles over time. The algorithm is run with APFm with m = 10000 particles. At time n = 325, a jump in both price and volatility occurs, and the posterior distribution shifts dramatically. The histogram provides the posterior density at this time. Initially, the particles are centered around 2.8, and the distribution looks like that from stochastic volatility model. When a jump occurred and is detected, the importance weights favors towards the new post-jump value, with a resistency from history. In such a scenario, none of any traditional statistical measure provides an accurate estimation.

Figure 3 Illustrative filtering distributions over time
Figure 3

Illustrative filtering distributions over time

3 Empirical results

We apply the particle filter based American option pricing algorithm to market data, including SV, SVJ and SVCJ models. We first apply particle filter method to estimate the volatility of S&P 500 return, and calibrate the risk premium by American style index future options, then compare the historical volatility with the future volatility introduced by VIX; then we compute the cross sectional option prices for different maturities and moneyness to find an inconsistency among options with different maturities.The calibration include two parts: first, we use particle filter to calibrate our model parameter under historical measure using observed underlying market data; second, we calibrate the risk premium associated with the latent factors through minimizing the MSE of model prices and market prices. We also examine the out-of-sample performance of our model.

3.1 Applications with S&P 500 returns

we utilize pure particle filter over SV, SVJ and SVCJ models under historical measure ℙ. The data set we consider are from 01/02/1986 to 01/02/2013. We use data from 01/02/1986 to 12/31/2004 of S&P 500 returns to calibrate the parameter, and implement particle filter with SV, SVJ and SVCJ models for the period during 01/02/1990 to 12/31/2012 since VIX index are available only from 01/02/1990. We calibrate the model using SA algorithm for SV, SVJ and SVCJ model, the estimated parameters are given as follows:

Table 3

Estimated parameters for SV, SVJ and SVCJ model

κθηρμ
SV0.06071.80820.3526−0.20380.0618
SVJ0.01700.91210.1675−0.28850.0861
SVCJ0.01801.23810.1216−0.40820.0299
λμSσSμV
SVJ0.0179−1.50504.4196
SVCJ0.0075−4.21164.39043.8402

Parameters are calibrated using S&P 500 daily returns during the period 01/02/1986 to 12/31/2004. Simulated annealing algorithm is applied to maximize the likelihood function.

Then we utilize particle filtering to the subsequent observed return, and the result is shown as in Figure 4.

Figure 4 Estimated latent factors for SV, SVJ and SVCJ model for S&P 500 return, a modified APF algorithm with m = 10000 particles is used.
Figure 4

Estimated latent factors for SV, SVJ and SVCJ model for S&P 500 return, a modified APF algorithm with m = 10000 particles is used.

Comparing the spot volatility, SV model provides a biggest filtered value, because the other two will “smooth” it by introducing jumps. For SVJ and SVCJ model, we observe that the volatility in SVCJ model would generally be larger than the SVJ model. This can be interpreted by the fact that the jumps in volatility would generally make the contribution of volatility to the price change larger. Numerically, since the jump of volatility can only be positive, the volatility in SVCJ should also be larger.

For the option pricing problem, we consider the stochastic volatility model for S&P 500 index future returns and index future options, because the algorithm is quite slow and is impractical to estimate any parameters from a large data set. The S&P 500 index future options are American style.

we take the most active S&P 500 future contract defined by Bloomberg with ticker being “SP1 Index”, the time period is from the first trading day of 2005 to the first trading day of 2013 in total 2,000 observations. The data are obtained from Bloomberg®. For the options data, we utilize a scheme to fetch the data. Precisely, we search for those options that are nearest to be at-the-money, and with the nearest time-to-maturity being 30 days. These options are typically most actively traded. For the rates, we use one-month USD Libor rate as the risk-free rate to match the maturities, and Bloomberg best expectation of dividends to approximate the dividend yields.

We calibrate the constant volatility risk premium introduced by option markets. we fix all the parameters for the stochastic volatility model, and calibrate the volatility risk-premium through a constant λ, by minimizing the normalized Mean Squared Error (MSE) of the model price and market observed price:

MSE:1NtT(PtModPtMkt)2(26)

This method takes a long time to be done, as we have 2000 observations, and to price a single American option using limited samples and particles, e.g. M = 100, N = 100, m = 100, takes already 10 seconds in Matlab. After calibration, we obtain a volatility risk premium being λ = −4.2496%. The result is shown in Figure 5.

Figure 5 Calibrated risk-neutral filtered volatility v.s. VIX index
Figure 5

Calibrated risk-neutral filtered volatility v.s. VIX index

In panel 1 of Figure 5, we plotted: 1. the calibrated filtered volatility with volatility premium of λ = −4.2496%, denoted by SVQ; 2. the pure particle filtered volatility, denoted by SV; 3. the VIX index. After calibration, SVQ is generally closer to VIX index, especially during the financial crisis, though bias still exists especially because we have only one parameter changed. The RMSE of SVQ is 20.7853 compared to 21.6994 of SV.

In panel 2 of Figure 5, we plotted: 1. the Black-Scholes implied volatility of predicted price, computed via calibrated volatility using our algorithm; 2. the Black-Scholes implied volatility of the market prices, which is different from deriving directly from an European option; 3. the VIX index. We also plot the VIX index. To the S&P 500 index future options, it seems that the volatility risk premium has changed over period, because we observe an inconsistency through the time, especially before and after the global financial crisis at 2008, of which the sign being Lehman’s bankruptcy on September 15, 2008. In order to study further the volatility risk premium, we adopt another set of most liquidly traded American options written on Apple Inc.

3.2 Application to American options written on equities

In this section, we apply the particle filter to some other more liquidly traded options. We use daily closing price of Apple Inc. that we obtain also from Bloomberg®. Apple Inc. is one of the largest companies in the world and its options are among in the most liquid. The data we used for estimating the stochastic volatility under historical measure is from 01/03/2012 to 10/30/2012. We choose this period because it goes through a relatively complete cycle.

We also obtain the American put option prices from Bloomberg®. During that period, the most actively traded options are 𝓚 = {550, 555, 560, 565, 570} with maturities 𝓣 = {12/22/2012, 01/19/2013, 02/16/2013}, so we have 15 options at each day. The filtered volatility of Apple Inc. is given in Figure 6.

Figure 6 Apple daily closing prices and filtered volatility under stochastic volatility model
Figure 6

Apple daily closing prices and filtered volatility under stochastic volatility model

Once the volatility is estimated from the underlying prices, we may start to calibrate the volatility premium from market option prices. We also implemented a gradient-based approach to minimize the normalized Mean Squared Error (MSE) of the model price and market observed price. Since the pricing algorithm is quite time-consuming. In our empirical study, we fit only one day option prices, namely 15 options from 5 different strikes and 3 time to maturities.

Figure 7 shows the calibrated result. We observe that the volatility premium λ is −5.882%, which we think is reasonable because the more negative λ is, the bigger the price would be since Vega is usually positive, which incorporate our assumptions that traders requires additional premium from the uncertainty from volatility.

Figure 7 Model calibrated option prices and observed prices
Figure 7

Model calibrated option prices and observed prices

4 Conclusion

we employ particle filter method in American option pricing, with applications to real market data. SIR and APF algorithm and APFm are deeply explored. Numerical result shows that particle filter provides a good approximation to latent volatility and jumps for the SV, SVJ and SVCJ model. Empirical results suggest that the out of sample performance of particle filter based algorithm is stable consistency with observations. We also observe that a non-constant volatility risk premium is highly probable in the market as is introduced by the inconsistency between options on different maturities.


Supported by Natural Science Foundation of China (Grant No. 11301560; 71301173); Philosophy and Social Science Planning of Beijing (Grant No. 13JGB018); the MOE Layout Foundation of Humanities and Social Sciences (14YJA790048)


References

[1] Cheang G H, Chiarella C, Ziogas A. The representation of American options prices under stochastic volatility and jump-diffusion dynamics. Quantitative Finance, 2013, 13(2): 241–253.10.1080/14697688.2011.587828Search in Google Scholar

[2] Chernov M, Ghysels E, Gallant A, et al. Alternative models for stock price dynamics. Journal of Econometrics, 2003, 116: 225–257.10.1016/S0304-4076(03)00108-8Search in Google Scholar

[3] Eraker B, Johannes M, Polson N. The impact of jumps in volatility and returns. Journal of Finance, 2003, 59: 227–260.10.1111/1540-6261.00566Search in Google Scholar

[4] Harrison J M, Pliska S R. Martingales and stochastic integrals in the theory of continuous trading. Stochastic Processes and their Applications, 1981, 11: 215–260.10.1016/0304-4149(81)90026-0Search in Google Scholar

[5] Johannes M, Polson N, Stroud J. Optimal filtering of jump-diffusions: Extracting latent states from asset prices. Review of Financial Studies, 2007, 22(7): 2759–2799.10.1093/rfs/hhn110Search in Google Scholar

[6] Le A, Cen Z, Xu A. A robust upwind difference scheme for pricing perpetual American put options under stochastic volatility. International Journal of Computer Mathematics, 2012, 89(9): 1135–1144.10.1080/00207160.2012.658379Search in Google Scholar

[7] Merton R C. Option pricing when the underlying stocks are discontinuous. Journal of Financial Economics, 1976, 5: 125–144.10.1016/0304-405X(76)90022-2Search in Google Scholar

[8] Pitt M K, Shephard N. Filtering via simulation: Auxiliary particle filters. Journal of the American Statistical Association, 1999, 94(446): 590–599.10.1080/01621459.1999.10474153Search in Google Scholar

[9] Rambharat B R, Brockwell A E. Sequential Monte Carlo pricing of American-style options under stochastic volatility models. The Annals of Applied Statistics, 2005, 4(1): 222–265.10.1214/09-AOAS286Search in Google Scholar

[10] Saib A A E F, Tangman D Y, Bhuruth M. A new radial basis functions method for pricing American options under Merton’s jump-diffusion model. International Journal of Computer Mathematics, 2012, 89(9): 1164–1185.10.1080/00207160.2012.690034Search in Google Scholar

[11] Salmi S, Toivanen J. Comparison and survey of finite difference methods for pricing American options under finite activity jump-diffusion models. International Journal of Computer Mathematics, 2012, 89(9): 1112–1134.10.1080/00207160.2012.669475Search in Google Scholar

[12] Ye F, Zhou E. Pricing American options under partial observation of stochastic volatility. 2011 Winter Simulation Conference, 2011.10.1109/WSC.2011.6148068Search in Google Scholar

[13] Yun J. Density forecasting performances of the affine jump diffusion models using option-implied volatilities. Working Paper, 2012.Search in Google Scholar

Received: 2014-1-22
Accepted: 2014-4-29
Published Online: 2014-12-25

© 2014 Walter de Gruyter GmbH, Berlin/Boston

Downloaded on 11.9.2025 from https://www.degruyterbrill.com/document/doi/10.1515/JSSI-2014-0505/html
Scroll to top button