REQUIRE package “Quantmod” to be installed

Download data for last 1 year for the S&P500 and 10 components from Yahoo

SP500_url <- "http://chart.finance.yahoo.com/table.csv?s=^GSPC&a=8&b=6&c=2015&d=8&e=6&f=2016&g=d&ignore=.csv"
my_10_com <-c("MMM","AXP","AAPL","BA","CAT","CVX","CSCO","KO","DIS","DD" )

yahoo.read<- function(url){
  dat <- read.table(url, header=TRUE, sep = ",")
  df <- dat[,c(1,5)]
  df$Date <- as.Date(as.character(df$Date))
  return (df)
}
SP500 <- yahoo.read(SP500_url)
SP_m  <- monthlyReturn(xts(SP500$Close, SP500$Date))
SP_m
##            monthly.returns
## 2015-09-30   -0.0250735013
## 2015-10-30    0.0829831178
## 2015-11-30    0.0005048693
## 2015-12-31   -0.0175301852
## 2016-01-29   -0.0507353220
## 2016-02-29   -0.0041283604
## 2016-03-31    0.0659911146
## 2016-04-29    0.0026993985
## 2016-05-31    0.0153246024
## 2016-06-30    0.0009109211
## 2016-07-29    0.0356098011
## 2016-08-31   -0.0012192431
## 2016-09-02    0.0041594828

Calculate daily returns of the S&P500 index and the downloaded stocks over the period under study

m_return <-SP_m
for (i in 1:10){
  url <- paste("http://chart.finance.yahoo.com/table.csv?s=",my_10_com[i],"&a=8&b=6&c=2015&d=8&e=6&f=2016&g=d&ignore=.csv")
  read_data <- yahoo.read(url)
  test<-monthlyReturn(xts(read_data$Close, read_data$Date))
  m_return <- merge(m_return, test)
}

m_return
##            monthly.returns monthly.returns.1 monthly.returns.2
## 2015-09-30   -0.0250735013      -0.011573514      -0.018015645
## 2015-10-30    0.0829831178       0.108908814      -0.011736072
## 2015-11-30    0.0005048693      -0.004007410      -0.022113062
## 2015-12-31   -0.0175301852      -0.037935898      -0.029173591
## 2016-01-29   -0.0507353220       0.002389810      -0.230769264
## 2016-02-29   -0.0041283604       0.038874139       0.038878542
## 2016-03-31    0.0659911146       0.062217188       0.104713922
## 2016-04-29    0.0026993985       0.004500990       0.065635144
## 2016-05-31    0.0153246024       0.005615975       0.005043589
## 2016-06-30    0.0009109211       0.040399167      -0.076034122
## 2016-07-29    0.0356098011       0.018501634       0.060895344
## 2016-08-31   -0.0012192431       0.004933864       0.017375163
## 2016-09-02    0.0041594828       0.008759166      -0.005946935
##            monthly.returns.3 monthly.returns.4 monthly.returns.5
## 2015-09-30      -0.017896848      -0.021446793      -0.120323037
## 2015-10-30       0.083408855       0.130737002       0.116738018
## 2015-11-30      -0.010041816      -0.017694400      -0.004658118
## 2015-12-31      -0.110228239      -0.005912692      -0.064556130
## 2016-01-29      -0.075242313      -0.169167990      -0.084167114
## 2016-02-29      -0.006677563      -0.016232390       0.087724853
## 2016-03-31       0.127210629       0.074124234       0.130576136
## 2016-04-29      -0.139921096       0.061919024       0.015416775
## 2016-05-31       0.065286997      -0.064169145      -0.067035498
## 2016-06-30      -0.042659753       0.029488648       0.045510908
## 2016-07-29       0.090062774       0.029183100       0.091676615
## 2016-08-31       0.018136446      -0.031497882      -0.009787397
## 2016-09-02       0.015362913       0.013209788      -0.003172605
##            monthly.returns.6 monthly.returns.7 monthly.returns.8
## 2015-09-30       0.026548687      -0.001901103       0.031362389
## 2015-10-30       0.152129823       0.099047619       0.055583227
## 2015-11-30       0.004841582      -0.055459272       0.006375467
## 2015-12-31      -0.014892696      -0.003302752       0.007977476
## 2016-01-29      -0.038794998      -0.124079492      -0.000931122
## 2016-02-29      -0.035041043       0.100462333       0.004892894
## 2016-03-31       0.143336526       0.087471314       0.075585391
## 2016-04-29       0.071069160      -0.034422165      -0.034274629
## 2016-05-31      -0.011548248       0.056747872      -0.004464308
## 2016-06-30       0.037920812      -0.012392358       0.016367803
## 2016-07-29      -0.022417237       0.064133842      -0.037502778
## 2016-08-31      -0.018540212       0.029806746      -0.004584025
## 2016-09-02       0.003479797       0.012404548       0.005295878
##            monthly.returns.9 monthly.returns.10
## 2015-09-30     -0.0174022206       -0.028421689
## 2015-10-30      0.1129158644        0.315352711
## 2015-11-30     -0.0023738087        0.062145014
## 2015-12-31     -0.0739402391       -0.010988982
## 2016-01-29     -0.0881233520       -0.207807814
## 2016-02-29     -0.0031309017        0.153714960
## 2016-03-31      0.0396775662        0.040249730
## 2016-04-29      0.0397744847        0.040903411
## 2016-05-31     -0.0391245489       -0.007586102
## 2016-06-30     -0.0141100684       -0.009325806
## 2016-07-29     -0.0191167757        0.067438191
## 2016-08-31     -0.0155289010        0.006216568
## 2016-09-02     -0.0004234703        0.007040201