word_final_stock_analysis_project

7
######################## FINAL STOCK ANALYSIS SCRIPT ####################################### ### PRELIMINARIES ###################################################### install.packages("quantmod") install.packages("tseries") library(quantmod) library(tseries) ### PLOTS ###################################################### GSPC <-get.hist.quote(instrument = "GSPC", quote = c("Cl", "Vol")) head(GSPC) cat <-get.hist.quote(instrument = "cat",start = "2005-1-1", quote = c("Cl", "Vol")) aon <-get.hist.quote(instrument = "aon",start = "2005-1-1", quote = c("Cl", "Vol")) bll <-get.hist.quote(instrument = "bll",start = "2005-1-1", quote = c("Cl", "Vol")) gis <-get.hist.quote(instrument = "gis",start = "2005-1-1", quote = c("Cl", "Vol")) mkc <-get.hist.quote(instrument = "mkc",start = "2005-1-1", quote = c("Cl", "Vol")) plot(aon$Close,maType="SMA", main = "S&P 500 Stocks", ylim=c(0,150) ,col="red" ,type="l" ,lwd=0.5, pch=19 ,cex=0.6 ,xlab="Date" ,ylab="Stock Price (USD)") lines(bll$Close,col="blue",lwd=0.5) lines(cat$Close,col="green",lwd=0.5) lines(gis$Close,col="grey",lwd=0.5) lines(mkc$Close,col="cyan",lwd=0.5) legend("top",horiz=T,legend=c("AON","BLL","CAT","GIS","MKC"),col=c("red","blue","gr een","grey","cyan"),lty=1,bty="n") chartSeries(GSPC,order=1,up.col='green', name='S&P 500',theme="white") graphics.off() ### CORRELATION BETWEEN ADJUSTED PRICE AND VOLUME ############## ### S&P 500 -2007- CORRELATION COEFFICIENTS ########################################### GSPC3 <- get.hist.quote(instrument = "GSPC",start = "2007-1-1",end = "2007-10-30", quote = c("Ad", "Vol")) bll3 <- get.hist.quote(instrument = "bll",start = "2007-1-1",end = "2007-12-30",

Upload: louise-miller

Post on 08-Feb-2017

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: WORD_FINAL_STOCK_ANALYSIS_PROJECT

######################## FINAL STOCK ANALYSIS SCRIPT #######################################

### PRELIMINARIES ######################################################

install.packages("quantmod")install.packages("tseries")library(quantmod)library(tseries)

### PLOTS ######################################################

GSPC <-get.hist.quote(instrument = "GSPC", quote = c("Cl", "Vol")) head(GSPC)

cat <-get.hist.quote(instrument = "cat",start = "2005-1-1", quote = c("Cl", "Vol"))aon <-get.hist.quote(instrument = "aon",start = "2005-1-1", quote = c("Cl", "Vol"))bll <-get.hist.quote(instrument = "bll",start = "2005-1-1", quote = c("Cl", "Vol"))gis <-get.hist.quote(instrument = "gis",start = "2005-1-1", quote = c("Cl", "Vol"))mkc <-get.hist.quote(instrument = "mkc",start = "2005-1-1", quote = c("Cl", "Vol"))

plot(aon$Close,maType="SMA", main = "S&P 500 Stocks",ylim=c(0,150) ,col="red" ,type="l" ,lwd=0.5,pch=19 ,cex=0.6 ,xlab="Date" ,ylab="Stock Price (USD)")

lines(bll$Close,col="blue",lwd=0.5)lines(cat$Close,col="green",lwd=0.5)lines(gis$Close,col="grey",lwd=0.5)lines(mkc$Close,col="cyan",lwd=0.5)

legend("top",horiz=T,legend=c("AON","BLL","CAT","GIS","MKC"),col=c("red","blue","green","grey","cyan"),lty=1,bty="n")

chartSeries(GSPC,order=1,up.col='green', name='S&P 500',theme="white")graphics.off()

