#--------------------------------- # Google Example #--------------------------------- #-Histogram and Normality Plot #-Market Model library(quantmod) # Data from Google getSymbols('GOOG', from = "2005-01-01") y = GOOG$GOOG.Close tail(y) plot(y,type="l",col=20,main="Google", xlab="Price",ylab="$") # Calculate log-returns n <- length(y) ret <- diff(log(y)) ret <- ret[-1] mean(ret) sd(ret) hist(ret,breaks=50,prob=T,col=4,main="Google: Daily Returns") # Market Model # Data from SPY, the ETF tracks SP500 getSymbols('SPY', from = "2005-01-01") x = SPY$SPY.Close n <- length(x) SP500ret <- diff(log(x)) SP500ret <- SP500ret[-1] mean(SP500ret) sd(SP500ret) # regression for the market model googlemkt <- lm(ret ~ SP500ret) googlemkt # plot the fitted model plot(as.vector(SP500ret),as.vector(ret),pch=21,bg='grey',bty='n') abline(googlemkt,col='red',lwd=2) title("Google Market Model") hist(rstudent(googlemkt),nclass=50,col=‘green’) qqnorm(rstudent(googlemkt),col=‘red’) qqline(rstudent(googlemkt))