Embed URL

HTTPS clone URL

SSH clone URL

You can clone with HTTPS or SSH.

Download Gist

emerging as low vol when compared to sp500

View emerging as low vol when compared to sp500.r
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
require(quantmod)
require(PerformanceAnalytics)
 
getSymbols("VEIEX",from = "1900-01-01") #use VEIEX Vanguard Emerging as proxy for emerging mkt stocks
getSymbols("VFINX",from = "1900-01-01") #use VFINX Vanguard SP500 as proxy for SP500
 
#get 1 day change for the emerging and sp500
roc <- na.omit(merge(ROC(VEIEX[,6],type="discrete",n=1),ROC(VFINX[,6],type="discrete",n=1)))
stdev <- rollapplyr(roc,FUN=sd,width=50)
#get relative strength of emerging versus S&P 500
rs <- VEIEX[,6]/VFINX[,6]
 
#do some trial graphs to see the interaction
plot.zoo(merge(stdev[,1]-stdev[,2],rs))
plot.zoo(merge(stdev[,1]-stdev[,2]/rs,rs))
plot.zoo(merge(stdev[,1]/stdev[,2],rs,VEIEX[,6]))
 
#create a PerformanceAnalytics rolling summary of emerging versus the S&P 500
charts.RollingRegression(roc[,1],roc[,2],width=250,main="")
title(main="Vanguard Emerging compared to the Vanguard S&P 500 (Rolling 1 Year)",outer=TRUE, line=-1.5, adj=0.05, cex.main=0.85)
 
#use colors provided in xblocks documentation
rgb <- hcl(c(0, 0, 260), c = c(100, 0, 100), l = c(50, 90, 50), alpha = 0.2)
plot.zoo(VEIEX[,6], #plot closing price of emerging
bty="n", #no box; will fill in later with abline
las=1, #no rotation on y axis labels
xlab = NA,
ylab = NA)
xblocks(index(VEIEX[,6]), as.vector(stdev[,1]-stdev[,2]/rs > - 0.075),col = rgb[3]) #admittedly the -0.075 is ex-post
#connect the axes
abline(h=par("usr")[3]) #extend y axis
abline(v=par("usr")[1]) #extend x axis
abline(h=pretty(par("yaxp")),lty=1,lwd=2,col="white") #try something new for gridlines
title(main="Vanguard Emerging VEIEX (source: Yahoo! Finance)",outer=TRUE, line=-2, adj=0.05)
mtext("blocks denote periods where Emerging 50 day sd low compared to S&P 500 sd",side=3,adj=0.05,cex=0.7,font=3, line=-1.5)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.