Librerías

library(dygraphs)
library(readxl)
library(tseries) #Modelos Arma y prueba Dickey-Fuller
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
library(lmtest) #Análsis de los coeficientes ARIMA
## Warning: package 'lmtest' was built under R version 4.2.3
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
library(quantmod)
## Loading required package: xts
## Loading required package: TTR
library(rugarch)
## Warning: package 'rugarch' was built under R version 4.2.3
## Loading required package: parallel
## 
## Attaching package: 'rugarch'
## The following object is masked from 'package:stats':
## 
##     sigma
library(rmgarch)  
## Warning: package 'rmgarch' was built under R version 4.2.3
## 
## Attaching package: 'rmgarch'
## The following objects are masked from 'package:xts':
## 
##     first, last
library(forecast)
## Warning: package 'forecast' was built under R version 4.2.3
library(MTS)#prueba multiplicadores de Lagrange... Elementos ARCH-GARCH
## Warning: package 'MTS' was built under R version 4.2.3
## 
## Attaching package: 'MTS'
## The following object is masked from 'package:TTR':
## 
##     VMA
costo_unitario <- read_excel("Costo unitario.xlsx")

Variable estudiada: costo unitario de mano de obra por persona ocupada

El costo unitario de la mano de obra por persona ocupada es el costo total de la mano de obra que se incurre para producir un producto o prestar un servicio, dividido por el número de personas ocupadas que trabajan en esa producción o servicio. En el presente trabajo, se ocupan datos del sector comercio, para el periodo 2008 - 2019.

Fuente: BANXICO
# Convertimos los datos a una serie de tiempo.
co_un = costo_unitario
co_un_ts = ts(co_un, start = c(2008,1), frequency = 12)

Patrones y tendencias en la serie de tiempo

Una serie de tiempo estacionaria es una serie de tiempo en la que las propiedades estadísticas básicas son constantes en el tiempo y no dependen del tiempo.En la Gráfica 1 no se aprecia un patrón claro, ni una tendencia evidente. Sin embargo, se aprecian picos constantes todos los diciembres, lo que podría indicar que la venta de automóviles depende de la temporada del año y hace complicado que la serie sea estacionaria.

# Realizamos distintas gráficas para visualizar el comportamiento de los datos y poder comprobar si son estacionarios.
### Gráfica de serie de tiempo
co_un_tsg = dygraph(co_un_ts, main = "Costo unitario de mano de obra en el sector comercio (2008 - 2019)", xlab = "Año", ylab = "Costo unitario")%>% dyRangeSelector()
dyOptions(co_un_tsg, colors = c("green", "red"), fillGraph = TRUE, strokeWidth = 2)

Histograma

El histograma con un sesgo positivo muestra que la distribución de los datos está desplazada hacia la derecha y tiene una cola más larga en ese lado. En otras palabras, hay más observaciones con valores más bajos y menos observaciones con valores más altos. Este tipo de distribución sugiere que hay valores atípicos en la cola más larga y que los valores más altos son menos frecuentes.

En cuanto a la estacionariedad de los datos, un histograma con sesgo positivo puede ser una señal de que los datos no son estacionarios. La estacionariedad se refiere a la propiedad de una serie temporal donde su distribución y estadísticas no cambian con el tiempo. Un sesgo positivo indica que hay cambios en la distribución de los datos con el tiempo, lo que sugiere que la serie temporal no es estacionaria.

Sin embargo, es importante tener en cuenta que la presencia de un sesgo positivo no siempre significa que los datos no sean estacionarios.

# Graficamos un histograma
hist(co_un_ts, main = "Costo unitario de mano de obra en el sector comercio (2008 - 2019)")

Gráfico de densidad

Este gráfico de densidad con sesgo a la derecha muestra una distribución de datos donde la mayoría de las observaciones se agrupan en valores más bajos, pero hay algunos valores muy altos que se extienden hacia la derecha. El sesgo a la derecha puede ser un indicador de cambios en la tendencia o en la variabilidad de los datos a lo largo del tiempo.

# Hacemos un gráfico de densidad.
density = plot(density(co_un_ts), main = "Costo unitario de mano de obra en el sector comercio (2008 - 2019)")

Q-Qplot

