BDS Test

Computes and prints the BDS test statistic for the null that x is a series of i.i.d. random variables.

bds.test(x, m = 2, eps = seq(0.5 * sd(x), 2 * sd(x), length = 4),
         trace = FALSE)
a numeric vector or time series.
an integer indicating that the BDS test statistic is computed for embedding dimensions 2, ..., m.
a numeric vector of epsilon values for close points. The BDS test is computed for each element of eps. It should be set in terms of the standard deviation of x.
a logical indicating whether some informational output is traced.

This test examines the ``spatial dependence'' of the observed series. To do this, the series is embedded in m-space and the dependence of x is examined by counting ``near'' points. Points for which the distance is less than eps are called ``near''. The BDS test statistic is asymptotically standard Normal. Missing values are not allowed.

There is a special print method for objects of class "bdstest" which by default uses 4 digits to format real numbers.


  • A list with class "bdstest" containing the following components:
  • statisticthe values of the test statistic.
  • p.valuethe p-values of the test.
  • methoda character string indicating what type of test was performed.
  • parametera list with the components m and eps containing the embedding dimensions and epsilon values for which the statistic is computed.
  • data.namea character string giving the name of the data.


J. B. Cromwell, W. C. Labys and M. Terraza (1994): Univariate Tests for Time Series Models, Sage, Thousand Oaks, CA, pages 32--36.

  • bds.test
  • print.bdstest
x <- rnorm(100)
bds.test(x, m = 3)  # i.i.d. example

x <- c(rnorm(50), runif(50))
bds.test(x, m = 3)  # not identically distributed

x <- quadmap(xi = 0.2, a = 4.0, n = 100)
bds.test(x, m = 3)  # not independent
Documentation reproduced from package tseries, version 0.8-0, License: GPL (see file COPYING), except for ./src/muin2ser.f and ./misc which are free for non-commercial purposes. See file README for details.

Community examples

Looks like there are no examples yet.