tidyquant-pakket
Het tidyquant-pakket is gericht op het ophalen, bewerken en opschalen van financiële data-analyse op de eenvoudigst mogelijke manier. Om met het tidyquant-pakket te werken, moet je het eerst installeren.
install.packages("tidyquant")
Dit zet het op je lokale computer. Vervolgens moet je het in je huidige R-sessie laden. Zo krijg je toegang tot alle functies in het pakket.
library(tidyquant)
Deze stappen van installeren en het laden van packages zijn nodig voor elk CRAN-pakket dat je wilt gebruiken.
De oefencode is al voor je geschreven. Je gaat enkele functies verkennen die tidyquant biedt voor financiële analyse.
Deze oefening maakt deel uit van de cursus
R voor finance voor gevorderden
Oefeninstructies
De code is al geschreven, maar deze instructies leiden je stap voor stap door het proces.
- Laad eerst het pakket om toegang te krijgen tot de functies.
- Gebruik de
tidyquant-functietq_get()om de aandelenkoersgegevens van Apple op te halen. - Bekijk de data frame die wordt teruggegeven.
- Plot de aandelenkoers in de tijd.
- Bereken de dagelijkse rendementen voor de aangepaste aandelenkoers met
tq_mutate(). Deze functie “muteert” je data frame door er een nieuwe kolom aan toe te voegen. Hier is die nieuwe kolom de dagelijkse rendementen. - Sorteer de rendementen.
- Plot de gesorteerde rendementen. Je ziet dat Apple een paar dagen had met verliezen >10% en een aantal dagen met winsten van >5%.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Library tidquant
library(tidyquant)
# Pull Apple stock data
apple <- tq_get("AAPL", get = "stock.prices",
from = "2007-01-03", to = "2017-06-05")
# Take a look at what it returned
head(apple)
# Plot the stock price over time
plot(apple$date, apple$adjusted, type = "l")
# Calculate daily stock returns for the adjusted price
apple <- tq_mutate(data = apple,
select = "adjusted",
mutate_fun = dailyReturn)
# Sort the returns from least to greatest
sorted_returns <- sort(apple$daily.returns)
# Plot them
plot(sorted_returns)