if (FALSE) {
data(sample_matrix)
sample.xts <- as.xts(sample_matrix)
# plot the Close
plot(sample.xts[,"Close"])
# plot a subset of the data
plot(sample.xts[,"Close"], subset = "2007-04-01/2007-06-31")
# function to compute simple returns
simple.ret <- function(x, col.name){
x[,col.name] / lag(x[,col.name]) - 1
}
# plot the close and add a panel with the simple returns
plot(sample.xts[,"Close"])
R <- simple.ret(sample.xts, "Close")
lines(R, type = "h", on = NA)
# add the 50 period simple moving average to panel 1 of the plot
library(TTR)
lines(SMA(sample.xts[,"Close"], n = 50), on = 1, col = "blue")
# add month end points to the chart
points(sample.xts[endpoints(sample.xts[,"Close"], on = "months"), "Close"],
col = "red", pch = 17, on = 1)
# add legend to panel 1
addLegend("topright", on = 1,
legend.names = c("Close", "SMA(50)"),
lty = c(1, 1), lwd = c(2, 1),
col = c("black", "blue", "red"))
}
Run the code above in your browser using DataLab