Nothing
# Tests for long-run variance estimation
test_that("estimate_lrv produces valid output", {
set.seed(123)
v <- matrix(rnorm(200), 100, 2)
result <- estimate_lrv(v, kernel = "bartlett")
expect_true(is.list(result))
expect_true("Omega" %in% names(result))
expect_true("bandwidth" %in% names(result))
expect_true("kernel" %in% names(result))
# Omega should be a matrix
expect_true(is.matrix(result$Omega))
expect_equal(dim(result$Omega), c(2, 2))
# Omega should be symmetric
expect_equal(result$Omega, t(result$Omega), tolerance = 1e-10)
# Omega should be positive semi-definite
eig <- eigen(result$Omega, symmetric = TRUE)$values
expect_true(all(eig >= -1e-10))
# Bandwidth should be positive
expect_true(result$bandwidth > 0)
})
test_that("estimate_lrv works with different kernels", {
set.seed(456)
v <- matrix(rnorm(300), 100, 3)
result_bart <- estimate_lrv(v, kernel = "bartlett")
result_parz <- estimate_lrv(v, kernel = "parzen")
result_qs <- estimate_lrv(v, kernel = "qs")
# All should produce valid matrices
for (res in list(result_bart, result_parz, result_qs)) {
expect_true(is.matrix(res$Omega))
expect_equal(dim(res$Omega), c(3, 3))
expect_true(res$bandwidth > 0)
}
# Results should differ (different kernels give different estimates)
expect_false(isTRUE(all.equal(result_bart$Omega, result_parz$Omega)))
})
test_that("estimate_lrv respects fixed bandwidth", {
set.seed(789)
v <- matrix(rnorm(200), 100, 2)
result <- estimate_lrv(v, kernel = "bartlett", bandwidth = 5)
expect_equal(result$bandwidth, 5)
})
test_that("select_bandwidth_andrews produces reasonable values", {
set.seed(111)
# White noise - should have small bandwidth
v_white <- matrix(rnorm(500), 250, 2)
bw_white <- select_bandwidth_andrews(v_white, "bartlett")
# AR(1) process - should have larger bandwidth
v_ar <- matrix(0, 250, 2)
for (t in 2:250) {
v_ar[t, ] <- 0.7 * v_ar[t - 1, ] + rnorm(2)
}
bw_ar <- select_bandwidth_andrews(v_ar, "bartlett")
# Both should be positive
expect_true(bw_white > 0)
expect_true(bw_ar > 0)
# AR process should generally need larger bandwidth
# (This is a tendency, not always true for finite samples)
# expect_true(bw_ar > bw_white) # May fail randomly
})
test_that("estimate_onesided_lrv produces valid output", {
set.seed(222)
e <- matrix(rnorm(200), 100, 2)
v <- matrix(rnorm(200), 100, 2)
Delta <- estimate_onesided_lrv(e, v, kernel = "bartlett", bandwidth = 5)
expect_true(is.matrix(Delta))
expect_equal(dim(Delta), c(2, 2))
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.