Use the given code below to answer the questions.
## Load package
library(tidyverse) # for cleaning, plotting, etc
library(tidyquant) # for financial analysis
## Import data
stocks <- tq_get("AAPL", get = "stock.prices", from = "2016-01-01")
stocks
## # A tibble: 1,092 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 98.2
## 2 AAPL 2016-01-05 106. 106. 102. 103. 55791000 95.8
## 3 AAPL 2016-01-06 101. 102. 99.9 101. 68457400 93.9
## 4 AAPL 2016-01-07 98.7 100. 96.4 96.4 81094400 89.9
## 5 AAPL 2016-01-08 98.6 99.1 96.8 97.0 70798000 90.4
## 6 AAPL 2016-01-11 99.0 99.1 97.3 98.5 49739400 91.9
## 7 AAPL 2016-01-12 101. 101. 98.8 100. 49154200 93.2
## 8 AAPL 2016-01-13 100. 101. 97.3 97.4 62439600 90.8
## 9 AAPL 2016-01-14 98.0 100. 95.7 99.5 63170100 92.8
## 10 AAPL 2016-01-15 96.2 97.7 95.4 97.1 79833900 90.6
## # … with 1,082 more rows
## Visualize
stocks %>%
ggplot(aes(x = date, y = close)) +
geom_line()
Hint: Insert a new code chunk below and type in the code, using the tq_get() function above. Replace the ticker symbol. Find ticker symbols from Yahoo Finance.
## Load package
library(tidyverse) # for cleaning, plotting, etc
library(tidyquant) # for financial analysis
## Import data
stocks <- tq_get("MSFT", get = "stock.prices", from = "2016-01-01")
stocks
## # A tibble: 1,092 x 8
## symbol date open high low close volume adjusted
## <chr> <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 MSFT 2016-01-04 54.3 54.8 53.4 54.8 53778000 50.4
## 2 MSFT 2016-01-05 54.9 55.4 54.5 55.0 34079700 50.6
## 3 MSFT 2016-01-06 54.3 54.4 53.6 54.0 39518900 49.7
## 4 MSFT 2016-01-07 52.7 53.5 52.1 52.2 56564900 48.0
## 5 MSFT 2016-01-08 52.4 53.3 52.2 52.3 48754000 48.1
## 6 MSFT 2016-01-11 52.5 52.8 51.5 52.3 36943800 48.1
## 7 MSFT 2016-01-12 52.8 53.1 52.1 52.8 36095500 48.5
## 8 MSFT 2016-01-13 53.8 54.1 51.3 51.6 66883600 47.5
## 9 MSFT 2016-01-14 52 53.4 51.6 53.1 52381900 48.8
## 10 MSFT 2016-01-15 51.3 52.0 50.3 51.0 71820700 46.9
## # … with 1,082 more rows
## Visualize
stocks %>%
ggplot(aes(x = date, y = close)) +
geom_line()
Hint: Watch the video, “Basic Data Types”, in DataCamp: Introduction to R for Finance: Ch1 The Basics.
Logical data can be true false. Character data associates data with a given letter or symbol
Hint: Insert a new code chunk below and type in the code, using the ggplot() function above. Revise the code so that it maps adjusted to the y-axis, instead of close.
For more information on the ggplot() function, refer to Ch2 Introduction to ggplot2 in one of our e-textbooks, Data Visualization with R.
## Visualize
stocks %>%
ggplot(aes(x = date, y = adjusted)) +
geom_line()
2019 had a steady rise before dipping in February 2020 and then rising again
Hint: Insert a new code chunk below and type in the code, using the tq_get() function above. You may refer to the manual of the tidyquant r package. Or, simply Google the tq_get function and see examples of the function’s usage. Do this by using the tq_get() function once, not twice.
## Import data
stocks <- tq_get(c("MSFT", "AMZN"), get = "stock.prices", from = "2017-01-13", results = 'markup')
stocks
## # A tibble: 1,664 x 8
## symbol date open high low close volume adjusted
## <chr> <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 MSFT 2017-01-13 62.6 62.9 62.3 62.7 19422300 59.2
## 2 MSFT 2017-01-17 62.7 62.7 62.0 62.5 20664000 59.1
## 3 MSFT 2017-01-18 62.7 62.7 62.1 62.5 19670100 59.1
## 4 MSFT 2017-01-19 62.2 63.0 62.2 62.3 18451700 58.9
## 5 MSFT 2017-01-20 62.7 62.8 62.4 62.7 30213500 59.3
## 6 MSFT 2017-01-23 62.7 63.1 62.6 63.0 23097600 59.5
## 7 MSFT 2017-01-24 63.2 63.7 62.9 63.5 24672900 60.0
## 8 MSFT 2017-01-25 64.0 64.1 63.5 63.7 23672700 60.2
## 9 MSFT 2017-01-26 64.1 64.5 63.5 64.3 43554600 60.7
## 10 MSFT 2017-01-27 65.4 65.9 64.9 65.8 44818000 62.2
## # … with 1,654 more rows
Hint: Use message, echo and results in the chunk options. Refer to the RMarkdown Reference Guide.
Hint: Use echo and results in the chunk option. Note that this question only applies to the individual code chunk of Q6.