### CORRELATION BETWEEN ADJUSTED PRICE AND VOLUME ##############

### S&P 500 -2007- CORRELATION COEFFICIENTS ###########################################

GSPC3 <- get.hist.quote(instrument = "GSPC",start = "2007-1-1",end = "2007-10-30", quote = c("Ad", "Vol"))

bll3 <- get.hist.quote(instrument = "bll",start = "2007-1-1",end = "2007-12-30", quote = c("Ad", "Vol"))

cat3<- get.hist.quote(instrument = "cat",start = "2007-1-1",end = "2007-12-30", quote = c("Ad", "Vol"))

gis3 <- get.hist.quote(instrument = "gis",start = "2007-1-1",end = "2007-12-30", quote = c("Ad", "Vol"))

aon3 <- get.hist.quote(instrument = "aon",start = "2007-1-1",end = "2007-12-30", quote = c("Ad", "Vol"))

Page 2: WORD_FINAL_STOCK_ANALYSIS_PROJECT

mkc3 <- get.hist.quote(instrument = "mkc",start = "2007-1-1",end = "2007-12-30", quote = c("Ad", "Vol"))

fit <- lm(GSPC3$Ad ~ GSPC3$Volume, GSPC3) summary(fit) ### Corrolation -0.24 weak neg anova(fit) cor(GSPC3$Ad, GSPC3$Volume)plot(fit) fit <- lm(aon3$Ad ~ aon3$Volume, aon3) summary(fit) ### Corrolation 0.09 weak pos anova(fit) cor(aon3$Ad, aon3$Volume) fit <- lm(bll3$Ad ~ bll3$Volume, bll3) summary(fit) ### Corrolation 0.16 weak pos anova(fit) cor(bll3$Ad, bll3$Volume)

fit <- lm(cat3$Ad ~ cat3$Volume, cat3) summary(fit) ### Corrolation 0.05 weak pos anova(fit) cor(cat3$Ad, cat3$Volume)

fit <- lm(gis3$Ad ~ gis3$Volume, gis3) summary(fit) ### Corrolation -0.023 weak neg anova(fit) cor(gis3$Ad, gis3$Volume)

fit <- lm(mkc3$Ad ~ mkc3$Volume, mkc3) summary(fit) ### Corrolation -0.20 weak neg anova(fit) cor(mkc3$Ad, mkc3$Volume)

############################### S&P 2009 CORRELATION COEFFICIENT FOR ADJUSTED PRICE AND VOLUME #################################

GSPC4 <- get.hist.quote(instrument = "GSPC",start = "2009-1-1",end = "2009-10-30", quote = c("Ad", "Vol"))

bll4 <- get.hist.quote(instrument = "bll",start = "2009-1-1",end = "2009-12-30", quote = c("Ad", "Vol"))

cat4<- get.hist.quote(instrument = "cat",start = "2009-1-1",end = "2009-12-30", quote = c("Ad", "Vol"))

gis4 <- get.hist.quote(instrument = "gis",start = "2009-1-1",end = "2009-12-30", quote = c("Ad", "Vol"))

aon4 <- get.hist.quote(instrument = "aon",start = "2009-1-1",end = "2009-12-30", quote = c("Ad", "Vol"))

mkc4 <- get.hist.quote(instrument = "mkc",start = "2009-1-1",end = "2009-12-30", quote = c("Ad", "Vol"))

fit <- lm(GSPC4$Ad ~ GSPC4$Volume, GSPC4) summary(fit) ### Corrolation -0.078 weak neg anova(fit)

Page 3: WORD_FINAL_STOCK_ANALYSIS_PROJECT

cor(GSPC4$Ad, GSPC4$Volume) fit <- lm(aon4$Ad ~ aon4$Volume, aon4)summary(fit) ### Corrolation -0.27 weak neg anova(fit) cor(aon4$Ad, aon4$Volume) fit <- lm(bll4$Ad ~ bll4$Volume, bll4) summary(fit) ### Corrolation -0.5 med neg anova(fit) cor(bll4$Ad, bll4$Volume)

