Estimate time-varying variance.
tvvar(y, trend.order, tau2.ini = NULL, delta, plot = TRUE, …)
a univariate time series.
trend order.
initial estimate of variance of the system noise \(\tau^2\).
If tau2.ini
= NULL
, the most suitable value is chosen in
\(\tau^2 = 2^{-k}\).
search width.
logical. If TRUE
(default), 'sm
', 'trend
'
and 'noise
' are plotted.
further arguments to be passed to plot.tvvar
.
An object of class "tvvar"
, which is a list with the following
elements:
time varying variance.
normalized data.
transformed data.
trend.
residuals.
variance of the system noise.
variance of the observational noise.
log-likelihood of the model.
AIC.
the name of the univariate time series y
.
Assuming that \(\sigma_{2m-1}^2 = \sigma_{2m}^2\), we define a transformed time series \(s_1,\dots,s_{N/2}\) by
$$s_m = y_{2m-1}^2 + y_{2m}^2,$$
where \(y_n\) is a Gaussian white noise with mean \(0\) and variance \(\sigma_n^2\). \(s_m\) is distributed as a \(\chi^2\) distribution with \(2\) degrees of freedom, so the probability density function of \(s_m\) is given by
$$f(s) = \frac{1}{2\sigma^2} e^{-s/2\sigma^2}.$$
By further transformation
$$z_m = \log \left( \frac{s_m}{2} \right),$$
the probability density function of \(z_m\) is given by
$$g(z) = \frac{1}{\sigma^2} \exp{ \left\{ z-\frac{e^z}{\sigma^2} \right\} } = \exp{ \left\{ (z-\log\sigma^2) - e^{(z-\log\sigma^2)} \right\} }.$$
Therefore, the transformed time series is given by
$$z_m = \log \sigma^2 + w_m,$$
where \(w_m\) is a double exponential distribution with probability density function
$$h(w) = \exp{\{w-e^w\}}.$$
In the space state model
$$z_m = t_m + w_m$$
by identifying trend components of \(z_m\), the log variance of original time series \(y_n\) is obtained.
Kitagawa, G. (2010) Introduction to Time Series Modeling. Chapman & Hall/CRC.
Kitagawa, G. and Gersch, W. (1996) Smoothness Priors Analysis of Time Series. Lecture Notes in Statistics, No.116, Springer-Verlag.
Kitagawa, G. and Gersch, W. (1985) A smoothness priors time varying AR coefficient modeling of nonstationary time series. IEEE trans. on Automatic Control, AC-30, 48-56.
# NOT RUN {
# seismic data
data(MYE1F)
tvvar(MYE1F, trend.order = 2, tau2.ini = 6.6e-06, delta = 1.0e-06)
# }
Run the code above in your browser using DataLab