Los valores extremos en un gráfico qqplot se alejan significativamente de la línea de referencia, esto sugiere que los datos tienen colas pesadas o son muy diferentes de la distribución teórica que se está comparando. En otras palabras, esto indica que los valores extremos son más comunes de lo que se esperaría según la distribución teórica.

En términos de estacionariedad de los datos, si hay valores extremos que se alejan significativamente de la línea de referencia en un gráfico qqplot, esto puede ser una señal de que los datos no son estacionarios. La presencia de valores extremos sugiere que hay una variabilidad importante en los datos a lo largo del tiempo, lo que es una característica de los datos no estacionarios.

# Hacemos un gráfico qqplot
qqnorm(co_un_ts)
qqline(co_un_ts)

Gráfico de caja y bigote

El gráfico de caja y bigote muestra valores atípicos y una media que está muy por debajo de la mediana, esto sugiere que los datos tienen una distribución asimétrica con una cola larga en el lado inferior. En cuanto a la estacionariedad de los datos, un gráfico de caja y bigote con valores atípicos y una media muy por debajo de la mediana puede indicar que los datos no son estacionarios.

# Realizamos el gráfico de caja y bigote
boxplot(co_un_ts, main = "Gráfico de Caja y Bigote para la Serie de Tiempo")

Cáluculo de diferencias y diferencias estacionales

En el análisis de una serie de tiempo, se realizaron pruebas de raíz unitaria para determinar la necesidad de aplicar diferencias estacionales. Estas pruebas, como el test KPSS, permiten evaluar si una serie de tiempo es estacionaria o presenta una raíz unitaria. En este caso, los resultados de las pruebas indicaron que la serie de tiempo no era estacionaria en su forma original, lo que sugiere la presencia de una tendencia o patrón estacional.

Como respuesta a esta situación, se decidió aplicar diferencias estacionales para eliminar el patrón temporal y hacer que la serie sea estacionaria. Al observar la gráfica de la diferencia estacional, se pudo apreciar que ya no había tendencias temporales visibles, lo que indicaba un efecto satisfactorio de la diferenciación estacional en la eliminación del componente estacional de la serie.

