Convenience function for computing the long-run variance (matrix) of a
(possibly multivariate) series of observations.

`lrvar(x, type = c("Andrews", "Newey-West"), prewhite = TRUE, adjust = TRUE, ...)`

## Arguments

- x
numeric vector, matrix, or time series.

- type
character specifying the type of estimator, i.e., whether
`kernHAC`

for the Andrews quadratic spectral kernel HAC estimator
is used or `NeweyWest`

for the Newey-West Bartlett HAC
estimator.

- prewhite
logical or integer. Should the series be prewhitened?
Passed to `kernHAC`

or `NeweyWest`

.

- adjust
logical. Should a finite sample adjustment be made?
Passed to `kernHAC`

or `NeweyWest`

.

- ...
further arguments passed on to `kernHAC`

or
`NeweyWest`

.

## Details

`lrvar`

is a simple wrapper function for computing the long-run variance
(matrix) of a (possibly multivariate) series `x`

. First, this simply fits
a linear regression model `x ~ 1`

by `lm`

. Second,
the corresponding variance of the mean(s) is estimated either by `kernHAC`

(Andrews quadratic spectral kernel HAC estimator) or by `NeweyWest`

(Newey-West Bartlett HAC estimator).

## Value

For a univariate series `x`

a scalar variance is computed. For a
multivariate series `x`

the covariance matrix is computed.

## Examples

```
suppressWarnings(RNGversion("3.5.0"))
set.seed(1)
## iid series (with variance of mean 1/n)
## and Andrews kernel HAC (with prewhitening)
x <- rnorm(100)
lrvar(x)
#> [1] 0.007958048
## analogous multivariate case with Newey-West estimator (without prewhitening)
y <- matrix(rnorm(200), ncol = 2)
lrvar(y, type = "Newey-West", prewhite = FALSE)
#> [,1] [,2]
#> [1,] 0.0097884718 0.0005978738
#> [2,] 0.0005978738 0.0073428222
## AR(1) series with autocorrelation 0.9
z <- filter(rnorm(100), 0.9, method = "recursive")
lrvar(z)
#> [1] 0.4385546
```