Learn R Programming

highfrequency (version 0.7.0.1)

JOjumpTest: Jiang and Oomen (2008) tests for the presence of jumps in the price series.

Description

This test examines the jump in highfrequency data. It is based on theory of Jiang and Oomen (JO). They found that the difference of simple return and logarithmic return can capture one half of integrated variance if there is no jump in the underlying sample path. 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 logarithmic return (with \(i=1, \ldots,N\)) in period \(t\).

Let \(R_{t,i}\) be a simple return (with \(i=1, \ldots,N\)) in period \(t\).

Then the JOjumpTest is given by: $$ \mbox{JOjumpTest}_{t,N}= \frac{N BV_{t}}{\sqrt{\Omega_{SwV}} \left(1-\frac{RV_{t}}{SwV_{t}} \right)} $$ in which, \(BV\): bipower variance; \(RV\): realized variance (defined by Andersen et al. (2012)); $$ \mbox{SwV}_{t}=2 \sum_{i=1}^{N}(R_{t,i}-r_{t,i}) $$ $$ \Omega_{SwV}= \frac{\mu_6}{9} \frac{{N^3}{\mu_{6/p}^{-p}}}{N-p-1} \sum_{i=0}^{N-p}\prod_{k=1}^{p}|r_{t,i+k}|^{6/p} $$ $$ \mu_{p}= \mbox{E}[|\mbox{U}|^{p}] = 2^{p/2} \frac{\Gamma(1/2(p+1))}{\Gamma(1/2)} % \mbox{E}[|\mbox{U}|^p]= $$ \(U\): independent standard normal random variables

p: parameter (power).

Usage

JOjumpTest(
  pData,
  power = 4,
  alignBy = NULL,
  alignPeriod = NULL,
  alpha = 0.975,
  ...
)

Arguments

pData

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

power

can be chosen among 4 or 6. 4 by default.

alignBy

a string, align the tick data to "seconds"|"minutes"|"hours". Defaults to NULL, denoting testing by using tick by tick returns

alignPeriod

an integer, align the tick data to this many [seconds|minutes|hours]. Defaults to NULL, denoting testing by using tick by tick returns or if the returns are already aligned as

alpha

numeric of length one with the significance level to use for the jump test(s). Defaults to 0.975.

...

additional arguments. (Currently unused)

Value

list

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}\sigma_{u}dW_{u} + Z_t $$ where \(a\) is the drift term, \(\sigma\) denotes the spot volatility process, \(W\) is a standard Brownian motion and \(Z\) is a jump process defined by: $$ \mbox{Z}_{t}= \sum_{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 Jiang and Oomen test is that: in the absence of jumps, the accumulated difference between the simple return and the log return captures one half of the integrated variance. (Theodosiou& Zikes(2009))

References

Andersen, T. G., D. Dobrev, and E. Schaumburg (2012). Jump-robust volatility estimation using nearest neighbor truncation. Journal of Econometrics, 169(1), 75- 93.

Jiang, J.G. and Oomen R.C.A (2008). Testing for jumps when asset prices are observed with noise- a "swap variance" approach. Journal of Econometrics,144(2), 352-370.

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

Run this code
# NOT RUN {
JOjumpTest(sample5MinPricesJumps$stock1, power = 6)

# }

Run the code above in your browser using DataLab