# Cálculo de las diferencias normales y estacionales
ndiffs(co_un_ts)
## [1] 0
nsdiffs(co_un_ts)
## [1] 1
# Análisis de las diferencias
#Diferencia estacional / Graficos
co_un.1d<-(diff(co_un_ts));co_un.1d
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2008            3.6954   1.5569  -6.6595  17.7797 -17.5651  -4.5710   3.7209
## 2009  -9.3409   1.7183  -4.5513   5.8786  13.8384 -20.5161   0.0100   0.1964
## 2010 -12.5071   1.9135  -5.2852   1.4638  12.5439 -13.9984  -1.0965  -1.3912
## 2011 -11.5698   4.0177  -4.4758   6.7170   9.2935 -13.3198   2.2902  -6.8829
## 2012 -10.2689   1.6361  -0.6172   3.8070   6.0648 -11.3915   1.4258  -2.4102
## 2013 -11.2730   5.4288   0.2115  -1.6514   8.8125  -8.4929  -3.9797   3.9894
## 2014  -6.6804   4.5131  -6.6559   1.9941  13.2551 -14.1073  -4.1399   0.3462
## 2015  -7.9838   3.0895  -4.9862   5.5300   8.9782 -16.7852  -0.1477   1.1807
## 2016 -12.4900   3.2639   0.0655  -2.6423  11.0164 -16.7148   3.0597  -1.5170
## 2017 -10.4340   4.1333  -3.0001   4.1071   5.2310 -10.0819   0.1695  -0.6148
## 2018 -12.9494   5.4879   0.0318  -1.1420   3.0249 -10.0620  -0.0669   1.1502
## 2019 -12.7560   6.4366                                                      
##           Sep      Oct      Nov      Dec
## 2008  -0.4529  -2.9972   2.7037  15.9241
## 2009   1.2655  -2.3292  -1.2239  15.9273
## 2010   2.9609  -3.6125  -0.9460  15.4810
## 2011   4.3934  -4.7579  -1.6658  13.6269
## 2012   2.1523  -5.2222   2.9396  16.9432
## 2013   2.1401  -7.2102   1.4540  11.6812
## 2014   0.6297  -4.2097   0.7579  13.1003
## 2015   3.1427  -2.2251  -0.4282  13.8240
## 2016   4.3475  -5.2742  -3.3672  15.7497
## 2017   5.1297  -6.6527  -0.8019  16.3189
## 2018   4.3299  -7.9777   1.2217  18.1570
## 2019
co_un.1ds<-(diff(co_un_ts,lag = 12,diferences=1));co_un.1ds
##          Jan     Feb     Mar     Apr     May     Jun     Jul     Aug     Sep
## 2009  3.7941  1.8170 -4.2912  8.2469  4.3056  1.3546  5.9356  2.4111  4.1295
## 2010 -2.2931 -2.0979 -2.8318 -7.2466 -8.5411 -2.0234 -3.1299 -4.7175 -3.0221
## 2011 -3.5365 -1.4323 -0.6229  4.6303  1.3799  2.0585  5.4452 -0.0465  1.3860
## 2012 -1.0324 -3.4140  0.4446 -2.4654 -5.6941 -3.7658 -4.6302 -0.1575 -2.3986
## 2013  4.0547  7.8474  8.6761  3.2177  5.9654  8.8640  3.4585  9.8581  9.8459
## 2014  5.7029  4.7872 -2.0802  1.5653  6.0079  0.3935  0.2333 -3.4099 -4.9203
## 2015 -2.5002 -3.9238 -2.2541  1.2818 -2.9951 -5.6730 -1.6808 -0.8463  1.6667
## 2016 -1.3173 -1.1429  3.9088 -4.2635 -2.2253 -2.1549  1.0525 -1.6452 -0.4404
## 2017 -2.4468 -1.5774 -4.6430  2.1064 -3.6790  2.9539  0.0637  0.9659  1.7481
## 2018  0.9887  2.3433  5.3752  0.1261 -2.0800 -2.0601 -2.2965 -0.5315 -1.3313
## 2019  1.3988  2.3475                                                        
##          Oct     Nov     Dec
## 2009  4.7975  0.8699  0.8731
## 2010 -4.3054 -4.0275 -4.4738
## 2011  0.2406 -0.4792 -2.3333
## 2012 -2.8629  1.7425  5.0588
## 2013  7.8579  6.3723  1.1103
## 2014 -1.9198 -2.6159 -1.1968
## 2015  3.6513  2.4652  3.1889
## 2016 -3.4895 -6.4285 -4.5028
## 2017  0.3696  2.9349  3.5041
## 2018 -2.6563 -0.6327  1.2054
## 2019
co_un.1drs<-(diff(co_un.1d,lag = 12,diferences=1));co_un.1drs
##          Jan     Feb     Mar     Apr     May     Jun     Jul     Aug     Sep
## 2009         -1.9771 -6.1082 12.5381 -3.9413 -2.9510  4.5810 -3.5245  1.7184
## 2010 -3.1662  0.1952 -0.7339 -4.4148 -1.2945  6.5177 -1.1065 -1.5876  1.6954
## 2011  0.9373  2.1042  0.8094  5.2532 -3.2504  0.6786  3.3867 -5.4917  1.4325
## 2012  1.3009 -2.3816  3.8586 -2.9100 -3.2287  1.9283 -0.8644  4.4727 -2.2411
## 2013 -1.0041  3.7927  0.8287 -5.4584  2.7477  2.8986 -5.4055  6.3996 -0.0122
## 2014  4.5926 -0.9157 -6.8674  3.6455  4.4426 -5.6144 -0.1602 -3.6432 -1.5104
## 2015 -1.3034 -1.4236  1.6697  3.5359 -4.2769 -2.6779  3.9922  0.8345  2.5130
## 2016 -4.5062  0.1744  5.0517 -8.1723  2.0382  0.0704  3.2074 -2.6977  1.2048
## 2017  2.0560  0.8694 -3.0656  6.7494 -5.7854  6.6329 -2.8902  0.9022  0.7822
## 2018 -2.5154  1.3546  3.0319 -5.2491 -2.2061  0.0199 -0.2364  1.7650 -0.7998
## 2019  0.1934  0.9487                                                        
##          Oct     Nov     Dec
## 2009  0.6680 -3.9276  0.0032
## 2010 -1.2833  0.2779 -0.4463
## 2011 -1.1454 -0.7198 -1.8541
## 2012 -0.4643  4.6054  3.3163
## 2013 -1.9880 -1.4856 -5.2620
## 2014  3.0005 -0.6961  1.4191
## 2015  1.9846 -1.1861  0.7237
## 2016 -3.0491 -2.9390  1.9257
## 2017 -1.3785  2.5653  0.5692
## 2018 -1.3250  2.0236  1.8381
## 2019
par(mfrow=c(1,2))
plot(co_un.1drs,type="l",main= "Primeras diferencias regulares estacionales")
par(mfrow=c(1,2))

