dati<-read.csv("c:/dati/esercitazione.csv",sep=",",dec=".") serie1<-dati[,2] serie2<-dati[,3] serie3<-dati[,4] serie4<-dati[,4] d.serie1<-diff(serie1) d.serie2<-diff(serie2) # Identificazione par(mfrow=c(2,1)) autoc<-acf(serie1,main="ACF - serie1 valori originari",ylim=c(-1,1)) pautoc<-pacf(serie1,main="PACF - serie1 valori originari",ylim=c(-1,1)) par(mfrow=c(1,1)) windows() ts.plot(d.serie1,main="Serie1 - Differenze prime") windows() par(mfrow=c(2,1)) autoc<-acf(d.serie2,main="ACF - serie2 differenze prime",ylim=c(-1,1)) pautoc<-pacf(d.serie2,main="PACF - serie2 differenze prime",ylim=c(-1,1)) par(mfrow=c(1,1)) # Stima est.ma2<-arima(sim.ma2,order=c(0,0,2)) t.stat.ma2<-est.ma2$coef/sqrt(diag(est.ma2$var.coef)) p.value<-2*pt(abs(t.stat.ma2),df=1000-length(est.ma2$coef),lower.tail=F) ris<-rbind(est.ma2$coef,sqrt(diag(est.ma2$var.coef)),t.stat.ma2,p.value) print(ris) # Verifica sui residui res<-est.ma2$residuals windows() ts.plot(res) windows() par(mfrow=c(2,1)) autoc<-acf(res,main="ACF - residui MA(2)",ylim=c(-1,1)) pautoc<-pacf(res,main="PACF - residui MA(2)",ylim=c(-1,1)) par(mfrow=c(1,1)) massimo<-max(max(res,na.rm=T),abs(min(res,na.rm=T))) # grafico ad istogrammi della distribuzione die frequenze della serie dei rend. hist(res,breaks=50,freq=F,xlim=c(-massimo,massimo),xlab="residui",main="distribuzione residui MA(2)",col="blue") mu <- mean(res,na.rm=TRUE) # calcola la media campionaria sigma <- sqrt(var(res,na.rm=TRUE)) # calcola la scarto quadratico medio campioanrio x <- seq(-massimo, massimo, length=5000) # definisce i valori x della funzione di densità di prob y <- dnorm(x, mu, sigma) # calcola la densità di prob della normale lines(x, y, col = 2, lty = 2, lwd = 2) # sovrappone la funz di densità della normale all'istogramma