Simulation of jump times of Cox process with CIR intensity
Clash Royale CLAN TAG#URR8PPP
up vote
0
down vote
favorite
I want to sample the jump times of a Cox process where the intensity $lambda(t)$ is given by a CIR process, i.e.
$$
mathrmdlambda(t)=kappa(theta-lambda(t))mathrmdt+sigmasqrtlambda (t)mathrmdW(t), quad lambda(0)=lambda_0.
$$
The distribution of the time of the first jump $tau_1:=inflefttBigvert Nleft(int_0^tlambda(s)mathrmdsright)=1right$ can be computed as follows:
$$
mathbbPleft(tau_1geq tright) = mathbbPleft(Nleft(int_0^tlambda(s)mathrmdsright)=0right) \
=mathbbEleft(mathbbEleft(mathbf1_Nleft(int_0^tlambda(s)mathrmdsright)=0Biggvertlambda(s), 0leq sleq tright)right)\
=mathbbEleft(expleft(-int_0^tlambda(s)mathrmdsright)right)\
=mathcalL(1)$$
with the Laplace-transform $mathcalL(mu)$ of $int_0^tlambda(s)mathrmds$ evaluated at 1. This function is known from the bond pricing literature and is given by
$$
mathcalL(mu)= expleft(phi_mu(t)-lambda(0)psi_mu(t)right)
$$
where
$$
phi_mu(t) = frac2kappathetasigma^2logleft(frac2gammamathrme^fract(gamma+kappa)2gamma-kappa+mathrme^gamma t(gamma+kappa)right)
$$
and $$
psi_mu(T)=frac2muleft(mathrme^gamma t-1right)gamma-kappa+mathrme^gamma t(gamma+kappa)
$$
with $gamma=sqrtkappa^2+2sigma^2mu$.
Hence, I can easily derive the density of $tau_1$ and may sample from it by some acceptance-rejection or inversion method. The problem is now the following: The density clearly involves $lambda(0)$ and hence for the simulation of $tau_2$ I would need to know $lambda_tau_1$ to proceed. I haven't found anything about how to sample $lambda_tau_1$ conditional on $tau_1$ on the internet. Is there an algorithm to exactly sample the jump times of the Cox process with CIR intensity?
probability statistics stochastic-processes stochastic-analysis simulation
add a comment |Â
up vote
0
down vote
favorite
I want to sample the jump times of a Cox process where the intensity $lambda(t)$ is given by a CIR process, i.e.
$$
mathrmdlambda(t)=kappa(theta-lambda(t))mathrmdt+sigmasqrtlambda (t)mathrmdW(t), quad lambda(0)=lambda_0.
$$
The distribution of the time of the first jump $tau_1:=inflefttBigvert Nleft(int_0^tlambda(s)mathrmdsright)=1right$ can be computed as follows:
$$
mathbbPleft(tau_1geq tright) = mathbbPleft(Nleft(int_0^tlambda(s)mathrmdsright)=0right) \
=mathbbEleft(mathbbEleft(mathbf1_Nleft(int_0^tlambda(s)mathrmdsright)=0Biggvertlambda(s), 0leq sleq tright)right)\
=mathbbEleft(expleft(-int_0^tlambda(s)mathrmdsright)right)\
=mathcalL(1)$$
with the Laplace-transform $mathcalL(mu)$ of $int_0^tlambda(s)mathrmds$ evaluated at 1. This function is known from the bond pricing literature and is given by
$$
mathcalL(mu)= expleft(phi_mu(t)-lambda(0)psi_mu(t)right)
$$
where
$$
phi_mu(t) = frac2kappathetasigma^2logleft(frac2gammamathrme^fract(gamma+kappa)2gamma-kappa+mathrme^gamma t(gamma+kappa)right)
$$
and $$
psi_mu(T)=frac2muleft(mathrme^gamma t-1right)gamma-kappa+mathrme^gamma t(gamma+kappa)
$$
with $gamma=sqrtkappa^2+2sigma^2mu$.
Hence, I can easily derive the density of $tau_1$ and may sample from it by some acceptance-rejection or inversion method. The problem is now the following: The density clearly involves $lambda(0)$ and hence for the simulation of $tau_2$ I would need to know $lambda_tau_1$ to proceed. I haven't found anything about how to sample $lambda_tau_1$ conditional on $tau_1$ on the internet. Is there an algorithm to exactly sample the jump times of the Cox process with CIR intensity?
probability statistics stochastic-processes stochastic-analysis simulation
add a comment |Â
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I want to sample the jump times of a Cox process where the intensity $lambda(t)$ is given by a CIR process, i.e.
$$
mathrmdlambda(t)=kappa(theta-lambda(t))mathrmdt+sigmasqrtlambda (t)mathrmdW(t), quad lambda(0)=lambda_0.
$$
The distribution of the time of the first jump $tau_1:=inflefttBigvert Nleft(int_0^tlambda(s)mathrmdsright)=1right$ can be computed as follows:
$$
mathbbPleft(tau_1geq tright) = mathbbPleft(Nleft(int_0^tlambda(s)mathrmdsright)=0right) \
=mathbbEleft(mathbbEleft(mathbf1_Nleft(int_0^tlambda(s)mathrmdsright)=0Biggvertlambda(s), 0leq sleq tright)right)\
=mathbbEleft(expleft(-int_0^tlambda(s)mathrmdsright)right)\
=mathcalL(1)$$
with the Laplace-transform $mathcalL(mu)$ of $int_0^tlambda(s)mathrmds$ evaluated at 1. This function is known from the bond pricing literature and is given by
$$
mathcalL(mu)= expleft(phi_mu(t)-lambda(0)psi_mu(t)right)
$$
where
$$
phi_mu(t) = frac2kappathetasigma^2logleft(frac2gammamathrme^fract(gamma+kappa)2gamma-kappa+mathrme^gamma t(gamma+kappa)right)
$$
and $$
psi_mu(T)=frac2muleft(mathrme^gamma t-1right)gamma-kappa+mathrme^gamma t(gamma+kappa)
$$
with $gamma=sqrtkappa^2+2sigma^2mu$.
Hence, I can easily derive the density of $tau_1$ and may sample from it by some acceptance-rejection or inversion method. The problem is now the following: The density clearly involves $lambda(0)$ and hence for the simulation of $tau_2$ I would need to know $lambda_tau_1$ to proceed. I haven't found anything about how to sample $lambda_tau_1$ conditional on $tau_1$ on the internet. Is there an algorithm to exactly sample the jump times of the Cox process with CIR intensity?
probability statistics stochastic-processes stochastic-analysis simulation
I want to sample the jump times of a Cox process where the intensity $lambda(t)$ is given by a CIR process, i.e.
$$
mathrmdlambda(t)=kappa(theta-lambda(t))mathrmdt+sigmasqrtlambda (t)mathrmdW(t), quad lambda(0)=lambda_0.
$$
The distribution of the time of the first jump $tau_1:=inflefttBigvert Nleft(int_0^tlambda(s)mathrmdsright)=1right$ can be computed as follows:
$$
mathbbPleft(tau_1geq tright) = mathbbPleft(Nleft(int_0^tlambda(s)mathrmdsright)=0right) \
=mathbbEleft(mathbbEleft(mathbf1_Nleft(int_0^tlambda(s)mathrmdsright)=0Biggvertlambda(s), 0leq sleq tright)right)\
=mathbbEleft(expleft(-int_0^tlambda(s)mathrmdsright)right)\
=mathcalL(1)$$
with the Laplace-transform $mathcalL(mu)$ of $int_0^tlambda(s)mathrmds$ evaluated at 1. This function is known from the bond pricing literature and is given by
$$
mathcalL(mu)= expleft(phi_mu(t)-lambda(0)psi_mu(t)right)
$$
where
$$
phi_mu(t) = frac2kappathetasigma^2logleft(frac2gammamathrme^fract(gamma+kappa)2gamma-kappa+mathrme^gamma t(gamma+kappa)right)
$$
and $$
psi_mu(T)=frac2muleft(mathrme^gamma t-1right)gamma-kappa+mathrme^gamma t(gamma+kappa)
$$
with $gamma=sqrtkappa^2+2sigma^2mu$.
Hence, I can easily derive the density of $tau_1$ and may sample from it by some acceptance-rejection or inversion method. The problem is now the following: The density clearly involves $lambda(0)$ and hence for the simulation of $tau_2$ I would need to know $lambda_tau_1$ to proceed. I haven't found anything about how to sample $lambda_tau_1$ conditional on $tau_1$ on the internet. Is there an algorithm to exactly sample the jump times of the Cox process with CIR intensity?
probability statistics stochastic-processes stochastic-analysis simulation
asked Aug 3 at 15:21
lbf_1994
1699
1699
add a comment |Â
add a comment |Â
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2871195%2fsimulation-of-jump-times-of-cox-process-with-cir-intensity%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password