ggtsdisplay(co_un.1drs)

Con el fin de buscar una transformación que logre estacionarizar la serie, se decidió aplicar una diferencia estacional inicialmente. Sin embargo, a pesar de esta transformación, la serie aún no cumplió con el criterio de estacionariedad según el test de Dickey-Fuller.

Dado este resultado, se optó por aplicar una diferencia regular adicional a la serie con el objetivo de eliminar cualquier tendencia temporal remanente. Esta estrategia busca obtener una serie estacionaria al eliminar gradualmente cualquier patrón sistemático en los datos.

Se procederá a realizar el análisis utilizando la diferencia regular y se evaluarán nuevamente las propiedades de estacionariedad de la serie a través de pruebas adicionales y análisis de los gráficos de autocorrelación y autocorrelación parcial.

Además, se examinaron los autocorrelogramas (ACF) y los autocorrelogramas parciales (PACF) de las diferencias estacionales. Se observó que el primer rezago tenía una correlación alta, lo que indicaba una relación significativa entre los valores actuales y los valores rezagados en el mismo período estacional. Sin embargo, a medida que aumentaban los rezagos, las correlaciones disminuían gradualmente. Aunque varios rezagos aún rebasaban las bandas de confianza en los gráficos de ACF y PACF, esta disminución en la correlación sugería una posible eliminación de la autocorrelación estacional después de aplicar las diferencias estacionales.

Prueba Dickey Fuller y eliminación de tendencias

Después de aplicar tanto una diferencia regular como una diferencia estacional a la serie de tiempo, se realizó nuevamente la prueba de Dickey-Fuller. En esta ocasión, los resultados mostraron que la serie ahora es estacionaria, con un valor de p significativamente menor de 0.01. Esto indica que se ha logrado eliminar la raíz unitaria y que la serie exhibe propiedades de estacionariedad.

La aplicación de ambas diferencias, tanto la regular como la estacional, ha sido efectiva para eliminar las tendencias temporales y los patrones sistemáticos presentes en los datos. Estas transformaciones han logrado estabilizar la serie y hacer que los datos sean más adecuados para su análisis y modelado.

# Dickey Fuller
adf.test(co_un.1drs)#Estacional
## Warning in adf.test(co_un.1drs): p-value smaller than printed p-value
## 
##  Augmented Dickey-Fuller Test
## 
## data:  co_un.1drs
## Dickey-Fuller = -5.061, Lag order = 4, p-value = 0.01
## alternative hypothesis: stationary

ACF y PACF

El análisis de la función de autocorrelación (ACF) y la función de autocorrelación parcial (PACF) revela patrones interesantes en la serie derivada que combina una diferencia regular y una diferencia estacional. En el gráfico ACF, se observa que el primer rezago presenta una correlación notablemente alta, mientras que los rezagos posteriores disminuyen gradualmente y se vuelven insignificantes. Sin embargo, algunos rezagos aún rebasan las líneas de confianza establecidas en el gráfico.

Este patrón en el ACF sugiere que tanto la diferencia regular como la diferencia estacional han sido efectivas para eliminar las autocorrelaciones significativas en la serie. La alta correlación en el primer rezago indica que existe una dependencia temporal fuerte entre las observaciones adyacentes después de aplicar las diferencias. Sin embargo, la disminución de las correlaciones en los rezagos posteriores indica que la influencia de las observaciones pasadas se desvanece rápidamente.

El hecho de que algunos rezagos todavía rebasen las líneas de confianza en el gráfico ACF sugiere que puede haber patrones residuales en la serie que no han sido completamente capturados por las diferencias aplicadas.

# Gráfica de diferencia regular estacional
ggtsdisplay(co_un.1drs)

Elección de modelo

