DJIA | R Documentation |
Weekly closing values of the Dow Jones Industrial Average.
data("DJIA")
A weekly univariate time series of class "zoo"
from 1971-07-01 to 1974-08-02.
Appendix A in Hsu (1979).
Hsu D. A. (1979), Detecting Shifts of Parameter in Gamma Sequences with Applications to Stock Price and Air Traffic Flow Analysis, Journal of the American Statistical Association, 74, 31–40.
data("DJIA")
## look at log-difference returns
djia <- diff(log(DJIA))
plot(djia)
## convenience functions
## set up a normal regression model which
## explicitely also models the variance
normlm <- function(formula, data = list()) {
rval <- lm(formula, data = data)
class(rval) <- c("normlm", "lm")
return(rval)
}
estfun.normlm <- function(obj) {
res <- residuals(obj)
ef <- NextMethod(obj)
sigma2 <- mean(res^2)
rval <- cbind(ef, res^2 - sigma2)
colnames(rval) <- c(colnames(ef), "(Variance)")
return(rval)
}
## normal model (with constant mean and variance) for log returns
m1 <- gefp(djia ~ 1, fit = normlm, vcov = meatHAC, sandwich = FALSE)
plot(m1, aggregate = FALSE)
## suggests a clear break in the variance (but not the mean)
## dating
bp <- breakpoints(I(djia^2) ~ 1)
plot(bp)
## -> clearly one break
bp
time(djia)[bp$breakpoints]
## visualization
plot(djia)
abline(v = time(djia)[bp$breakpoints], lty = 2)
lines(time(djia)[confint(bp)$confint[c(1,3)]], rep(min(djia), 2), col = 2, type = "b", pch = 3)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.