Zacznij terazZacznij za darmo

Pakiet tidyquant

Pakiet tidyquant służy do pobierania, przetwarzania i skalowania analizy danych finansowych w możliwie najprostszy sposób. Aby zacząć z niego korzystać, musisz go najpierw zainstalować.

install.packages("tidyquant")

To pobiera pakiet na twój komputer. Następnie wczytaj go do bieżącej sesji R, dzięki czemu uzyskasz dostęp do wszystkich funkcji pakietu.

library(tidyquant)

Te dwa kroki – instalacja i wczytanie – są niezbędne w przypadku każdego pakietu dostępnego w repozytorium CRAN.

Kod ćwiczenia jest już gotowy. Zapoznasz się z kilkoma funkcjami pakietu tidyquant przydatnymi w analizie finansowej.

To ćwiczenie jest częścią kursu

R dla finansów – poziom średnio zaawansowany

Zobacz kurs

Instrukcje do ćwiczenia

Kod jest już napisany, ale poniższe instrukcje przeprowadzą cię przez kolejne kroki.

  • Najpierw wczytaj pakiet, aby uzyskać dostęp do jego funkcji.
  • Użyj funkcji tq_get() z pakietu tidyquant, aby pobrać dane o cenach akcji Apple.
  • Przyjrzyj się zwróconej ramce danych.
  • Narysuj wykres ceny akcji w czasie.
  • Oblicz dzienne stopy zwrotu dla skorygowanej ceny akcji za pomocą tq_mutate(). Ta funkcja „mutuje" ramkę danych, dodając do niej nową kolumnę – w tym przypadku z dziennymi stopami zwrotu.
  • Posortuj stopy zwrotu.
  • Narysuj wykres posortowanych stóp zwrotu. Możesz zobaczyć, że Apple miał kilka dni ze stratami przekraczającymi 10% oraz wiele dni z zyskami powyżej 5%.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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)
Edytuj i uruchom kod