GSMAR {uGMAR} | R Documentation |
Create object of class 'gsmar' defining a GMAR, StMAR, or G-StMAR model
Description
GSMAR
creates an S3 object of class 'gsmar'
that defines a GMAR, StMAR, or G-StMAR model.
Usage
GSMAR(
data,
p,
M,
params,
model = c("GMAR", "StMAR", "G-StMAR"),
restricted = FALSE,
constraints = NULL,
conditional = TRUE,
parametrization = c("intercept", "mean"),
calc_qresiduals,
calc_cond_moments,
calc_std_errors = FALSE,
custom_h = NULL
)
## S3 method for class 'gsmar'
logLik(object, ...)
## S3 method for class 'gsmar'
residuals(object, ...)
## S3 method for class 'gsmar'
summary(object, ..., digits = 2)
## S3 method for class 'gsmar'
plot(x, ..., include_dens = TRUE)
## S3 method for class 'gsmar'
print(x, ..., digits = 2, summary_print = FALSE)
Arguments
data |
a numeric vector or class |
p |
a positive integer specifying the autoregressive order of the model. |
M |
|
params |
a real valued parameter vector specifying the model.
Symbol |
model |
is "GMAR", "StMAR", or "G-StMAR" model considered? In the G-StMAR model, the first |
restricted |
a logical argument stating whether the AR coefficients |
constraints |
specifies linear constraints imposed to each regime's autoregressive parameters separately.
The symbol |
conditional |
a logical argument specifying whether the conditional or exact log-likelihood function should be used. |
parametrization |
is the model parametrized with the "intercepts" |
calc_qresiduals |
should quantile residuals be calculated? Default is |
calc_cond_moments |
should conditional means and variances be calculated? Default is |
calc_std_errors |
should approximate standard errors be calculated? |
custom_h |
A numeric vector with same the length as the parameter vector: i:th element of custom_h is the difference
used in central difference approximation for partial differentials of the log-likelihood function for the i:th parameter.
If |
object |
object of class |
... |
in the plot method: arguments passed to the function |
digits |
number of digits to be printed (max 20) |
x |
object of class |
include_dens |
Plot also kernel density estimate of the data and model implied stationary density with regimewise densities? See the details. |
summary_print |
if set to |
Details
Models can be built without data, e.q., in order to simulate from the process, but some things such as quantile residuals and conditional moments can't be calculated without data.
If include_dens == TRUE
, the kernel density estimate of the data is calculated
with the function density
from the package stats
. By default, the default
settings of that function are used, including the usage of Gaussian kernel. Use the dot
parameters to adjust the settings if desired.
By the model implied stationary density we mean the stationary one-dimensional mixture density of M regimes (see KMS 2015, Theorem 1 and the discussion following it for the Gaussian case and Theorem 2 in PMS 2018 for the Student's t case). The regimewise densities (i.e. each density 1,...,M in the stationary mixture density) are multiplied with the mixing weight parameters accordingly.
In the density plot black represents the kernel density estimate of the data, grey dashed line the model implied density, and the colored dotted lines the regime wise densities.
Value
Returns an object of class 'gsmar'
defining the specified GMAR, StMAR, or G-StMAR model. If data is supplied,
the returned object contains (by default) empirical mixing weights, some conditional and unconditional moments, and quantile
residuals. Note that the first p observations are taken as the initial values so the mixing weights, conditional moments, and
quantile residuals start from the p+1:th observation (interpreted as t=1).
Functions
-
logLik(gsmar)
: Log-likelihood method -
residuals(gsmar)
: residuals method to extract quantile residuals -
summary(gsmar)
: summary method, standard errors in brackets -
plot(gsmar)
: Plot method for class 'gsmar' -
print(gsmar)
: print method
References
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.
See Also
fitGSMAR
, iterate_more
, add_data
, stmar_to_gstmar
,
swap_parametrization
, get_gradient
, simulate.gsmar
,
predict.gsmar
, cond_moments
, uncond_moments
, LR_test
, Wald_test
Examples
# GMAR model without data
params22 <- c(0.9, 0.4, 0.2, 0.5, 0.7, 0.5, -0.2, 0.7, 0.7)
gmar22 <- GSMAR(p=2, M=2, params=params22, model="GMAR")
gmar22
# StMAR model, without data
params12t <- c(1.38, 0.88, 0.27, 3.8, 0.74, 3.15, 0.8, 300, 3.6)
stmar12t <- GSMAR(p=1, M=2, params=params12t, model="StMAR")
stmar12t
# G-StMAR model with data
params42gs <- c(0.04, 1.34, -0.59, 0.54, -0.36, 0.01, 0.06, 1.28, -0.36,
0.2, -0.15, 0.04, 0.19, 9.75)
gstmar42 <- GSMAR(data=M10Y1Y, p=4, M=c(1, 1), params=params42gs,
model="G-StMAR")
gstmar42
# Restricted G-StMAR model with data
params42gsr <- c(0.13, 0.03, 1.29, -0.4, 0.25, -0.2, 0.03, 0.05, 0.51, 2.76)
gstmar42r <- GSMAR(data=M10Y1Y, p=4, M=c(1, 1), params=params42gsr,
model="G-StMAR", restricted=TRUE)
gstmar42r