setwd("C:/Users/marcogeovanni/Desktop/Modern Guide To Econometrics/Chapter 3")
library("readstata13", lib.loc="~/R/win-library/3.2")
predictsp <- read.dta13("predictsp.dta")
predictsp2 <- predictsp[1:360,]
attach(predictsp2)
Reg1 <- lm(EXRET~ PE_1 + DY_1 + INF_2 + IP_2 + I3_1 + I3_2 + I12_1 + I12_2 + MB_2 + CS_1 + WINTER, data.frame(predictsp2))
Reg2 <- lm(EXRET~ PE_1 + DY_1 + INF_2 + IP_2 + I3_1 + I3_2 + I12_1 + I12_2 + CS_1 + WINTER, data.frame(predictsp2))
Reg3 <- lm(EXRET~ DY_1 + I3_1 + I3_2 + I12_1 + I12_2 + CS_1, data.frame(predictsp2))
Reg4 <- lm(EXRET~ DY_1 + INF_2 + I3_1 + I3_2 + I12_1 + I12_2 + CS_1 + WINTER, data.frame(predictsp2))
Reg5 <- lm(EXRET~ DY_1 + I12_1 + I12_2 + CS_1 + WINTER, data.frame(predictsp2))
library(stargazer)
## Warning: package 'stargazer' was built under R version 3.2.3
##
## Please cite as:
## Hlavac, Marek (2015). stargazer: Well-Formatted Regression and Summary Statistics Tables.
## R package version 5.2. http://CRAN.R-project.org/package=stargazer
stargazer(Reg1, Reg2, Reg3, Reg4, Reg5, type = "text",out="table1.txt")
##
## ==========================================================================================================================================
## Dependent variable:
## ----------------------------------------------------------------------------------------------------------------------
## EXRET
## (1) (2) (3) (4) (5)
## ------------------------------------------------------------------------------------------------------------------------------------------
## PE_1 -11.971 -15.769
## (12.937) (10.707)
##
## DY_1 12.650 10.282 13.044*** 16.621*** 12.207***
## (8.288) (6.942) (4.813) (5.520) (4.688)
##
## INF_2 -16.332** -15.677** -10.688
## (7.679) (7.569) (7.014)
##
## IP_2 -5.978 -6.858
## (6.110) (5.869)
##
## I3_1 26.869** 25.897** 27.353** 28.311**
## (12.451) (12.299) (12.116) (12.239)
##
## I3_2 -22.292* -22.307* -25.231** -23.229*
## (12.107) (12.095) (11.964) (12.055)
##
## I12_1 -50.524*** -50.385*** -52.813*** -52.483*** -27.421***
## (12.348) (12.332) (12.255) (12.283) (5.072)
##
## I12_2 38.866*** 39.759*** 43.528*** 40.625*** 20.612***
## (12.793) (12.666) (12.395) (12.610) (5.286)
##
## MB_2 -4.396
## (8.384)
##
## CS_1 17.539 15.831 23.904*** 22.251*** 21.831***
## (10.934) (10.427) (8.471) (8.479) (8.361)
##
## WINTER 0.625 0.642 0.616 0.698
## (0.441) (0.439) (0.437) (0.428)
##
## Constant 2.074 3.119 -1.318 -2.181** -1.556
## (4.023) (3.491) (0.938) (1.023) (0.960)
##
## ------------------------------------------------------------------------------------------------------------------------------------------
## Observations 360 360 360 360 360
## R2 0.170 0.169 0.150 0.162 0.144
## Adjusted R2 0.144 0.145 0.136 0.143 0.132
## Residual Std. Error 4.022 (df = 348) 4.018 (df = 349) 4.039 (df = 353) 4.024 (df = 351) 4.048 (df = 354)
## F Statistic 6.470*** (df = 11; 348) 7.104*** (df = 10; 349) 10.419*** (df = 6; 353) 8.470*** (df = 8; 351) 11.930*** (df = 5; 354)
## ==========================================================================================================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
BIC(Reg1, Reg2, Reg3, Reg4, Reg5)
## df BIC
## Reg1 13 2087.983
## Reg2 12 2082.381
## Reg3 8 2066.840
## Reg4 10 2073.765
## Reg5 7 2063.590
AIC(Reg1, Reg2, Reg3, Reg4, Reg5)
## df AIC
## Reg1 13 2037.464
## Reg2 12 2035.748
## Reg3 8 2035.752
## Reg4 10 2034.904
## Reg5 7 2036.388
predictsp3 <- predictsp[361:480,]
attach(predictsp3)
## The following objects are masked from predictsp2:
##
## CS_1, DY_1, EXRET, I12_1, I12_2, I3_1, I3_2, INF_2, IP_2,
## MB_2, MONTH, PE_1, TS_1, WINTER, YEAR
HH <-predict(Reg1, predictsp3)
plot(EXRET)
lines(HH, col="Red")
HH2 <-predict(Reg2, predictsp3)
HH3 <-predict(Reg3, predictsp3)
HH4 <-predict(Reg4, predictsp3)
HH5 <-predict(Reg5, predictsp3)
lines(HH2, col="Blue")
lines(HH3, col="Green")
lines(HH4, col="Purple")
lines(HH5, col="Orange")
library("Metrics", lib.loc="~/R/win-library/3.2")
## Warning: package 'Metrics' was built under R version 3.2.3
RMSE <- rmse(EXRET,HH)
RMSE2 <- rmse(EXRET,HH2)
RMSE3 <- rmse(EXRET,HH3)
RMSE4 <- rmse(EXRET,HH4)
RMSE5 <- rmse(EXRET,HH5)
RMSEMatrix <- data.frame(RMSE, RMSE2, RMSE3, RMSE4, RMSE5)
list(RMSEMatrix)
## [[1]]
## RMSE RMSE2 RMSE3 RMSE4 RMSE5
## 1 4.833189 4.936203 4.842054 4.884346 4.753744
Corr1 <- cor(HH,EXRET)^2
Corr2 <- cor(HH2,EXRET)^2
Corr3 <- cor(HH3,EXRET)^2
Corr4 <- cor(HH4,EXRET)^2
Corr5 <- cor(HH5,EXRET)^2
CorrMatrix <- data.frame(Corr1, Corr2, Corr3, Corr4, Corr5)
list(CorrMatrix)
## [[1]]
## Corr1 Corr2 Corr3 Corr4 Corr5
## 1 0.009350991 0.01046108 0.0003380942 0.000314682 0.0005724199