AJjumptest: Ait- Sahalia and Jacod (2009) tests for the presence of jumps...

Description Usage Arguments Details Value Author(s) References Examples

View source: R/highfrequencyGSOC.R

Description

This test examines the presence of jumps in highfrequency price series. It is based on the theory of Ait-Sahalia and Jacod (2009) (AJ). It consists in comparing the multipower variation of equispaced returns computed at a fast time scale (h), r_{t,i} (i=1, …,N) and those computed at the slower time scale (kh), y_{t,i}(i=1, … ,\mbox{N/k}).

They found that the limit (for N \to ) of the realized power variation is invariant for different sampling scales and that their ratio is 1 in case of jumps and \mbox{k}^{p/2}-1 if no jumps. Therefore the AJ test detects the presence of jump using the ratio of realized power variation sampled from two scales. The null hypothesis is no jumps.

Function returns three outcomes: 1.z-test value 2.critical value under confidence level of 95\% and 3.p-value.

Assume there is N equispaced returns in period t. Let r_{t,i} be a return (with i=1, …,N) in period t.

And there is N/k equispaced returns in period t. Let y_{t,i} be a return (with i=1, … ,\mbox{N/k}) in period t.

Then the AJjumptest is given by:

\mbox{AJjumptest}_{t,N}= \frac{S_t(p,k,h)-k^{p/2-1}}{√{V_{t,N}}}

in which,

\mbox{S}_t(p,k,h)= \frac{PV_{t,M}(p,kh)}{PV_{t,M}(p,h)}

\mbox{PV}_{t,N}(p,kh)= ∑_{i=1}^{N/k}{|y_{t,i}|^p}

\mbox{PV}_{t,N}(p,h)= ∑_{i=1}^{N}{|r_{t,i}|^p}

\mbox{V}_{t,N}= \frac{N(p,k) A_{t,N(2p)}}{N A_{t,N(p)}}

\mbox{N}(p,k)= ≤ft(\frac{1}{μ_p^2}\right)(k^{p-2}(1+k))μ_{2p} + k^{p-2}(k-1) μ_p^2 - 2k^{p/2-1}μ_{k,p}

\mbox{A}_{t,n(2p)}= \frac{(1/N)^{(1-p/2)}}{μ_p} ∑_{i=1}^{N}{|r_{t,i}|^p} \ \ \mbox{for} \ \ |r_j|< α(1/N)^w

μ_{k,p}= E(|U|^p |U+√{k-1}V|^p)

U, V: independent standard normal random variables; h=1/N; p, k, α, w: parameters.

Usage

1
AJjumptest(pdata, p=4 , k=2, align.by= NULL, align.period = NULL, makeReturns= FALSE, ...)

Arguments

pdata

a zoo/xts object containing all prices in period t for one asset.

p

can be chosen among 2 or 3 or 4. The author suggests 4. 4 by default.

k

can be chosen among 2 or 3 or 4. The author suggests 2. 2 by default.

align.by

a string, align the tick data to "seconds"|"minutes"|"hours"

align.period

an integer, align the tick data to this many [seconds|minutes|hours].

makeReturns

boolean, should be TRUE when rdata contains prices instead of returns. FALSE by default.

...

additional arguments.

Details

The theoretical framework underlying jump test is that the logarithmic price process X_t belongs to the class of Brownian semimartingales, which can be written as:

\mbox{X}_{t}= \int_{0}^{t} a_udu + \int_{0}^{t}σ_{u}dW_{u} + Z_t

where a is the drift term, σ denotes the spot volatility process, W is a standard Brownian motion and Z is a jump process defined by:

\mbox{Z}_{t}= ∑_{j=1}^{N_t}k_j

where k_j are nonzero random variables. The counting process can be either finite or infinite for finite or infinite activity jumps.

The Ait-Sahalia and Jacod test is that: Using the convergence properties of power variation and its dependence on the time scale on which it is measured, Ait-Sahalia and Jacod (2009) define a new variable which converges to 1 in the presence of jumps in the underlying return series, or to another deterministic and known number in the absence of jumps. (Theodosiou& Zikes(2009))

Value

list

Author(s)

Giang Nguyen, Jonathan Cornelissen and Kris Boudt

References

Ait-Sahalia, Y. and Jacod, J. (2009). Testing for jumps in a discretely observed process. The Annals of Statistics, 37(1), 184- 222.

Theodosiou, M., & Zikes, F. (2009). A comprehensive comparison of alternative tests for jumps in asset prices. Unpublished manuscript, Graduate School of Business, Imperial College London.

Examples

1
2
data(sample_tdata)
AJjumptest(sample_tdata$PRICE, p= 2, k= 3, align.by= "seconds", align.period= 5, makeReturns= TRUE)

Example output

Loading required package: xts
Loading required package: zoo

Attaching package: 'zoo'

The following objects are masked from 'package:base':

    as.Date, as.Date.numeric

$ztest
[1] 3.392276

$critical.value
[1] -1.959964  1.959964

$pvalue
[1] 0.0006931461

highfrequency documentation built on May 2, 2019, 6:09 p.m.