fit <- lm(cat4$Ad ~ cat4$Volume, cat4) summary(fit) ### Corrolation -0.50 med neg anova(fit) cor(cat4$Ad, cat4$Volume)

fit <- lm(gis4$Ad ~ gis4$Volume, gis4) summary(fit) ### Corrolation -0.50 med neg anova(fit) cor(gis4$Ad, gis4$Volume)

fit <- lm(mkc4$Ad ~ mkc4$Volume, mkc4) summary(fit) ### Corrolation -0.4 med neg anova(fit)

################################# Beta 2009-2010 ###############################################

prices2returns <- function(x) 100*diff(log(x))

s_p <- get.hist.quote(instrument = "GSPC", start = "2009-01-01", end = "2010-12-31", compression = "m", quote = "Ad")s_ps_preturns <- prices2returns(s_p)s_preturns

bll <- get.hist.quote(instrument = "bll", start = "2009-01-01", end = "2010-12-31",compression = "m", quote = "Ad")bllbllreturns <- prices2returns(bll)bllreturns

cov_bll <- cov(s_preturns,bllreturns) ### BETA FOR BLL IS 0.09var_s_p <- var(s_preturns) ### POSITIVE BETA INDICATES beta_bll <- cov_ibm/var_s_p ### THAT THIS STOCK IS MOVING WITH THE S&P 500 INDEX beta_bll

bll.lm = lm(s_preturns ~ bllreturns) summary(bll.lm)$r.squared ### BLL R.SQ = 0.02

cat <- get.hist.quote(instrument = "cat", start = "2009-01-01", end = "2010-12-31",compression = "m", quote = "Ad")

catreturns <- prices2returns(cat)

Page 4: WORD_FINAL_STOCK_ANALYSIS_PROJECT

cov_cat <- cov(s_preturns,catreturns) ### BETA FOR CAT IS 0.68var_s_p <- var(s_preturns) ### POSITIVE BETA INDICATESbeta_cat <- cov_cat/var_s_p ### THAT THIS STOCK IS MOVING WITH THE S&P 500beta_cat

cat.lm = lm(s_preturns ~ catreturns) summary(cat.lm)$r.squared ### CAT R.SQ = 0.16

gis <- get.hist.quote(instrument = "gis", start = "2009-01-01", end = "2010-12-31",compression = "m", quote = "Ad")

gisreturns <- prices2returns(gis)

cov_gis <- cov(s_preturns,gisreturns) ### BETA FOR GIS IS 0.41var_s_p <- var(s_preturns) ### POSITIVE BETA INDICATESbeta_gis <- cov_gis/var_s_p ### THAT THIS STOCK IS MOVING WITH THE S&P 500beta_gis

gis.lm = lm(s_preturns ~ gisreturns) summary(gis.lm)$r.squared ### GIS R.SQ = 0.09

aon <- get.hist.quote(instrument = "aon", start = "2009-01-01", end = "2010-12-31",compression = "m", quote = "Ad")

aonreturns <- prices2returns(aon)

cov_aon <- cov(s_preturns,aonreturns) ### BETA FOR AON IS -0.10var_s_p <- var(s_preturns) ### NEGATIVE BETA INDICATESbeta_aon <- cov_aon/var_s_p ### THAT THIS STOCK IS NOT MOVING WITH THE S&P 500beta_aon

aon.lm = lm(s_preturns ~ aonreturns) summary(aon.lm)$r.squared ### AON R.SQ = 0.01

mkc <- get.hist.quote(instrument = "mkc", start = "2009-01-01", end = "2010-12-31",compression = "m", quote = "Ad")

mkcreturns <- prices2returns(mkc)

cov_mkc <- cov(s_preturns,mkcreturns) ### BETA FOR MKC IS 0.300var_s_p <- var(s_preturns) ### POSITIVE BETA INDICATESbeta_mkc <- cov_mkc/var_s_p ### THAT THIS STOCK IS MOVING WITH THE S&P 500beta_mkc

