Using the given code, answer the questions below.
library(tidyquant)
library(tidyverse)
stocks <- tq_get("AAPL", get = "stock.prices", from = "2016-01-01")
stocks
## # A tibble: 782 x 7
## date open high low close volume adjusted
## <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2016-01-04 103. 105. 102 105. 67649400 99.5
## 2 2016-01-05 106. 106. 102. 103. 55791000 97.0
## 3 2016-01-06 101. 102. 99.9 101. 68457400 95.1
## 4 2016-01-07 98.7 100. 96.4 96.4 81094400 91.1
## 5 2016-01-08 98.6 99.1 96.8 97.0 70798000 91.6
## 6 2016-01-11 99.0 99.1 97.3 98.5 49739400 93.1
## 7 2016-01-12 101. 101. 98.8 100.0 49154200 94.4
## 8 2016-01-13 100. 101. 97.3 97.4 62439600 92.0
## 9 2016-01-14 98.0 100. 95.7 99.5 63170100 94.0
## 10 2016-01-15 96.2 97.7 95.4 97.1 79010000 91.7
## # ... with 772 more rows
stocks %>%
ggplot(aes(x = date, y = close)) +
geom_line()
There are 7 variables.
The variables are: date, open, high, low, close, volume, and adjusted.
stocks_2 <- tq_get(c("AAPL", "MSFT"), get = "stock.prices", from = "2016-01-01")
stocks
## # A tibble: 782 x 7
## date open high low close volume adjusted
## <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2016-01-04 103. 105. 102 105. 67649400 99.5
## 2 2016-01-05 106. 106. 102. 103. 55791000 97.0
## 3 2016-01-06 101. 102. 99.9 101. 68457400 95.1
## 4 2016-01-07 98.7 100. 96.4 96.4 81094400 91.1
## 5 2016-01-08 98.6 99.1 96.8 97.0 70798000 91.6
## 6 2016-01-11 99.0 99.1 97.3 98.5 49739400 93.1
## 7 2016-01-12 101. 101. 98.8 100.0 49154200 94.4
## 8 2016-01-13 100. 101. 97.3 97.4 62439600 92.0
## 9 2016-01-14 98.0 100. 95.7 99.5 63170100 94.0
## 10 2016-01-15 96.2 97.7 95.4 97.1 79010000 91.7
## # ... with 772 more rows
stocks_2
## # A tibble: 1,564 x 8
## symbol date open high low close volume adjusted
## <chr> <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 AAPL 2016-01-04 103. 105. 102 105. 67649400 99.5
## 2 AAPL 2016-01-05 106. 106. 102. 103. 55791000 97.0
## 3 AAPL 2016-01-06 101. 102. 99.9 101. 68457400 95.1
## 4 AAPL 2016-01-07 98.7 100. 96.4 96.4 81094400 91.1
## 5 AAPL 2016-01-08 98.6 99.1 96.8 97.0 70798000 91.6
## 6 AAPL 2016-01-11 99.0 99.1 97.3 98.5 49739400 93.1
## 7 AAPL 2016-01-12 101. 101. 98.8 100.0 49154200 94.4
## 8 AAPL 2016-01-13 100. 101. 97.3 97.4 62439600 92.0
## 9 AAPL 2016-01-14 98.0 100. 95.7 99.5 63170100 94.0
## 10 AAPL 2016-01-15 96.2 97.7 95.4 97.1 79010000 91.7
## # ... with 1,554 more rows
There are 8 variables. The new variable is Symbol.
Hint: Use dplyr::mutate. Market cap is given by the formula, MC = N × P, where MC is the market capitalization, N is the number of shares outstanding, and P is the closing price per share.
stocks <- stocks_2 %>% mutate(mc = volume * close)
stocks
## # A tibble: 1,564 x 9
## symbol date open high low close volume adjusted mc
## <chr> <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 AAPL 2016-01-04 103. 105. 102 105. 67649400 99.5 7126864155.
## 2 AAPL 2016-01-05 106. 106. 102. 103. 55791000 97.0 5730293554.
## 3 AAPL 2016-01-06 101. 102. 99.9 101. 68457400 95.1 6893659975.
## 4 AAPL 2016-01-07 98.7 100. 96.4 96.4 81094400 91.1 7821554637.
## 5 AAPL 2016-01-08 98.6 99.1 96.8 97.0 70798000 91.6 6864574009.
## 6 AAPL 2016-01-11 99.0 99.1 97.3 98.5 49739400 93.1 4900823032.
## 7 AAPL 2016-01-12 101. 101. 98.8 100.0 49154200 94.4 4913453783.
## 8 AAPL 2016-01-13 100. 101. 97.3 97.4 62439600 92.0 6080992582.
## 9 AAPL 2016-01-14 98.0 100. 95.7 99.5 63170100 94.0 6286688162.
## 10 AAPL 2016-01-15 96.2 97.7 95.4 97.1 79010000 91.7 7674241063.
## # ... with 1,554 more rows
stocks %>% select(symbol, date, close, mc)
## # A tibble: 1,564 x 4
## symbol date close mc
## <chr> <date> <dbl> <dbl>
## 1 AAPL 2016-01-04 105. 7126864155.
## 2 AAPL 2016-01-05 103. 5730293554.
## 3 AAPL 2016-01-06 101. 6893659975.
## 4 AAPL 2016-01-07 96.4 7821554637.
## 5 AAPL 2016-01-08 97.0 6864574009.
## 6 AAPL 2016-01-11 98.5 4900823032.
## 7 AAPL 2016-01-12 100.0 4913453783.
## 8 AAPL 2016-01-13 97.4 6080992582.
## 9 AAPL 2016-01-14 99.5 6286688162.
## 10 AAPL 2016-01-15 97.1 7674241063.
## # ... with 1,554 more rows
Hint: Use ggplot2::ggplot.
stocks %>%
ggplot(aes(x = date, y = close, colour = symbol)) +
geom_line()