The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
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[@]metanet.ch.
uGMAR provides tools for estimating and analyzing Gaussian mixture autoregressive (GMAR), Student’s t mixture Autoregressive (StMAR) and Gaussian and Student’s t mixture autoregressive (G-StMAR) models, including functions for unconstrained and constrained maximum likelihood estimation of the model parameters, quantile residual based model diagnostics, simulation from the processes, and forecasting.
You can install the released version of uGMAR from CRAN with:
install.packages("uGMAR")
And the development version from GitHub with:
# install.packages("devtools")
::install_github("saviviro/uGMAR") devtools
This is a basic example how to estimate GSMAR model and further analyze it.. The example data is simulated from a GMAR p=1, M=2 process. The estimation process is computationally demanding and takes advantage of parallel computing.
## Estimate a GMAR(1, 2) model and examine the estimates
data(simudata, package="uGMAR")
<- fitGSMAR(data=simudata, p=1, M=2, model="GMAR", ncalls=10, seeds=1:10)
fit
fitsummary(fit) # Approximate standard errors in brackets
plot(fit)
get_gradient(fit) # The first order condition
get_soc(fit) # The second order condition (eigenvalues of approximated Hessian)
profile_logliks(fit) # Plot the profile log-likelihood functions
## Quantile residual diagnostics
quantile_residual_plot(fit)
diagnostic_plot(fit)
<- quantile_residual_tests(fit)
qrt
## Simulate a sample path from the estimated process
<- simulate(fit, nsim=100)
sim plot.ts(sim$sample)
## Forecast future values of the process
predict(fit, n_ahead=10, pi=c(0.95, 0.8))
# Estimate a GMAR(1, 2) model with the autoregressive coefficients restricted
# to be the same in both regimes:
<- fitGSMAR(data=simudata, p=1, M=2, model="GMAR", restricted=TRUE,
fitr ncalls=10, seeds=1:10)
# Test with likelihood ratio tests whether the AR parameters are the same in
# both regimes (see also the function 'Wald_test'):
LR_test(fit, fitr)
# Conditional mean and variance plots:
cond_moment_plot(fit, which_moment="mean")
cond_moment_plot(fit, which_moment="variance")
Kalliovirta L., Meitz M. and Saikkonen P. 2015. Gaussian Mixture Autoregressive model for univariate time series. Journal of Time Series Analysis, 36(2), 247-266.
Meitz M., Preve D., Saikkonen P. 2023. A mixture autoregressive model based on Student’s t-distribution. Communications in Statistics - Theory and Methods 52(2), 499-515.
Virolainen S. 2022. A mixture autoregressive model based on Gaussian and Student’s t-distributions. Studies in Nonlinear Dynamics & Econometrics, 26(4), 559-580.
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.