Series de Teimpo

0. Concepto

Una serie de tiempo es una colección de observaciones sobre un deterainado fenómeno efectuadas en momentos de tiempo sucesivos, usualmente equiespaciados.

Ejemplos de series de tiempo son: 1. Precio de acciones 2. Niveles de inventario 3. Nivel de rotación 4. Ventas

1. Instalar librerias

library(forecast)

2. Crear la serie de tiempo

# Paso 1. Obtener los valores dependientes
produccion <- c(50,53,55,57,55,60)

# Paso 2. Agregar valores anteriores su tiempo correspondiente
series_de_tiempo <- ts(data= produccion, start=c(2020,1), frequency=4)
series_de_tiempo
##      Qtr1 Qtr2 Qtr3 Qtr4
## 2020   50   53   55   57
## 2021   55   60

3. Crear modelo ARIMA

modelo <- auto.arima(series_de_tiempo, D=1)
modelo
## Series: series_de_tiempo 
## ARIMA(0,0,0)(0,1,0)[4] with drift 
## 
## Coefficients:
##        drift
##       1.5000
## s.e.  0.1768
## 
## sigma^2 = 2.01:  log likelihood = -2.84
## AIC=9.68   AICc=-2.32   BIC=7.06
summary(modelo)
## Series: series_de_tiempo 
## ARIMA(0,0,0)(0,1,0)[4] with drift 
## 
## Coefficients:
##        drift
##       1.5000
## s.e.  0.1768
## 
## sigma^2 = 2.01:  log likelihood = -2.84
## AIC=9.68   AICc=-2.32   BIC=7.06
## 
## Training set error measures:
##                      ME      RMSE       MAE        MPE      MAPE       MASE
## Training set 0.03333332 0.5787923 0.3666667 0.03685269 0.6429133 0.06111111
##                    ACF1
## Training set -0.5073047

Banco Mundial

0. Concepto

El Banco Mundial (WB) Es un organismo multinacional especializado en finanzas. En R se puede acceder a sis indicadores a través de librería WDI.

1. Instalar librerias

library(WDI)
library(wbstats)
library(tidyverse)
library(dplyr)

2. Crear la serie de tiempo

# Paso 1. Obtener los valores dependientes
gdp_data <- wb_data(country="MX", indicator= "NY.GDP.MKTP.CD", start_date=1973, end_date = 2022)
gdp_data <- gdp_data %>% select(date,NY.GDP.MKTP.CD)
# Paso 2. Agregar valores anteriores su tiempo correspondiente
series_de_tiempo1 <- ts(data= gdp_data$NY.GDP.MKTP.CD, start=1973, frequency=1)
series_de_tiempo1
## Time Series:
## Start = 1973 
## End = 2022 
## Frequency = 1 
##  [1] 5.528021e+10 7.200018e+10 8.800000e+10 8.887679e+10 8.191250e+10
##  [6] 1.026473e+11 1.345296e+11 2.055770e+11 2.638021e+11 1.846036e+11
## [11] 1.561675e+11 1.842312e+11 1.952414e+11 1.345561e+11 1.475426e+11
## [16] 1.816112e+11 2.214031e+11 2.612537e+11 3.131397e+11 3.631578e+11
## [21] 5.007334e+11 5.278106e+11 3.600725e+11 4.109730e+11 5.004160e+11
## [26] 5.264997e+11 6.002330e+11 7.079099e+11 7.567029e+11 7.721097e+11
## [31] 7.293350e+11 7.822429e+11 8.774769e+11 9.753834e+11 1.052697e+12
## [36] 1.109987e+12 9.000470e+11 1.057801e+12 1.180487e+12 1.201094e+12
## [41] 1.274444e+12 1.315356e+12 1.171870e+12 1.078493e+12 1.158912e+12
## [46] 1.222406e+12 1.269010e+12 1.090515e+12 1.272839e+12 1.414187e+12
## attr(,"label")
## [1] GDP (current US$)

3. Crear modelo ARIMA

modelo1 <- auto.arima(series_de_tiempo1, D=1)
modelo1
## Series: series_de_tiempo1 
## ARIMA(0,1,0) 
## 
## sigma^2 = 7.381e+21:  log likelihood = -1303.18
## AIC=2608.36   AICc=2608.44   BIC=2610.25
summary(modelo1)
## Series: series_de_tiempo1 
## ARIMA(0,1,0) 
## 
## sigma^2 = 7.381e+21:  log likelihood = -1303.18
## AIC=2608.36   AICc=2608.44   BIC=2610.25
## 
## Training set error measures:
##                       ME        RMSE         MAE      MPE     MAPE     MASE
## Training set 27179245230 85046847387 67623045592 4.943879 14.05421 0.980016
##                     ACF1
## Training set -0.01519178