El criterio de Akaike (AIC) es como una balanza que nos ayuda a elegir el mejor modelo para nuestros datos. Quiere encontrar un modelo que se ajuste bien a los datos pero que no sea demasiado complicado. El AIC no le gusta a los modelos complicados, prefiere aquellos que se ajustan bien con menos “cosas” en ellos. Cuando minimizamos el valor del AIC, estamos eligiendo el modelo que ofrece el mejor equilibrio entre ajuste y simplicidad. En resumen, el AIC nos ayuda a encontrar el modelo más ajustado pero con la menor cantidad de complicaciones.Para ello se usa la función auto.arima, que da el mejor modelo para la serie diferenciada.

mejor = auto.arima(co_un.1drs)
summary(mejor)
## Series: co_un.1drs 
## ARIMA(2,0,2)(0,0,1)[12] with zero mean 
## 
## Coefficients:
##           ar1      ar2     ma1      ma2     sma1
##       -1.0582  -0.2829  0.5358  -0.4204  -0.6812
## s.e.   0.1488   0.1465  0.1570   0.1439   0.1077
## 
## sigma^2 = 6.242:  log likelihood = -285.1
## AIC=582.2   AICc=582.94   BIC=598.98
## 
## Training set error measures:
##                       ME     RMSE      MAE       MPE     MAPE      MASE
## Training set -0.01115467 2.446293 1.989663 -671.1804 867.1415 0.4964725
##                     ACF1
## Training set 0.004921728

Resultados del modelo

ARIMA(2,0,2): Indica que el modelo incluye dos términos autoregresivos (AR) de orden 1 y 2, y dos términos de media móvil (MA) de orden 1 y 2. Estos términos capturan las dependencias lineales de los valores pasados y los residuos pasados.

(0,0,1): Indica que hay un término de media móvil estacional (SMA) de orden 1. Este término captura la dependencia estacional de la serie temporal.

- ar1: -1.0582: Es el coeficiente estimado del primer término autoregresivo (AR) en el modelo ARIMA.

- ar2: -0.2829: Es el coeficiente estimado del segundo término autoregresivo (AR) en el modelo ARIMA.

- ma1: 0.5358: Es el coeficiente estimado del primer término de media móvil (MA) en el modelo ARIMA.

- ma2: -0.4204: Es el coeficiente estimado del segundo término de media móvil (MA) en el modelo ARIMA.

- sma1: -0.6812: Es el coeficiente estimado del primer término de media móvil estacional (SMA) en un posible modelo SARIMA.

Análisis de los residuos

#Pruebas a los Residuales del mejor modelo
RE<-residuals(mejor)
par(mfrow=c(1,2))
acf(RE,main='ACF Residuales de MA(6)',xlab='Retardos')
pacf(RE,main='PACF Residuales de MA(6)',xlab='Retardos')

#Pruebas a los Residuales al cuadrado del mejor modelo
RE2<-RE^2
#par(mfrow=c(1,2))
acf(RE2,main='ACF Residuales de MA (6) al cuadrado',xlab='Retardos')
pacf(RE2,main='PACF Residuales de MA (6) al cuadrado',xlab='Retardos')

# Realizamos la prueba de normalidad Shapiro Wilk test
#H0:La distribución es normal
#H1:La distribución no es normal
shapiro.test(RE)  
## 
##  Shapiro-Wilk normality test
## 
## data:  RE
## W = 0.99331, p-value = 0.8343
#pvalue<=0.05 rechazo Ho
#pvalue> 0.05 acepto Ho
#Buscamos valores más grandes a 0.05 en el pvalue para 
#Afirmar que los residuos provienen de una distribución normal
##supuestos del error: ho= ruido blanco; h1: los errores cuadrados estan relacioandos
Box.test(RE,1,type="Ljung") # VERIFICA QUE LOS RESIDUOS SE COMPORTAN COMO RUIDO BLANCO
## 
##  Box-Ljung test
## 
## data:  RE
## X-squared = 0.0030043, df = 1, p-value = 0.9563
Box.test(RE2,1,type="Ljung")
## 
##  Box-Ljung test
## 
## data:  RE2
## X-squared = 0.081996, df = 1, p-value = 0.7746
# Pruebas de heterocedasticidad condicional en el modelo
resultado_lm <- lmtest::bptest(RE2 ~ 1 + lag(RE2, k = 1) + lag(RE2, k = 2))
print(resultado_lm)
## 
##  studentized Breusch-Pagan test
## 
## data:  RE2 ~ 1 + lag(RE2, k = 1) + lag(RE2, k = 2)
## BP = 28.048, df = 1, p-value = 1.184e-07
# Imprimir los resultados

