# 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-01-01",
to = "2017-01-01")
asset_returns_tbl <- prices %>%
group_by(symbol) %>%
tq_transmute(select = adjusted,
mutate_fun = periodReturn,
period = "monthly",
type = "log") %>%
set_names(c("asset", "date", "returns"))
asset_returns_tbl %>%
ggplot(aes(x = returns)) +
geom_density(aes(color = asset), alpha = 1) +
geom_histogram(aes(fill = asset), show.legend = FALSE, alpha = 0.3, binwidth = 0.01) +
facet_wrap(~asset, ncol = 1)
# Labeling
labs(title = "Distribution of monthly returns, 2012-2017",
y = "frequency",
x = "Rate of Returns",
caption = "A typical monthly return is higher for SPY and IJS than for AGG, EEM, and EFA")
## $y
## [1] "frequency"
##
## $x
## [1] "Rate of Returns"
##
## $title
## [1] "Distribution of monthly returns, 2012-2017"
##
## $caption
## [1] "A typical monthly return is higher for SPY and IJS than for AGG, EEM, and EFA"
##
## attr(,"class")
## [1] "labels"