filter Select Apple stock prices and save it under plotdata.In this exercise, use Chapter 4.2 Quantitative vs. Quantitative Data Visualization with R.
# Load packages
library(tidyquant)
library(tidyverse)
# Import stock prices
stock_prices <- tq_get(c("AAPL", "MSFT", "AMZN"), get = "stock.prices", from = "2021-01-01")
# Calculate daily returns
stock_returns <-
stock_prices %>%
group_by(symbol) %>%
tq_mutate(select = adjusted, mutate_fun = periodReturn, period = "daily")
stock_returns
## # A tibble: 123 x 9
## # Groups: symbol [3]
## symbol date open high low close volume adjusted daily.returns
## <chr> <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 AAPL 2021-01-04 134. 134. 127. 129. 143301900 129. 0
## 2 AAPL 2021-01-05 129. 132. 128. 131. 97664900 131. 0.0124
## 3 AAPL 2021-01-06 128. 131. 126. 127. 155088000 126. -0.0337
## 4 AAPL 2021-01-07 128. 132. 128. 131. 109578200 131. 0.0341
## 5 AAPL 2021-01-08 132. 133. 130. 132. 105158200 132. 0.00863
## 6 AAPL 2021-01-11 129. 130. 128. 129. 100620900 129. -0.0232
## 7 AAPL 2021-01-12 128. 130. 127. 129. 91951100 129. -0.00140
## 8 AAPL 2021-01-13 129. 131. 128. 131. 88636800 131. 0.0162
## 9 AAPL 2021-01-14 131. 131 129. 129. 90221800 129. -0.0151
## 10 AAPL 2021-01-15 129. 130. 127 127. 111598500 127. -0.0137
## # ... with 113 more rows
Hint: In your interpretation, make sure to use all variables.
When interpreting row 2, you can see that the Apple stock price on 1/5/2021 opened at $128.89, had a high of $131.74, a low of $128.43, and closed at $131.01. The volume that day was 97664900 shares and the adjusted price was $130.8145. Finally, the daily return was 0.0123636673.
filter Select Apple stock prices and save it under plotdata.Hint: See the code in 4.2.2 Line plot.
plotdata <- filter(stock_prices,
symbol == "AAPL")
plotdata
## # A tibble: 41 x 8
## symbol date open high low close volume adjusted
## <chr> <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 AAPL 2021-01-04 134. 134. 127. 129. 143301900 129.
## 2 AAPL 2021-01-05 129. 132. 128. 131. 97664900 131.
## 3 AAPL 2021-01-06 128. 131. 126. 127. 155088000 126.
## 4 AAPL 2021-01-07 128. 132. 128. 131. 109578200 131.
## 5 AAPL 2021-01-08 132. 133. 130. 132. 105158200 132.
## 6 AAPL 2021-01-11 129. 130. 128. 129. 100620900 129.
## 7 AAPL 2021-01-12 128. 130. 127. 129. 91951100 129.
## 8 AAPL 2021-01-13 129. 131. 128. 131. 88636800 131.
## 9 AAPL 2021-01-14 131. 131 129. 129. 90221800 129.
## 10 AAPL 2021-01-15 129. 130. 127 127. 111598500 127.
## # ... with 31 more rows
Hint: See the code in 4.2.2 Line plot. Use plotdata you created in Q3.
ggplot(plotdata,
aes(x = date,
y = open)) +
geom_line()
Hint: Interpret the line plot you created in Q4.
Based off of the opening price of Apple, their performance started high but has declined during the year.
Hint: See the code in 4.3.1 Bar chart (on summary statistics).
plotdata <- stock_returns %>%
group_by(symbol) %>%
summarize(mean_returns = mean(daily.returns))
plotdata
## # A tibble: 3 x 2
## symbol mean_returns
## * <chr> <dbl>
## 1 AAPL -0.00117
## 2 AMZN -0.00129
## 3 MSFT 0.00126
Hint: See the code in 4.3.1 Bar chart (on summary statistics). Use plotdata you created in Q5.
I would expect Microsoft to to have the highest daily return.
ggplot(plotdata,
aes(x = symbol,
y = mean_returns)) +
geom_bar(stat = "identity")
Hint: Refer to the RMarkdown Reference Guide.