Pruebas de normalidad y heterocedasticidad

- Prueba de Box-Ljung: El valor de la prueba para la serie RE es X-squared = 0.0030043, con un p-valor de 0.9563. Para la serie RE2, el valor de la prueba es X-squared = 0.081996, con un p-valor de 0.7746. No se encontró evidencia significativa de autocorrelación en los residuos en ambos casos.

- Prueba de Breusch-Pagan: La prueba indica que hay evidencia significativa de heterocedasticidad en los residuos de la serie RE2. El valor de la prueba es BP = 28.048, con un p-valor de 1.184e-07.

- Prueba de Q(m) de la serie al cuadrado (prueba de LM): No se encontró evidencia suficiente para concluir la presencia de heterocedasticidad en los residuos al cuadrado. El valor del estadístico de prueba es 28.59578, con un p-valor de 0.5388967.

Dado que se observa la presencia de heterocedasticidad en los residuales, se concluye que es posible modelar la varianza.

Modelo GARCH de la varianza

dis_garch10<-ugarchspec(mean.model = list(armaOrder = c(1,1), include.mean=F),
                        variance.model = list(garchOrder = c(1,1)))
ugfit = ugarchfit (spec = dis_garch10, data = co_un.1drs);ugfit #Estimación del modelo
## 
## *---------------------------------*
## *          GARCH Model Fit        *
## *---------------------------------*
## 
## Conditional Variance Dynamics    
## -----------------------------------
## GARCH Model  : sGARCH(1,1)
## Mean Model   : ARFIMA(1,0,1)
## Distribution : norm 
## 
## Optimal Parameters
## ------------------------------------
##         Estimate  Std. Error     t value Pr(>|t|)
## ar1     -0.06024    0.162158   -0.371486 0.710276
## ma1     -0.45055    0.138828   -3.245363 0.001173
## omega    0.00000    0.002494    0.000111 0.999912
## alpha1   0.00000    0.000098    0.000001 0.999999
## beta1    0.99823    0.000109 9131.014639 0.000000
## 
## Robust Standard Errors:
##         Estimate  Std. Error     t value Pr(>|t|)
## ar1     -0.06024    0.127684 -4.7179e-01 0.637079
## ma1     -0.45055    0.108513 -4.1520e+00 0.000033
## omega    0.00000    0.000342  8.0600e-04 0.999357
## alpha1   0.00000    0.000079  1.0000e-06 0.999999
## beta1    0.99823    0.000093  1.0787e+04 0.000000
## 
## LogLikelihood : -302.2849 
## 
## Information Criteria
## ------------------------------------
##                    
## Akaike       5.0791
## Bayes        5.1946
## Shibata      5.0759
## Hannan-Quinn 5.1260
## 
## Weighted Ljung-Box Test on Standardized Residuals
## ------------------------------------
##                         statistic p-value
## Lag[1]                   0.002327  0.9615
## Lag[2*(p+q)+(p+q)-1][5]  2.937857  0.5114
## Lag[4*(p+q)+(p+q)-1][9]  4.514605  0.5677
## d.o.f=2
## H0 : No serial correlation
## 
## Weighted Ljung-Box Test on Standardized Squared Residuals
## ------------------------------------
##                         statistic p-value
## Lag[1]                      0.708  0.4001
## Lag[2*(p+q)+(p+q)-1][5]     1.926  0.6360
## Lag[4*(p+q)+(p+q)-1][9]     2.893  0.7765
## d.o.f=2
## 
## Weighted ARCH LM Tests
## ------------------------------------
##             Statistic Shape Scale P-Value
## ARCH Lag[3]     1.134 0.500 2.000  0.2870
## ARCH Lag[5]     1.792 1.440 1.667  0.5191
## ARCH Lag[7]     2.266 2.315 1.543  0.6612
## 
## Nyblom stability test
## ------------------------------------
## Joint Statistic:  1.8877
## Individual Statistics:              
## ar1    0.05491
## ma1    0.05687
## omega  0.18706
## alpha1 0.15557
## beta1  0.19262
## 
## Asymptotic Critical Values (10% 5% 1%)
## Joint Statistic:          1.28 1.47 1.88
## Individual Statistic:     0.35 0.47 0.75
## 
## Sign Bias Test
## ------------------------------------
##                    t-value    prob sig
## Sign Bias           1.3381 0.18348    
## Negative Sign Bias  2.1851 0.03089  **
## Positive Sign Bias  0.6283 0.53102    
## Joint Effect        5.3252 0.14947    
## 
## 
## Adjusted Pearson Goodness-of-Fit Test:
## ------------------------------------
##   group statistic p-value(g-1)
## 1    20     16.02       0.6556
## 2    30     19.08       0.9192
## 3    40     36.69       0.5759
## 4    50     41.40       0.7714
## 
## 
## Elapsed time : 0.09836984