mkc.lm = lm(s_preturns ~ mkcreturns)summary(mkc.lm)$r.squared ### MKC R.SQ = 0.05

################################# Beta 2013-2014 ###############################################

Page 5: WORD_FINAL_STOCK_ANALYSIS_PROJECT

prices2returns <- function(x) 100*diff(log(x))

s_p <- get.hist.quote(instrument = "GSPC", start = "2013-01-01", end = "2014-12-31", compression = "m", quote = "Ad")s_ps_preturns <- prices2returns(s_p)s_preturns

bll <- get.hist.quote(instrument = "bll", start = "2013-01-01", end = "2014-12-31",compression = "m", quote = "Ad")bllbllreturns <- prices2returns(bll)bllreturns

cov_bll <- cov(s_preturns,bllreturns) ### BETA FOR BLL IS 0.09var_s_p <- var(s_preturns) ### POSITIVE BETA INDICATES beta_bll <- cov_ibm/var_s_p ### THAT THIS STOCK IS MOVING WITH THE S&P 500 INDEX beta_bll

bll.lm = lm(s_preturns ~ bllreturns) summary(bll.lm)$r.squared ### BLL R.SQ.= 0.02

cat <- get.hist.quote(instrument = "cat", start = "2013-01-01", end = "2014-12-31",compression = "m", quote = "Ad")

catreturns <- prices2returns(cat)

cov_cat <- cov(s_preturns,catreturns) ### BETA FOR CAT IS 0.68var_s_p <- var(s_preturns) ### POSITIVE BETA INDICATESbeta_cat <- cov_cat/var_s_p ### THAT THIS STOCK IS MOVING WITH THE S&P 500beta_cat

cat.lm = lm(s_preturns ~ catreturns) summary(cat.lm)$r.squared ### CAT R.SQ = 0.16

gis <- get.hist.quote(instrument = "gis", start = "2013-01-01", end = "2014-12-31",compression = "m", quote = "Ad")

gisreturns <- prices2returns(gis)

cov_gis <- cov(s_preturns,gisreturns) ### BETA FOR GIS IS 0.41var_s_p <- var(s_preturns) ### POSITIVE BETA INDICATESbeta_gis <- cov_gis/var_s_p ### THAT THIS STOCK IS MOVING WITH THE S&P 500beta_gis

gis.lm = lm(s_preturns ~ gisreturns) summary(gis.lm)$r.squared ### GIS R.SQ = 0.04

aon <- get.hist.quote(instrument = "aon", start = "2013-01-01", end = "2014-12-

Page 6: WORD_FINAL_STOCK_ANALYSIS_PROJECT

31",compression = "m", quote = "Ad")

aonreturns <- prices2returns(aon)

cov_aon <- cov(s_preturns,aonreturns) ### BETA FOR AON IS -0.31var_s_p <- var(s_preturns) ### NEGATIVE BETA INDICATESbeta_aon <- cov_aon/var_s_p ### THAT THIS STOCK IS NOT MOVING WITH THE S&P 500beta_aon

aon.lm = lm(s_preturns ~ aonreturns) summary(aon.lm)$r.squared ### AON R.SQ = 0.01

mkc <- get.hist.quote(instrument = "mkc", start = "2013-01-01", end = "2014-12-31",compression = "m", quote = "Ad")

mkcreturns <- prices2returns(mkc)

cov_mkc <- cov(s_preturns,mkcreturns) ### BETA FOR MKC IS 0.300var_s_p <- var(s_preturns) ### POSITIVE BETA INDICATESbeta_mkc <- cov_mkc/var_s_p ### THAT THIS STOCK IS MOVING WITH THE S&P 500beta_mkc

mkc.lm = lm(s_preturns ~ mkcreturns) summary(mkc.lm)$r.squared ### MKC R.SQ = 0.05