ARIMA: Autoregressive Integrated Moving Average o Modelo Autorregresivo Integrado de Media móvil. ARIMA (pdq). p= orden de auto-regresión. d = orden de integración (diferenciación). q = orden del promedio móvil.

¿Cuando se usa? Cuando las estmaciones futuras se explican por los datos del pasado y no por variables independientes. Ejemplos: Tipos de Cambio

4. Realizar el pronostico

pronostico1 <- forecast(modelo1, level=c(95), h=5)
pronostico1
##      Point Forecast        Lo 95        Hi 95
## 2023   1.414187e+12 1.245806e+12 1.582568e+12
## 2024   1.414187e+12 1.176060e+12 1.652314e+12
## 2025   1.414187e+12 1.122543e+12 1.705832e+12
## 2026   1.414187e+12 1.077425e+12 1.750949e+12
## 2027   1.414187e+12 1.037676e+12 1.790699e+12
plot(pronostico1)

LS0tCnRpdGxlOiAiU2VyaWVzIGRlIHRpZW1wbyIKYXV0aG9yOiAiRmVybmFuZG8gTW9yYWxlcyBEaWFydGUgLSBBMDE3NDA1NjciCmRhdGU6ICIyMDIzLTEwLTAyIgpvdXRwdXQ6IAogIGh0bWxfZG9jdW1lbnQ6CiAgICB0b2M6IFRSVUUKICAgIHRvY19mbG9hdDogVFJVRQogICAgY29kZV9kb3dubG9hZDogVFJVRQogICAgdGhlbWU6ICJzYW5kc3RvbmUiCiAgICBoaWdobGlnaHQ6ICJlc3ByZXNzbyIKLS0tCgpgYGB7ciBzZXR1cCwgaW5jbHVkZT1GQUxTRX0Ka25pdHI6Om9wdHNfY2h1bmskc2V0KGVjaG8gPSBUUlVFKQpgYGAKCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij4gU2VyaWVzIGRlIFRlaW1wbyA8L3NwYW4+CgohW10oL1VzZXJzL3NwZWVkeW1kMjMvRGVza3RvcC9BbmFsaXNpcyBkZSBkYXRvcyAtIGNvbmNlbnRyYWNpb8yBbi9Nb2QgNC9TZXJpZVQuZ2lmKQoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij4gMC4gQ29uY2VwdG8gPC9zcGFuPiAKVW5hICpzZXJpZSBkZSB0aWVtcG8qIGVzIHVuYSBjb2xlY2Npw7NuIGRlIG9ic2VydmFjaW9uZXMgc29icmUgdW4gZGV0ZXJhaW5hZG8gZmVuw7NtZW5vIGVmZWN0dWFkYXMgZW4gbW9tZW50b3MgZGUgdGllbXBvIHN1Y2VzaXZvcywgdXN1YWxtZW50ZSBlcXVpZXNwYWNpYWRvcy4KCkVqZW1wbG9zIGRlIHNlcmllcyBkZSB0aWVtcG8gc29uOgoxLiBQcmVjaW8gZGUgYWNjaW9uZXMKMi4gTml2ZWxlcyBkZSBpbnZlbnRhcmlvCjMuIE5pdmVsIGRlIHJvdGFjacOzbgo0LiBWZW50YXMKCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogb3JhbmdlOyI+IDEuIEluc3RhbGFyIGxpYnJlcmlhcyA8L3NwYW4+IApgYGB7ciBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFfQpsaWJyYXJ5KGZvcmVjYXN0KQpgYGAKCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogb3JhbmdlOyI+IDIuIENyZWFyIGxhIHNlcmllIGRlIHRpZW1wbyA8L3NwYW4+IApgYGB7cn0KIyBQYXNvIDEuIE9idGVuZXIgbG9zIHZhbG9yZXMgZGVwZW5kaWVudGVzCnByb2R1Y2Npb24gPC0gYyg1MCw1Myw1NSw1Nyw1NSw2MCkKCiMgUGFzbyAyLiBBZ3JlZ2FyIHZhbG9yZXMgYW50ZXJpb3JlcyBzdSB0aWVtcG8gY29ycmVzcG9uZGllbnRlCnNlcmllc19kZV90aWVtcG8gPC0gdHMoZGF0YT0gcHJvZHVjY2lvbiwgc3RhcnQ9YygyMDIwLDEpLCBmcmVxdWVuY3k9NCkKc2VyaWVzX2RlX3RpZW1wbwoKYGBgCgojIyA8c3BhbiBzdHlsZT0iY29sb3I6IG9yYW5nZTsiPiAzLiBDcmVhciBtb2RlbG8gQVJJTUEgPC9zcGFuPiAKYGBge3J9Cm1vZGVsbyA8LSBhdXRvLmFyaW1hKHNlcmllc19kZV90aWVtcG8sIEQ9MSkKbW9kZWxvCnN1bW1hcnkobW9kZWxvKQpgYGAKCgojIDxzcGFuIHN0eWxlPSJjb2xvcjogb3JhbmdlOyI+IEJhbmNvIE11bmRpYWwgPC9zcGFuPgoKIVtdKC9Vc2Vycy9zcGVlZHltZDIzL0Rlc2t0b3AvQW5hbGlzaXMgZGUgZGF0b3MgLSBjb25jZW50cmFjaW/MgW4vTW9kIDQvQmFuY29NLmdpZikKCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogb3JhbmdlOyI+IDAuIENvbmNlcHRvIDwvc3Bhbj4gCkVsIEJhbmNvIE11bmRpYWwgKFdCKSBFcyB1biBvcmdhbmlzbW8gbXVsdGluYWNpb25hbCBlc3BlY2lhbGl6YWRvIGVuIGZpbmFuemFzLiAKRW4gUiBzZSBwdWVkZSBhY2NlZGVyIGEgc2lzIGluZGljYWRvcmVzIGEgdHJhdsOpcyBkZSBsaWJyZXLDrWEgV0RJLgoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij4gMS4gSW5zdGFsYXIgbGlicmVyaWFzIDwvc3Bhbj4gCmBgYHtyIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0V9CmxpYnJhcnkoV0RJKQpsaWJyYXJ5KHdic3RhdHMpCmxpYnJhcnkodGlkeXZlcnNlKQpsaWJyYXJ5KGRwbHlyKQpgYGAKCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogb3JhbmdlOyI+IDIuIENyZWFyIGxhIHNlcmllIGRlIHRpZW1wbyA8L3NwYW4+IApgYGB7cn0KIyBQYXNvIDEuIE9idGVuZXIgbG9zIHZhbG9yZXMgZGVwZW5kaWVudGVzCmdkcF9kYXRhIDwtIHdiX2RhdGEoY291bnRyeT0iTVgiLCBpbmRpY2F0b3I9ICJOWS5HRFAuTUtUUC5DRCIsIHN0YXJ0X2RhdGU9MTk3MywgZW5kX2RhdGUgPSAyMDIyKQpnZHBfZGF0YSA8LSBnZHBfZGF0YSAlPiUgc2VsZWN0KGRhdGUsTlkuR0RQLk1LVFAuQ0QpCiMgUGFzbyAyLiBBZ3JlZ2FyIHZhbG9yZXMgYW50ZXJpb3JlcyBzdSB0aWVtcG8gY29ycmVzcG9uZGllbnRlCnNlcmllc19kZV90aWVtcG8xIDwtIHRzKGRhdGE9IGdkcF9kYXRhJE5ZLkdEUC5NS1RQLkNELCBzdGFydD0xOTczLCBmcmVxdWVuY3k9MSkKc2VyaWVzX2RlX3RpZW1wbzEKCmBgYAoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij4gMy4gQ3JlYXIgbW9kZWxvIEFSSU1BIDwvc3Bhbj4gCmBgYHtyfQptb2RlbG8xIDwtIGF1dG8uYXJpbWEoc2VyaWVzX2RlX3RpZW1wbzEsIEQ9MSkKbW9kZWxvMQpzdW1tYXJ5KG1vZGVsbzEpCmBgYApBUklNQTogQXV0b3JlZ3Jlc3NpdmUgSW50ZWdyYXRlZCBNb3ZpbmcgQXZlcmFnZSBvIE1vZGVsbyBBdXRvcnJlZ3Jlc2l2byBJbnRlZ3JhZG8gZGUgTWVkaWEgbcOzdmlsLiAKQVJJTUEgKHBkcSkuIApwPSBvcmRlbiBkZSBhdXRvLXJlZ3Jlc2nDs24uIApkID0gb3JkZW4gZGUgaW50ZWdyYWNpw7NuIChkaWZlcmVuY2lhY2nDs24pLiAKcSA9IG9yZGVuIGRlbCBwcm9tZWRpbyBtw7N2aWwuIAoKwr9DdWFuZG8gc2UgdXNhPwpDdWFuZG8gbGFzIGVzdG1hY2lvbmVzIGZ1dHVyYXMgc2UgZXhwbGljYW4gcG9yIGxvcyBkYXRvcyBkZWwgcGFzYWRvIHkgbm8gcG9yIHZhcmlhYmxlcyBpbmRlcGVuZGllbnRlcy4KRWplbXBsb3M6IFRpcG9zIGRlIENhbWJpbwoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBvcmFuZ2U7Ij4gNC4gUmVhbGl6YXIgZWwgcHJvbm9zdGljbyA8L3NwYW4+IApgYGB7cn0KcHJvbm9zdGljbzEgPC0gZm9yZWNhc3QobW9kZWxvMSwgbGV2ZWw9Yyg5NSksIGg9NSkKcHJvbm9zdGljbzEKcGxvdChwcm9ub3N0aWNvMSkKYGBgCgoK