Zaman Serileri Wooldridge 18. Bölüm

Bu bölümde ileriye yönelik zaman serisi tahminleri yöntemlerinden bahsedeceğiz

İleriye Yönelik Tahmin Etme?

Hepinizin bildiği gibi iktisat biliminin bazı dalarında ileriye yönelik tahmin çok önemli bir yer tutar.Biz şimdilik regresyona bağlı bir tahmin yöntemi kullanacağız. Bu bölümde kullanacağımız örnekler Wooldridge ders kitabınızda bulunan örneklerden oluşacak. Bir veri setinin t zamanına kadar değerlerini bildiğimizi varsayalım. Bu zaman serisinin t+1 zamanında nasıl bir değer alacağını tahmin etmek ileriye yönelik tahmin etme olarak adlandırılır. Bu t+1 zamanının tahmini, veri setimizin yapısına göre değişkenlik gösterir. Eğer bir hisse senedi veya döviz kuru tahmini yapıyorsak, bu sürec bir günlük tahmin olabilir. Eğer GSYH’yı tahmin etmek istiyorsak, 3 ay veya 1 yıl sonrayı tahmin etmeye çalışabilirsiniz. Bazı veri setleri aylık verilerden oluşur ve bir ay sonrayı tahmin etmek isteyebilirsiniz.

Peki elde ettiğimiz tahminin, iyi bir thamin olup olmadığını nasıl anlayabiliriz. Wooldridge, yapmış olduğumuz tahmine f (forecast) notasyonunu kullanmış. Eğer tahmin etmeye çalıştığımız yt+1, f değerinden farklı oluşursa. Tahminimiz bir hata payına sahip olur. İleriye yönelik tahmin hatası dediğimiz bu hataya e diyelim. O zaman hata

et+1=yt+1ft

olacaktır. ft, yt+1 için t zamanında yapmış olduğumuz tahmindir. yt+1 ancak tahmin yapıldıktan sonra gözlemlenebilir ve biz hatamızın ne kadar olduğunu anlayabiliriz. Tahmin edebileceğiniz gibi hata payları negatif ve pozitif olacağından, toplam hata payı kareler alınarak bulunur. Bu yöntemi daha önce regresyon ve varyans için de kullanmıştık. et+12

Kullanılan Regresyon Modelleri

Tahmin etmek istediğimi bir y değişkeni olduğunu varsayalım. Regresyon modelimiz

yt=β0+β1zt+ut

Bu regresyon modelini tahmin ederek β0 ve β1 parametrelerini tahmin edebiliriz ve aynı denklemi bir adım ilerisi için yazarsak

yt+1=β0+β1zt+1+ut

eğer zt+1' ı biliyorsak yt+1‘ı tahmin edebiliriz. Ancak bir zaman serisinde geleceğe yönelik veriler çoğunlukla bilinemez.

eğer zt+1‘ı bilmiyorsak veya tahmin edemiyorsak şu şekilde bir denklem yazmamız daha yararlı olacaktır.

yt=β0+β1yt1+β2zt1+ut Bu tür modellerde, tahmin için z değişkeni kaldırılabilir veya daha fazla gecikme değerleri alınabilir.

Wooldridge Tahmin

library(wooldridge)
library(stargazer)
## 
## Please cite as:
##  Hlavac, Marek (2018). stargazer: Well-Formatted Regression and Summary Statistics Tables.
##  R package version 5.2.2. https://CRAN.R-project.org/package=stargazer
library(rmarkdown)
library(dynlm)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
data(phillips, package = "wooldridge")
paged_table(phillips)
ABCDEFGHIJ0123456789
 
 
year
<int>
unem
<dbl>
inf
<dbl>
inf_1
<dbl>
unem_1
<dbl>
cinf
<dbl>
cunem
<dbl>
119483.88.1NANANANA
219495.9-1.28.13.8-9.30000022.10000014
319505.31.3-1.25.92.5000000-0.59999990
419513.37.91.35.36.6000004-2.00000024
519523.01.97.93.3-6.0000000-0.29999995
619532.90.81.93.0-1.0999999-0.09999990
719545.50.70.82.9-0.10000002.59999990
819554.4-0.40.75.5-1.1000000-1.09999990
919564.11.5-0.44.41.9000000-0.30000019
1019574.33.31.54.11.80000000.20000029
tsph<-ts(phillips, start = 1948)
plot(tsph[,"unem"],lty=1, lwd=1, ylim=c(0,15), ylab=("işz ve enf"))
lines(tsph[,"inf"],lty=2, lwd=2)
legend("topright", c("işsizlik","enflasyon"), lty=c(1,2), lwd = c(1,2))
model1<-dynlm(unem~L(unem),data=tsph, end=1996)
model2<-dynlm(unem~L(unem) + L(inf),data=tsph, end=1996)
stargazer(model1,model2,type ="text" )
## 
## =================================================================
##                                  Dependent variable:             
##                     ---------------------------------------------
##                                         unem                     
##                              (1)                    (2)          
## -----------------------------------------------------------------
## L(unem)                    0.732***               0.647***       
##                            (0.097)                (0.084)        
##                                                                  
## L(inf)                                            0.184***       
##                                                   (0.041)        
##                                                                  
## Constant                   1.572***               1.304**        
##                            (0.577)                (0.490)        
##                                                                  
## -----------------------------------------------------------------
## Observations                  48                     48          
## R2                          0.554                  0.691         
## Adjusted R2                 0.544                  0.677         
## Residual Std. Error    1.049 (df = 46)        0.883 (df = 45)    
## F Statistic         57.132*** (df = 1; 46) 50.219*** (df = 2; 45)
## =================================================================
## Note:                                 *p<0.1; **p<0.05; ***p<0.01
f1<-predict(model1,newdata = window(tsph,start=1997))
f2<-predict(model2,newdata = window(tsph,start=1997))
y<-window(tsph,start=1997)[,"unem"]
time=c(1997:2003)
matplot(time,cbind(y,f1,f2),type = "l",lwd=2,lty=1:3, ylim = c(4,7))
legend("topleft", c("işsizlik","tahmin1","tahmin2"),lwd=2,lty = 1:3)
e1<-y-f1
e2<-y-f2
rmse<-sqrt(mean(e1^2))
mae<-mean(abs(e1))
<<<<<<< HEAD
rmse2<-sqrt(mean(e2^2))
mae2<-mean(abs(e2))
=======
>>>>>>> origin
rmse
## [1] 0.3247281
mae
## [1] 0.2738516
<<<<<<< HEAD
=======
rmse2<-sqrt(mean(e2^2))
mae2<-mean(abs(e2))
>>>>>>> origin
rmse2
## [1] 0.3135421
mae2
## [1] 0.2455728

«««< HEAD

=======

origin

Previous