Qeta {longmemo} | R Documentation |
Approximate Log Likelihood for Fractional Gaussian Noise / Fractional ARIMA
Description
Qeta()
(= \tilde{Q}(\eta)
of Beran(1994), p.117)
is up to scaling the negative log likelihood function of the specified
model, i.e., fractional Gaussian noise or fractional ARIMA.
Usage
Qeta(eta, model = c("fGn","fARIMA"), n, yper, pq.ARIMA, give.B.only = FALSE)
Arguments
eta |
parameter vector = (H, phi[1:p], psi[1:q]). |
model |
character specifying the kind model class. |
n |
data length |
yper |
numeric vector of length |
pq.ARIMA |
integer, = c(p,q) specifying models orders of AR and
MA parts — only used when |
give.B.only |
logical, indicating if only the |
Details
Calculation of A, B
and T_n = A/B^2
where
A = 2\pi/n \sum_j 2*[I(\lambda_j)/f(\lambda_j)]
,
B = 2\pi/n \sum_j 2*[I(\lambda_j)/f(\lambda_j)]^2
and the sum is taken over all Fourier frequencies
\lambda_j = 2\pi*j/n
, (j=1,\dots,(n-1)/2
).
f
is the spectral density of fractional Gaussian noise or
fractional ARIMA(p,d,q) with self-similarity parameter H
(and
p
AR and q
MA parameters in the latter case), and is
computed either by specFGN
or specARIMA
.
cov(X(t),X(t+k)) = \int \exp(iuk) f(u) du
Value
a list with components
n |
= input |
H |
(input) Hurst parameter, = |
eta |
= input |
A , B |
defined as above. |
Tn |
the goodness of fit test statistic
|
z |
the standardized test statistic |
pval |
the corresponding p-value P(W > z) |
theta1 |
the scale parameter
such that |
spec |
scaled spectral density |
Note
yper[1] must be the periodogram I(\lambda_1)
at
the frequency 2\pi/n
, i.e., not the frequency zero !
Author(s)
Jan Beran (principal) and Martin Maechler (fine tuning)
References
Jan Beran (1992). A Goodness-of-Fit Test for Time Series with Long Range Dependence. JRSS B 54, 749–760.
Beran, Jan (1994). Statistics for Long-Memory Processes; Chapman & Hall. (Section 6.1, p.116–119; 12.1.3, p.223 ff)
See Also
WhittleEst
computes an approximate MLE for fractional
Gaussian noise / fractional ARIMA, by minimizing Qeta
.
Examples
data(NileMin)
y <- NileMin
n <- length(y)
yper <- per(scale(y))[2:(1+ (n-1) %/% 2)]
eta <- c(H = 0.3)
q.res <- Qeta(eta, n=n, yper=yper)
str(q.res)