The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Introduction to HTDV

José Mauricio Gómez Julián

2026-04-29

Overview

HTDV provides hypothesis testing and estimation for dependent, unbalanced data through four integrated layers: (i) spectrally-faithful likelihoods (Whittle, composite), (ii) hierarchical Bayesian priors on the dependence nuisance parameters, (iii) Hamiltonian Monte Carlo with mandatory diagnostic gates, and (iv) a Bayesian decision layer (ROPE, bridge-sampling Bayes factors, WAIC, leave-future-out cross-validation, stacking). Finite-sample robustness is delivered by fixed-bandwidth HAR inference, block bootstrap with automatic block length, and adaptive conformal prediction.

Quick start: long-run variance and fixed-b HAR

library(HTDV)

x <- stats::arima.sim(model = list(ar = 0.6), n = 200,
                      rand.gen = stats::rnorm)
x <- as.numeric(x)

lrv <- htdv_lrv(x, kernel = "qs", bandwidth = "andrews")
lrv$lrv

test <- htdv_fixedb(x, theta0 = 0, B = 0.1,
                    sims = 1000L, seed = 1L)
test$p_value

Block bootstrap

boot <- htdv_boot(x, mean, R = 1999L,
                  type = "stationary",
                  block_length = "auto",
                  seed = 1L)
boot$ci_percentile
boot$block_length

Adaptive conformal

pred <- function(history) {
  if (length(history) >= 1L) history[length(history)] else 0
}
conf <- htdv_conformal(x, pred, alpha_target = 0.1,
                       lambda = 0.05, burn_in = 20L)
conf$coverage

Hierarchical Bayesian fit

The default htdv_fit() compiles a Stan model on first use and caches it for subsequent calls.

fit <- htdv_fit(x, model = "tac", chains = 4L, iter = 4000L,
                refresh = 0L, seed = 1L)
htdv_summary(fit, rope = c(-0.1, 0.1), target = "theta")
htdv_diagnostics(fit)$passed
htdv_ppc(fit, x)

Envelope across likelihoods

fit_w <- htdv_fit(x, model = "whittle", chains = 4L, iter = 4000L,
                  refresh = 0L, seed = 2L)
fit_c <- htdv_fit(x, model = "composite", chains = 4L, iter = 4000L,
                  refresh = 0L, seed = 3L)

env <- htdv_envelope(list(whittle = fit_w, composite = fit_c),
                     target = "theta")
env$intervals

Decision: ROPE, Bayes factor, stacking

draws <- as.numeric(rstan::extract(fit$stanfit, pars = "theta")$theta)
htdv_rope(draws, rope = c(-0.1, 0.1))$decision

if (requireNamespace("bridgesampling", quietly = TRUE)) {
  htdv_bf(fit_w, fit_c)$bf10
}

if (requireNamespace("loo", quietly = TRUE)) {
  htdv_stack(list(whittle = fit_w, composite = fit_c))$weights
}

Explicit equivalence constants

htdv_equivalence_constants(gamma = 2, q = 6, n = length(x))

References

Andrews, D. W. K. (1991). Econometrica 59(3): 817-858.

Berger, J. O. (1994). Test 3(1): 5-124.

Gibbs, I., & Candes, E. (2021). NeurIPS 34: 1660-1672.

Kiefer, N. M., & Vogelsang, T. J. (2005). Econometric Theory 21(6): 1130-1164.

Kruschke, J. K. (2018). Advances in Methods and Practices in Psychological Science 1(2): 270-280.

Patton, A., Politis, D. N., & White, H. (2009). Econometric Reviews 28(4): 372-375.

Varin, C., Reid, N., & Firth, D. (2011). Statistica Sinica 21(1): 5-42.

Vehtari, A., Gelman, A., & Gabry, J. (2017). Statistics and Computing 27(5): 1413-1432.

Watanabe, S. (2010). JMLR 11: 3571-3594.

Whittle, P. (1953). Arkiv foer Matematik 2(5): 423-434.

Yao, Y., Vehtari, A., Simpson, D., & Gelman, A. (2018). Bayesian Analysis 13(3): 917-1007.

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.