## Tarvitset paketin fGarch (Packages->install package(s) -> "paikka" --> fGarch ## sekä tämän tarvitsevat paketetit timeDate, timeSeries ja fBasics ## Luetaan mainittuun hakemistoon tallennettu aikasarja - tässä tapauksessa ukwages data=read.table("C:/Users/Erkka/Opiskelu/Tilastotiede/Stationaariset 2010/Laskuharjoitukset/ukwages.txt",header=TRUE) y = ts(data$Y) ## muodostetaan aikasarja ## Aikasarjan muunnokset ja piirtäminen (ks. R-koodi_1) ## Keskistys haluttaessa mean=mean(y) yk=y-mean ## ARMA-GARCH -mallin estimointi ?garchFit ## include.mean = FALSE, jos käytetään keskistettyjä havaintoja; include.mean = TRUE, jos mallissa estimoitava vakiotermi (mu) ## Mahdollisten jakaumien joukossa mm. "norm" (normaalijakauma), ja "std" (t-jakauma) ja "QMLE" (normaalijakauma robustein keskivirhein) ## Huomaa, että garch( , ):in 1. argumentti on ARCH-aste eli toisin päin kuin kurssilla fit <- garchFit(~arma(p,q)+garch(s,r),y,include.mean = TRUE, include.shape = NULL, cond.dist = c("std")) fit summary(fit) ## hieman yksityiskohtaisempi tulostus ## Diagnostiikkaa res = residuals(fit, standardize = TRUE) ## residuaalit res <- ts(res) ## residuaalit aikasarjaksi plot(res, ylab=" ", main="Residuaalit", xlab="") ## residuaalien piirtäminen hist(res, main="Residuaalien histogrammi") ##residuaalien histogrammi acf(res, main="Residuaalien empiirinen autokorrelatiofunktio") ## residuaalien autokorrelaatiofunktio acf(res^2,main="Neliöityjen residuaalien empiirinen autokorrelatiofunktio") ## neliöityjen residuaalien autokorrelaatiofunktio ## Pelkän GARCH-mallin estimointi (GARCHin 1. argumentti ARCH-aste eli toisin päin kuin kurssilla) ## Tässä keskistys on tehty fit <- garchFit(~garch(s,r),yk,include.mean = FALSE, include.shape = NULL, cond.dist = c("std")) fit summary(fit) ## hieman yksityiskohtaisempi tulostus ## Diagnostiikka kuten edellä