INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
Calibration of Stochastic Volatility Modelsusing Particle Markov Chain Monte Carlo
Methods
Jonas Hallgren1
1Department of MathematicsKTH Royal Institute of Technology
Stockholm, Sweden
BFS 2012June 21, 2012
Sydney, Australia
1 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
TABLE OF CONTENTSINTRODUCTION
Financial Times SeriesModel Proposal
PARAMETER ESTIMATION
Bayesian InferenceParameter Simulation
Sequential Monte Carlo MethodsFilters and SmoothersMonte Carlo IntegrationSequential Importance Sampling
Particle MCMCParticle Marginal Metropolis HastingsUnbiased Parallel Metropolis Hastings
Simulations and ResultsEstimationsPrediction
2 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
LOGRETURNS
−4 −2 0 2 40
50
100
150
200
250Histogram of 40 years S&P 500 logreturn
1980 2000−4
−2
0
2
4logreturns
year
−3 −2 −1 0 1 2 3
0.0010.003
0.010.020.050.100.25
0.50
0.750.900.950.980.99
0.9970.999
Data
Pro
babili
ty
Normal Probability Plot
Yk = log(
Sk
Sk−1
)3 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
MODEL PROPOSAL
Yk = βe12 Xkuk, (1)
Xk = αXk−1 + σwk, (2)(uk,wk) ∼ N (0,Σ), (3)
Σ =[
1 ρρ 1
](4)
4 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
BAYESIAN INFERENCE
Bayesian inference, view the parameter as a random variableObservation:
Y | θ∗ = θ ∼ p(y | θ∗ = θ), θ∗ ∼ p(θ) (5)
Parameter posterior distribution:
p(θ | y) =p(y | θ)p(θ)∫
Θ p(y | θ′)p(dθ′)∝ p(y | θ)p(θ) (6)
Example:
p(β | α, σ, ρ, x0:n, y0:n) ∝ p(β, α, σ, ρ, x0:n, y0:n) (7)
5 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
POSTERIOR FOR β
p(β|α, σ, ρ, x0:n, y0:n) ∝ p(β, α, σ, ρ, x0:n, y0:n) (8)= p(x0:n, y0:n|β, α, ρ, σ)p(β)p(α, ρ, σ) (9)∝ p(x0:n, y0:n|β, α, ρ, σ)p(β) (10)= p(xn, yn|β, α, ρ, σ, x0:n−1, y0:n−1) (11)× p(x0:n−1, y0:n−1|β, α, ρ, σ)p(β)
= p(β)p(y0, x0|β, α, ρ, σ) (12)
×n∏
k=1
p(xk, yk|β, α, ρ, σ, xk−1)
6 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
POSTERIOR FOR β
p(x, y) =1
|β|σ2π√
1− ρ2(13)
× exp(−
[( y
βe12 x
)2+(x−αxk−1
σ
)2 − 2ρ y(x−αxk−1)
σβe12 x
]2(1− ρ2)
− 12
x)
7 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
PRIOR SELECTION
p(β) =1β2 (14)
p(α) = (α+ 1)δ−1(1− α)γ−1 (15)
p(ρ) =12
(16)
p(σ) =1
σ2σ2(t/2−1)e−
12σ2 S̃0 (17)
Example:
p(β | α, σ, ρ, x0:n, y0:n) ∝ p(x0:n, y0:n | α, β, ρ, σ)p(β) (18)
8 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
IDEA
I Simulate the parameters from the posterior distributions!
9 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
THE GIBBS SAMPLER 1
1. For the first iteration choose ξ(0) = {x(0)0:n, θ
(0)} arbitrarily2. For k = 1, 2, . . . ,N, draw random samples
2.1 x(k)0:n ∼ pX(· | θ(k−1), y0:n)
2.2 θ(k)1 ∼ pX(· | x(k)
0:n, θ(k−1), y0:n)
...θ(k)D ∼ pX(· | x(k)
0:n, θ(k)1 , θ
(k)2 , . . . , θ
(k−1)D , y0:n)
Now as N tend to infinity, the sequence {ξ(k)}Nk=0 will have pX
as its stationary distribution.New problem: How do we sample θ and x?
1Geman (1984)10 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
METROPOLIS-HASTINGS SAMPLER 2
Choose θ0 arbitrarily, then for k = 1, . . . ,N1. Sample θ∗ ∼ q(· | θ(k))
2. With probability
1 ∧ p(θ∗)q(θ(k) | θ∗)p(θ(k))q(θ∗ | θ(k))
(19)
set θ(k+1) = θ∗, otherwise set θ(k+1) = θ(k)
2Metropolis et. al. (1953), Hastings (1970)11 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
SEQUENTIAL MONTE CARLO (PARTICLE FILTER)
φk , p(xk | y0:k) (20)
Propose
φk+1(ξ̃) =
∫lk(ξ, ξ̃)φk(ξ) dξ∫
φk(ξ)∫
lk(ξ, ξ̃) dξ̃ dξ(21)
12 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
OUR MODEL
In our setting:
φk+1 = p(xk+1, y0:k+1)/p(y0:k+1) (22)
∝∫
p(yk+1 | xk+1, xk, y0:k) (23)
× p(xk+1 | xk, y0:k)p(xk, y0:k) dxk
=
∫p(yk+1 | xk:k+1)p(xk+1 | xk)p(xk | y0:k)p(y0:k) dxk (24)
=
∫p(yk+1 | xk:k+1)p(xk+1 | xk)φkp(y0:k) dxk (25)
=
∫G(yk+1 | xk:k+1)Q(xk+1 | xk)φkp(y0:k) dxk (26)
13 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
SUMMARIZED
Filter:
φk+1 =
∫G(yk+1 | xk:k+1)Q(xk+1 | xk)φk dxk∫ ∫
G(yk+1 | xk:k+1)Q(xk+1 | xk)φk dxk dxk+1(27)
Smoother:
φ0:k+1|k+1 = p(x0:k+1 | y0:k+1) (28)
=
∫G(yk+1 | xk:k+1)Q(xk+1 | xk)φ0:k|k dx0:k∫ ∫
G(yk+1 | xk:k+1)Q(xk+1 | xk)φ0:k|k dx0:k dx0:k+1
14 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
MONTE CARLO INTEGRATION
We want to evaluate:
µ(f ) =
∫f (x)
dµdν
(x) ν(dx) (29)
We use the estimate:
N−1N∑
j=1
f (ξj)dµdν
(ξj)a.s.−−−−→
N→∞µ(f ) (30)
15 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
SEQUENTIAL IMPORTANCE SAMPLING
1. Sampling: for k = 0, 1, . . .Draw ξ̃1
k+1, . . . , ξ̃Nk+1 | ξ̃
10:k, . . . , ξ̃
N0:k
1.1 Compute the importance weights
ωjk+1 = ω
jkgk+1(ξ̃
jk+1) (31)
2. Resampling: Draw N particles from the N-sizedpopulation where the probability of selecting particle j is
ωjk+1∑N
s ωsk+1
(32)
3. Update the trajectory: Copy the resampled particlestrajectories and replace the ones we discarded.
16 / 29
EXAMPLE
0 50 100 150 200−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
k
Xk
True X
Particle trajectories
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
RECAP
I Object: Model the priceI Need parameters
I Need X trajectories
Which we now have!
Yk = βe12 Xkuk, (33)
Xk = αXk−1 + σwk, (34)(uk,wk) ∼ N (0,Σ), (35)
Σ =[
1 ρρ 1
](36)
18 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
THE GIBBS SAMPLER
1. For the first iteration choose ξ(0) = {x(0)0:n, θ
(0)} arbitrarily2. For k = 1, 2, . . . ,N, draw random samples
2.1 x(k)0:n ∼ pX(· | θ(k−1), y0:n)
2.2 θ(k)1 ∼ pX(· | x(k)
0:n, θ(k−1), y0:n)
...θ(k)D ∼ pX(· | x(k)
0:n, θ(k)1 , θ
(k)2 , . . . , θ
(k−1)D , y0:n)
Now as N tend to infinity, the sequence {ξ(k)}Nk=0 will have pX
as its stationary distribution
19 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
INTRODUCTION
Financial Times SeriesModel Proposal
PARAMETER ESTIMATION
Bayesian InferenceParameter Simulation
Sequential Monte Carlo MethodsFilters and SmoothersMonte Carlo IntegrationSequential Importance Sampling
Particle MCMCParticle Marginal Metropolis HastingsUnbiased Parallel Metropolis Hastings
Simulations and ResultsEstimationsPrediction
20 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
METROPOLIS-HASTINGS SAMPLER 2
Choose θ0 arbitrarily, then for k = 1, . . . ,N1. Sample θ∗ ∼ q(· | θ(k))
2. With probability
1 ∧ p(θ∗)q(θ(k) | θ∗)p(θ(k))q(θ∗ | θ(k))
(19)
set θ(k+1) = θ∗, otherwise set θ(k+1) = θ(k)
2Metropolis et. al. (1953), Hastings (1970)21 / 29
PARTICLE MARGINAL METROPOLIS HASTINGS 3
1. Initialization, k = 0
1.1 Set θ0 arbitrarily1.2 Run an SMC algorithm targeting pθ(0)(x1:T|y1:T), sample our
first trajectory of particles ξ̃(0)1:T ∼ p̂θ(0)(·|y1:T) and denote the
marginal likelihood by p̂θ0
2. For iteration k ≥ 12.1 Sample θ∗ ∼ q(· | θk−1)2.2 Run an SMC algorithm targeting pθ∗(x1:T | y1:T), sample the
trajectory of particles as in 1.22.3 With probability
1 ∧ p̂θ∗(y1:T)p(θ∗)q(θk−1 | θ∗)
p̂θk−1(y1:T)p(θk−1)q(θ∗ | θk−1)(37)
put θk = θ∗, ξ(k)1:T = ξ∗1:T, and pθk (y1:T) = pθ∗
3Andrieu et. al. (2010)
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
UNBIASED PARALLEL METROPOLIS HASTINGS
Choose θm0 arbitrarily, then for k = 1, . . . ,N
1. For each of the C cores (where θ(k) = θmk ):
1.1 Sample θ∗ ∼ q(· | θ(k))1.2 With probability
1 ∧ p(θ∗)q(θ(k) | θ∗)
p(θ(k))q(θ∗ | θ(k))(38)
set θ(k+1) = θ∗, otherwise set θ(k+1) = θ(k)
2. Iterate through the C cores, take the first accepted sampleand put θm
k+γ equal to it. Put θmk:k+γ−1 = θm
k . Throw away allsamples after that. If no sample is accepted, θm
k:C = θmk
23 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
UNBIASED PARALLEL METROPOLIS HASTINGS
I Roughly (Acceptance rate)−1 times faster as numbers ofcores grow large
I Easy to implement
24 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
MODEL PROPOSAL
Yk = βe12 Xkuk, (1)
Xk = αXk−1 + σwk, (2)(uk,wk) ∼ N (0,Σ), (3)
Σ =[
1 ρρ 1
](4)
25 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
ESTIMATES FOR GBP/USD DATA
0.8 0.85 0.9 0.95 10
20
40
60
α0.005 0.01 0.0150
20
40
60
80
β
−0.5 0 0.5 10
20
40
60
80
ρ0.1 0.2 0.3 0.4 0.50
20
40
60
σ
26 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
SIMULATION OF S&P500
0 10 20 30 40 50 60 70 80 90 100−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
Simulated
Real
27 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
PREDICTION
Dataset Model RMSE (10−3)
GBP/USD SVOL 11.706GBP/USD SVOLρ=0 11.714BIDU SVOL 20.188BIDU SVOLρ=0 20.232S&P500 SVOL 252.94S&P500 SVOLρ=0 252.93XBC/USD SVOL 5.5762XBC/USD SVOLρ=0 5.5920
28 / 29
INTRODUCTION PARAMETER ESTIMATION Sequential Monte Carlo Methods Particle MCMC Simulations and Results
Any remark, question or suggestion is welcomed!
[email protected]://www.math.kth.se/∼jhallg/
29 / 29