# Load packages
# Core
library(tidyverse)
library(tidyquant)
Take raw prices of five individual stocks and transform them into monthly returns five stocks: “SPY”, “EFA”, “IJS”, “EEM”, “AGG”
# Choose stocks
symbols <- c("SPY", "EFA", "IJS", "EEM", "AGG")
prices <- tq_get(x = symbols,
get = "stock.prices",
from = "2012-12-31",
to = "2017-12-31")
asset_returns_tbl <- prices %>%
group_by(symbol) %>%
tq_transmute(select = adjusted,
mutate_fun = periodReturn,
period = "monthly",
type = "log") %>%
ungroup() %>%
set_names(c("asset", "date", "returns"))
asset_returns_tbl %>%
ggplot(aes(x = returns)) +
geom_density(aes(color = asset), show.legend = FALSE, alpha =1) +
geom_histogram(aes(fill = asset), show.legend = FALSE, alpha = 0.3,binwidth = 0.01) +
facet_wrap(~asset,ncol = 1) +
labs(title = "Distribution of monthly returns 2012-2016",
y = "freqeuncy",
x = "rate of returns",
caption = "A typic montly return is higher for SPY and IJS than for AGG, EEM and EFA")