data = read.csv("bovespa-2010-2012.csv",header=TRUE) attach(data) ind = names(data)[2:126] price = data[,2:126] r = 100*(exp(apply(log(price),2,diff))-1) p = ncol(r) pdf(file="returns0.pdf",width=24,height=12) par(mfrow=c(4,8)) for (i in 1:p) ts.plot(r[,i],ylab="",main=paste(i," - ",ind[i],sep="")) dev.off() r = r[,-c(6,67,70,88,115,116,119)] ind = ind[-c(6,67,70,88,115,116,119)] p = ncol(r) pdf(file="returns1.pdf",width=24,height=12) par(mfrow=c(4,8)) for (i in 1:p) ts.plot(r[,i],ylab="",main=ind[i]) dev.off() pdf(file="returns2.pdf",width=24,height=12) par(mfrow=c(4,8)) for (i in 1:p) ts.plot(r[,i],ylab="",main=ind[i],ylim=range(r)) dev.off() t0=c(1,seq(1,495,by=22)) t1=c(495,seq(23,495,by=22),495) corrs1 = NULL pdf(file="correlations.pdf",width=15,height=10) par(mfrow=c(3,4)) for (k in 1:24){ corr = cor(r[t0[k]:t1[k],]) corrs = NULL for (i in 1:(p-1)) for (j in (i+1):p){ corrs = c(corrs,corr[i,j]) } pcor = round(100*mean(corr>=0.5),2) corrs1 = cbind(corrs1,corrs) hist(corrs,xlab="Correlations",prob=TRUE,main="", breaks=seq(min(corrs),max(corrs),length=20),xlim=c(-1,1),ylim=c(0,4)) title(paste(data[t0[k],1],"-",data[t1[k],1],"\n%corr > 0.5 = ",pcor,sep="")) } dev.off() boxplot(corrs1,outline=FALSE,ylim=c(-1,1),names=1:length(t0))