kernel                  package:ts                  R Documentation

Smoothing Kernel Objects

Description:

     The `"tskernel"' class is designed to represent discrete symmetric
     normalized smoothing kernels.  These kernels can be used to smooth
     vectors, matrices, or time series objects.

Usage:

     kernel(coef, m, r, name)

     df.kernel(k)
     bandwidth.kernel(k)
     is.tskernel(k)

     print(x, digits = max(3,getOption("digits")-3), ...)
     plot(x, ...)

Arguments:

    coef: the upper half of the smoothing kernel coefficients
          (inclusive of coefficient zero) or the name of a kernel
          (currently `"daniell"', `"dirichlet"', `"fejer"' or
          `"modified.daniell"'.

       m: the kernel dimension. The number of kernel coefficients is
          `2*m+1'.

    name: the name of the kernel.

       r: the kernel order for a Fejer kernel.

  digits: the number of digits to format real numbers.

    k, x: a `"tskernel"' object.

     ...: arguments passed to or from other methods.

Details:

     `kernel' is used to construct a general kernel or named specific
     kernels. The modified Daniell kernel halves the end coefficients
     (as used by S-PLUS).

     `df.kernel' returns the ``equivalent degrees of freedom'' of a
     smoothing kernel as defined in Brockwell and Davies (1991), page
     362, and `bandwidth.kernel' returns the equivalent bandwidth as
     defined in Bloomfield (1991), p. 201, with a continuity
     correction.

Value:

     `kernel' returns a list with class `"tskernel"', and components
     the coefficients `coef' and the kernel dimension `m'.  An
     additional attribute is `"name"'.

Author(s):

     A. Trapletti; modifications by B.D. Ripley

References:

     Bloomfield, P. (1976) Fourier Analysis of Time Series: An
     Introduction. Wiley.

     Brockwell, P.J. and Davis, R.A. (1991) Time Series: Theory and
     Methods. Second edition. Springer, pp. 350-365.

See Also:

     `kernapply'

Examples:

     data(EuStockMarkets)    # Demonstrate a simple trading strategy for the 
     x <- EuStockMarkets[,1]  # financial time series German stock index DAX.
     k1 <- kernel("daniell", 50)  # a long moving average
     k2 <- kernel("daniell", 10)  # and a short one
     plot(k1) 
     plot(k2)
     x1 <- kernapply(x, k1)
     x2 <- kernapply(x, k2)
     plot(x)
     lines(x1, col = "red")    # go long if the short crosses the long upwards
     lines(x2, col = "green")  # and go short otherwise

     data(sunspot)     # Reproduce example 10.4.3 from Brockwell and Davies (1991)
     spectrum(sunspot.year, kernel=kernel("daniell", c(11,7,3)), log="no")

