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: 120 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 110 more rows
Hint: In your interpretation, make sure to use all variables.
Row 2 of stock_returns is showing the stocks for Apple on January 5th, 2021. When the market opened up the price was 128.89 and when it closed it was 131.01. The data also displays the lowest and highest price for the day being 128.43 and 131.74. The volume of 97664900 shows how many stocks were in use that day, with the adjusted stock price being 130.8145. The final column shows the daily returns of Apple for January 5th, 2021.
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: 40 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 30 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.
Apple’s stocks started low but began to rise I think due to vaccinations being done and Apple being able to open more of their stores after some of them being locked down across the world. There were also crazy gains at struggling companies like GameStop, AMC Entertainment, and Blackberry that recently made Apple’s stocks drop in February.
Hint: See the code in 4.3.1 Bar chart (on summary statistics).
library(dplyr)
plotdata <- stock_returns %>%
group_by(symbol) %>%
summarize(mean_return = mean(daily.returns))
plotdata
## # A tibble: 3 x 2
## symbol mean_return
## * <chr> <dbl>
## 1 AAPL -0.000592
## 2 AMZN -0.000600
## 3 MSFT 0.00197
Hint: See the code in 4.3.1 Bar chart (on summary statistics). Use plotdata you created in Q5.
ggplot(plotdata,
aes(x = symbol,
y = mean_return)) +
geom_bar(stat = "identity")
Microsoft has the highest daily return and is expected to have the highest daily return recently due to many people working and going to school remotely from home because of the COVID-19 global pandemic.
Hint: Refer to the RMarkdown Reference Guide.