Je veux faire une prévision d'avance n avec un modèle AR (4) avec une série temporelle différenciée.Pour la boucle modèle AR
Le modèle lui-même:
X(t)-X(t-1)=a(1)(X(t-1)-X(t-2))+...+a(4)(X(t-4)-X(t-5))
=> X(t)=X(t-1)+a(1)(X(t-1)-X(t-2))+...+a(4)(X(t-4)-X(t-5))
Prévisions Première:
X(t+1)-X(t)=a(1)(X(t)-X(t-1))+...+a(4)(X(t-3)-X(t-4))
=> X(t+1)=X(t)+a(1)(X(t)-X(t-1))+...+a(4)(X(t-3)-X(t-4))
Prévisions Deuxième:
X(t+2)-X(t+1)=a(1)(X(t+1)-X(t))+...+a(4)(X(t-2)-X(t-3))
=> X(t+2)=X(t+1)+a(1)(X(t+1)-X(t))+...+a(4)(X(t-2)-X(t-3))
Je l'ai essayé déjà avec ce code :
N<-50
arkoef<-0
ar<-0
ARforecast<-numeric(0)
arkoef<-c(closingkursu[2518],closingkursu[2517],closingkursu[2516],closingkursu[2515],closingkursu[2514])
ar<-arkoef
for(i in 1:N){
ARforecast<-c(ARforecast,arkoef[1]+arfit$coef[1]*(arkoef[1]-arkoef[2])+arfit$coef[2]*(arkoef[2]-arkoef[3])+arfit$coef[3]*(arkoef[3]-arkoef[4])+arfit$coef[4]*(arkoef[4]-arkoef[5]))
ar = c(tail(ARforecast, 1), head(ar, -1))}
La sortie de ce code est:
ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1
10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656
ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1
10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656
ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1 ar1
10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656 10.19656
La première prévision semble juste, mais la boucle isnt de travail.
Le coef $ de arfit [1] pour arfit coef $ [4] sont des coefficients fixes et l'indexation avec je vais les changer je suppose. Mais le code me donne 50 avertissements et NA comme valeur – user2968163