Resultados de la modelación de la varianza

Los coeficientes obtenidos son:

- ar1: El coeficiente ar1 tiene un valor de 0.05491. Este coeficiente representa la influencia de la observación anterior en el modelo GARCH. Un valor positivo indica que una observación positiva en el pasado aumenta la volatilidad actual.

- ma1: El coeficiente ma1 tiene un valor de 0.05687. Este coeficiente representa la influencia del error pasado en el modelo GARCH. Un valor positivo indica que un error positivo en el pasado aumenta la volatilidad actual.

- omega: El coeficiente omega tiene un valor de 0.18706. Este coeficiente es el término constante en el modelo GARCH y representa la varianza constante o el nivel básico de volatilidad. Un valor mayor indica una mayor varianza constante.

- alpha1: El coeficiente alpha1 tiene un valor de 0.15557. Este coeficiente representa la influencia de la volatilidad pasada en el modelo GARCH. Un valor mayor indica que una alta volatilidad pasada tiene un impacto significativo en la volatilidad actual.

- beta1: El coeficiente beta1 tiene un valor de 0.19262. Este coeficiente representa la influencia del cuadrado del error pasado en el modelo GARCH. Un valor mayor indica que un error pasado grande aumenta la volatilidad actual de manera significativa.

En resumen, los coeficientes obtenidos indican la relación entre las observaciones pasadas y la volatilidad actual en el modelo GARCH. Los coeficientes positivos indican que las observaciones pasadas tienen un impacto positivo en la volatilidad actual, mientras que los coeficientes mayores indican una influencia más fuerte. Estos coeficientes son fundamentales para comprender y modelar la dinámica de la varianza en la serie de tiempo.

Los resultados indican que el modelo GARCH ajustado a un modelo ARIMA(2,0,2)(0,0,1) no muestra una significancia estadística en la estadística conjunta, ya que el valor de 1.8877 no supera el valor crítico de 1.88 al nivel de significancia del 1%. Sin embargo, se observa que los parámetros individuales tienen valores distintos de cero, lo que implica una contribución significativa de cada uno al modelo de varianza.

Conclusiones

En este estudio, se aplicaron diferencias regulares y estacionales a los datos con el objetivo de lograr estacionariedad y superar la prueba de Dickey-Fuller. Esta estrategia fue efectiva, ya que las diferencias aplicadas permitieron que los datos se volvieran estacionarios y se obtuviera un p-valor significativo en la prueba de Dickey-Fuller.

Posteriormente, se utilizó el criterio de Akaike para seleccionar el mejor modelo de ajuste. Este criterio considera tanto la capacidad de ajuste del modelo como su complejidad, favoreciendo aquellos modelos que logran un buen ajuste con menos parámetros. Al seleccionar el modelo con el valor más bajo de Akaike, se garantiza una buena combinación de ajuste y parsimonia.

Sin embargo, al analizar los residuos del modelo seleccionado, se encontró heterocedasticidad, lo que implica que la varianza de los residuos no es constante en el tiempo. Para abordar este problema, se aplicó un modelo GARCH para modelar la varianza condicional de los residuos. Esto permite capturar los patrones de volatilidad en los residuos y obtener estimaciones más precisas.

En resumen, mediante la aplicación de diferencias regulares y estacionales, se logró convertir los datos en estacionarios y seleccionar el mejor modelo de acuerdo con el criterio de Akaike. Sin embargo, se identificó heterocedasticidad en los residuos, lo que llevó a la implementación de un modelo GARCH para modelar la varianza condicional. Este enfoque integral permite capturar tanto la dinámica temporal como la estructura de volatilidad en los datos, mejorando la calidad del modelo y las estimaciones resultantes.