Agrégation vers une fréquence plus basse

Importer et gérer des données financières dans R

Joshua Ulrich

Quantitative Analyst & quantmod Co-Author and Maintainer

Données à basse fréquence

  • Les horodatages ont une résolution trop fine
  • Représenter le premier trimestre de 2017
    • "2017-01-01" (début)
    • "2017-03-31" (fin)
    • "2017-02-01" (milieu)
Importer et gérer des données financières dans R

Exemple

  • Comparer le taux quotidien à 10 ans du Trésor (échéance constante) au PIB des États‑Unis (trimestriel)
  • Symboles FRED :
    • DGS10
    • GDP
Importer et gérer des données financières dans R

Fusionner des données agrégées avec des données à basse fréquence

# Agréger par trimestre
QGS10 <- apply.quarterly(DGS10, median, na.rm = TRUE)

# Fusionner l'agrégat trimestriel avec le PIB trimestriel QGS10_GDP <- merge(QGS10, GDP) QGS10_GDP
           DGS10     GDP
2015-01-01    NA 17783.6
2015-03-31  1.97      NA
2015-04-01    NA 17998.3
2015-06-30  2.19      NA
2015-07-01    NA 18141.9
2015-09-30  2.20      NA
2015-10-01    NA 18222.8
2015-12-31  2.23      NA
Importer et gérer des données financières dans R

Classes date-heure à basse fréquence

  • yearmon() pour les données mensuelles
  • yearqtr() pour les données trimestrielles
as.Date("2017-01-01")
"2017-01-01"
as.yearmon("2017-01-01")
"Jan 2017"
as.yearqtr("2017-01-01")
"2017 Q1"
Importer et gérer des données financières dans R

Convertir l'index à la plus basse fréquence

# Convertir les deux index en yearqtr
index(QGS10) <- as.yearqtr(index(QGS10))
index(GDP) <- as.yearqtr(index(GDP))
# La fusion « juste fonctionne »
merge(QGS10, GDP)
        DGS10     GDP
2015 Q1  1.97 17783.6
2015 Q2  2.19 17998.3
2015 Q3  2.20 18141.9
2015 Q4  2.23 18222.8
Importer et gérer des données financières dans R

Aligner sur l'horodatage de début de période

# Dernière observation reportée vers l'arrière
QGS10_GDP_locb <- na.locf(QGS10_GDP, fromLast = TRUE)
# Sous-ensemble par index de début de période
QGS10_GDP_first_period <- QGS10_GDP_locb[index(GDP)]
QGS10_GDP_first_period
          DGS10     GDP
2015-01-01  1.97 17783.6
2015-04-01  2.19 17998.3
2015-07-01  2.20 18141.9
2015-10-01  2.23 18222.8
Importer et gérer des données financières dans R

Passons à la pratique !

Importer et gérer des données financières dans R

Preparing Video For Download...