Sei sulla pagina 1di 2

#SIMULAZIONE SERIE STORICHE E STIMA AUTOCORR CAMP E PARZIALE

#studiare l'impatto della dimensione n


#funzione arima.sim(n=,list(ar=c(phi1,phi2,...,phip),ma=c(th1,th2,..,thq)))
set.seed(30)
#6) processo MA(1), con theta1=0.8 e theta1=-0.8
#a) autocorr e autocorr parziali teoriche
par(mfrow=c(2,2))
rho<-ARMAacf(ma=0.8,lag.max=15)
prho<-ARMAacf(ma=0.8,lag.max=15,pacf=TRUE)
plot(0:15, rho, xlab="lag",type="h", ylim=c(-1,1), main="th1=0.8")
abline(h=0,lty=2)
plot(1:15, prho, xlab="lag",type="h", ylim=c(-1,1), main="th1=0.8")
abline(h=0,lty=2)
#simula n=100 osservazioni
ma1<-arima.sim(n = 100, list(ma =0.8))
acf(ma1,15, ylim=c(-1,1))
pacf(ma1,15,ylim=c(-1,1))
#b) autocorr e autocorr parziali teoriche
par(mfrow=c(2,2))
rho<-ARMAacf(ma=-0.8,lag.max=15)
prho<-ARMAacf(ma=-0.8,lag.max=15,pacf=TRUE)
plot(0:15, rho, xlab="lag",type="h", ylim=c(-1,1), main="th1=-0.8")
abline(h=0,lty=2)
plot(1:15, prho, xlab="lag",type="h", ylim=c(-1,1), main="th1=-0.8")
abline(h=0,lty=2)
#simula n=100 osservazioni
ma2<-arima.sim(n = 100, list(ma =-0.8))
acf(ma2,15, ylim=c(-1,1))
pacf(ma2,15,ylim=c(-1,1))

#7) processo AR(1), con phi1=0.7 e phi1=-0.7


#a) autocorr e autocorr parziali teoriche
par(mfrow=c(2,2))
rho<-ARMAacf(ar=0.7,lag.max=15)
prho<-ARMAacf(ar=0.7,lag.max=15,pacf=TRUE)
plot(0:15, rho, xlab="lag",type="h", ylim=c(-1,1), main="phi1=0.7")
abline(h=0,lty=2)
plot(1:15, prho, xlab="lag",type="h", ylim=c(-1,1), main="phi1=0.7")
abline(h=0,lty=2)
#simula n=100 osservazioni
ar1<-arima.sim(n = 100, list(ar=0.7))
acf(ar1,15, ylim=c(-1,1))
pacf(ar1,15,ylim=c(-1,1))
#b) autocorr e autocorr parziali teoriche
par(mfrow=c(2,2))
rho<-ARMAacf(ar=-0.7,lag.max=15)
prho<-ARMAacf(ar=-0.7,lag.max=15,pacf=TRUE)
plot(0:15, rho, xlab="lag",type="h", ylim=c(-1,1), main="phi1=-0.7")
abline(h=0,lty=2)
plot(1:15, prho, xlab="lag",type="h", ylim=c(-1,1), main="phi1=-0.7")
abline(h=0,lty=2)
#simula n=100 osservazioni
ar2<-arima.sim(n = 100, list(ar =-0.8))
acf(ar2,15, ylim=c(-1,1))
pacf(ar2,15,ylim=c(-1,1))

#8) processo AR(2), con phi1=0.5, phi2=0.3


#Rappresentiamo graficamente l'autocorr. campionaria e parziale teoriche per
#questo processo
rho<-ARMAacf(ar=c(0.5,0.3),lag.max=15)
prho<-ARMAacf(ar=c(0.5,0.3),lag.max=15,pacf=TRUE)
#impatto della dimensione campionaria sulla stima dell'autocorr camp e parziale
#impatto della dimensione campionaria sulla stima dell'autocorr camp e parziale
ar2_a<-arima.sim(n = 30, list(ar=c(0.5,0.3),ma=NULL))
ar2_b<-arima.sim(n = 500, list(ar=c(0.5,0.3),ma=NULL))
par(mfrow=c(3,2))
plot(0:15, rho, xlab="lag",type="h", ylim=c(-1,1))
abline(h=0,lty=2)
plot(1:15, prho, xlab="lag",type="h", ylim=c(-1,1))
abline(h=0,lty=2)
acf(ar2_a,lag=10,ylim=c(-1,1), main="n=30")
pacf(ar2_a,lag=10,ylim=c(-1,1), main="n=30")
acf(ar2_b,lag=10,ylim=c(-1,1), main="500")
pacf(ar2_b,lag=10,ylim=c(-1,1), main="500")
#9) processo ARMA(1,2), con phi1=-0.8,th1=-0.3,th2=-0.4
#autocorr e autocorr parziali teoriche
par(mfrow=c(2,2))
rho<-ARMAacf(ar=-0.8,ma=c(-0.3,-0.4),lag.max=15)
prho<-ARMAacf(ar=-0.8,ma=c(-0.3,-0.4),lag.max=15,pacf=TRUE)
plot(0:15, rho, xlab="lag",type="h", ylim=c(-1,1), main="ARMA(1,2)")
abline(h=0,lty=2)
plot(1:15, prho, xlab="lag",type="h", ylim=c(-1,1), main="ARMA(1,2)")
abline(h=0,lty=2)
#simula n=100 osservazioni
arma12<-arima.sim(n = 100, list(ar=-0.8,ma=c(-0.3,-0.4)))
acf(arma12,15, ylim=c(-1,1))
pacf(arma12,15,ylim=c(-1,1))

#10) processi ARMA(1,1) con rispettivamente (phi=0.6,theta=0.4)


#e (phi1=-0.6,theta1=0.4).
arma1<-arima.sim(n = 100, list(ar=0.6,ma =0.4))
arma2<-arima.sim(n = 100, list(ar=-0.6,ma =0.4))
#L'andamento dell'ACF monotono decrescente se (phi1-th1)>0, oscillante
#se (phi1-th1)<0
par(mfrow=c(2,2))
acf(arma1,lag=10,ylim=c(-1,1), main="ARMA(1,1); phi1=0.6, th1=0.4")
pacf(arma1,lag=10,ylim=c(-1,1), main="ARMA(1,1); phi1=0.6, th1=0.4")
acf(arma2,lag=10,ylim=c(-1,1), main="ARMA(1,1); phi1=-0.6, th1=0.4")
pacf(arma2,lag=10,ylim=c(-1,1), main="ARMA(1,1); phi1=-0.6, th1=0.4")
#11) processo ARIMA(1,1,1), con phi1=0.6,th1=-0.3
par(mfrow=c(1,2))
arimsim<-arima.sim(n = 300, list(order=c(1,1,1),ar=0.6,ma =-0.3),sd=1)
acf(arimsim,lag=30,ylim=c(-1,1), main="ARIMA(1,1,1), phi1=0.6, th1=-0.3")
pacf(arimsim,lag=30,ylim=c(-1,1), main="ARIMA(1,1,1), phi1=0.6, th1=-0.3")

Potrebbero piacerti anche