#EE 435 Naravitch 
setwd("/Users/naravitch/Desktop/BE/EE435")
cat(rep("\n",50))  #clear R Console
#install.packages("quantmod")  
#install.packages("fBasics") 
#install.packages("sn")  
#install.packages("PerformanceAnalytics") 
#install.packages("car") 
#install.packages("tseries")  
#install.packages("forecast") 
library(quantmod) 
library(fBasics)
library(sn)
library(PerformanceAnalytics)
library(car)
library(tseries)
library(forecast)
getSymbols("GOOG",from="2004-08-19",to="2021-01-01")

dim(GOOG)   
head(GOOG) 
tail(GOOG)
da=GOOG
chartSeries(GOOG,theme="white")
price=da[,6]

plot(price,type=1)
logprice=log(price)
plot(logprice,type=1)
logreturn=diff(log(price))
simplereturn <-exp(logreturn)-1

par(mfrow=c(2,1))
plot(logreturn,type='l')
plot(logprice)

table.Stats(simplereturn)

newlogreturn <-logreturn[2:nrow(logreturn),]
newsimplereturn <-simplereturn[2:nrow(simplereturn),]

par(mfrow=c(1,1))
hist(logreturn, breaks=100, col="slateblue")
chart.Histogram(logreturn,methods = c("add.normal"))
table.Stats(logreturn)

par(mfrow=c(1,1))
qqnorm(newlogreturn)
qqline(newlogreturn, col = 2)
jarque.bera.test(newlogreturn)

t.test(newlogreturn)


T=length(newlogreturn)
s3=skewness(newlogreturn)
tst = s3/sqrt(6/T)
tst
pv = (1-pnorm(tst))
pv


k4=kurtosis(newlogreturn)
tst=k4/sqrt(24/T)
tst
pv = 2*(1-pnorm(tst))
pv

