INTRODUCCIÓN

Grupo Nutresa es uno de los principales conglomerados de alimentos procesados en Colombia, con operaciones en múltiples países de América Latina. Su modelo de negocio se basa en la producción, distribución y comercialización de alimentos, lo que lo ubica en la intersección entre la actividad industrial y el consumo de los hogares.

El desempeño de la compañía está directamente influenciado por el comportamiento de la economía, tanto desde el lado de la producción como de la demanda, así como por la dinámica del comercio exterior, dado su proceso de internacionalización.

SELECCIÓN DE VARIABLES

Para el análisis del sector manufacturero, se seleccionaron tres variables clave: Índice de Producción Industrial Regional(IPIR), Ventas minoristas (MIN), Exportaciones totales (X):

IPIR (Producción industrial): Se selecciona como variable principal porque refleja el nivel de actividad del sector manufacturero, en el cual opera directamente Grupo Nutresa. Este indicador permite capturar la dinámica productiva del país y su evolución en el tiempo, siendo altamente relevante para el análisis del desempeño industrial.

MIN (Ventas minoristas): Representa el comportamiento del consumo de los hogares. Dado que los productos de Nutresa están orientados al consumo masivo, esta variable permite analizar la demanda interna y su impacto sobre la comercialización de productos.

X (Exportaciones totales): Permite incorporar el componente externo del análisis. Grupo Nutresa tiene presencia internacional, por lo que el comportamiento de las exportaciones refleja la demanda externa y la integración del sector en mercados internacionales.

Con estas variables se busca responder: ¿Qué está pasando en el sector?, ¿Qué tendencias vienen?, ¿Cómo debería reaccionar la empresa?

Extracción de señales

Gráfico inicial de la variable 1 en niveles -Original

Extracción señales variable 1

Extracción señales variable 2

Extracción señales variable 3

Después de la descomposición temporal de cada variable, se extrae la variable ajustada por estacionalidad para graficarla junto con la serie original:

Gráfico serie original VS ajustada Variable 1

Gráfico serie original VS ajustada Variable 2

Gráfico serie original VS ajustada Variable 3

Serie original vs tendencia

Tendencia Variable 1

Tendencia Variable 2

Tendencia Variable 3

Tasa de crecimiento de la serie de tendencia y original para la variable 1

## [1] 156
## [1] 156
## [1] 156

*Gráfico variable original y tendencia variable 1: tasa de crecimiento anual**

Ahora calculamos la tasa de crecimiento de la serie original vs tendencia: variable 2

## [1] 156
## [1] 156
## [1] 156

Ahora calculamos la tasa de crecimiento de la serie original vs tendencia: variable 3

## [1] 156
## [1] 156
## [1] 156

Analizar la tasa de crecimiento anual ayuda a detectar cambios en el entorno económico que afectan el sector. Se pueden prever crisis o períodos de auge y prepararse para ellos.

Modelo ARIMA

División en conjunto de entrenamiento y prueba para la variable 1 que es la elegida para pronosticar

El código siguiente divide una serie temporal (variable1_ts) en dos subconjuntos:

Conjunto de entrenamiento (train): Datos desde enero de 2012 hasta septiembre de 2024. Conjunto de prueba (test): Datos desde octubre de 2024 hasta diciembre de 2025.

Esto se hace para evaluar el desempeño de modelos de predicción en datos no vistos.

## [1] 134
## [1] 34

Modelo ARIMA automático normal (sin tener en cuenta el factor estacional)

Identificación automática del modelo ARIMA

## Series: train_ts 
## ARIMA(0,1,4) with drift 
## 
## Coefficients:
##           ma1      ma2     ma3      ma4   drift
##       -0.3203  -0.3066  0.0658  -0.2379  0.2154
## s.e.   0.0908   0.0966  0.1453   0.1005  0.1148
## 
## sigma^2 = 39.17:  log likelihood = -430.57
## AIC=873.14   AICc=873.81   BIC=890.49
## 
## Training set error measures:
##                      ME    RMSE      MAE        MPE     MAPE      MASE
## Training set 0.03947725 6.11724 4.362369 -0.3924791 4.599755 0.7812209
##                     ACF1
## Training set 0.003141624

Estimación del modelo identificado automatico y validación de Significancia de coeficientes

## 
## z test of coefficients:
## 
##        Estimate Std. Error z value  Pr(>|z|)    
## ma1   -0.320252   0.090840 -3.5255 0.0004227 ***
## ma2   -0.306646   0.096588 -3.1748 0.0014995 ** 
## ma3    0.065805   0.145276  0.4530 0.6505758    
## ma4   -0.237854   0.100514 -2.3664 0.0179633 *  
## drift  0.215378   0.114762  1.8767 0.0605542 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Series: train_ts 
## ARIMA(0,1,4) 
## 
## Coefficients:
##           ma1      ma2     ma3      ma4
##       -0.2976  -0.2831  0.0864  -0.2183
## s.e.   0.0901   0.0963  0.1428   0.0977
## 
## sigma^2 = 39.66:  log likelihood = -431.78
## AIC=873.55   AICc=874.03   BIC=888.01
## 
## Training set error measures:
##                     ME     RMSE      MAE       MPE    MAPE      MASE
## Training set 0.7592927 6.179199 4.547686 0.3702771 4.76254 0.8144077
##                     ACF1
## Training set -0.01448305

Validación de residuales o errores del modelo

## 
##  Ljung-Box test
## 
## data:  Residuals from ARIMA(0,1,4)
## Q* = 60.826, df = 20, p-value = 5.302e-06
## 
## Model df: 4.   Total lags used: 24

Pronóstico modelo ARIMA automático dentro de muestra o en el set de prueba

Pronóstico automático dentro del set de prueba como tabla

##      Tiempo Observado Pronosticado
## 1  2023.167  120.2487     114.0421
## 2  2023.250  107.7626     114.5469
## 3  2023.333  116.5034     117.1550
## 4  2023.417  112.3158     117.8810
## 5  2023.500  112.1142     118.0964
## 6  2023.583  116.7636     118.3118
## 7  2023.667  116.6099     118.5272
## 8  2023.750  117.1116     118.7425
## 9  2023.833  116.2565     118.9579
## 10 2023.917  112.2879     119.1733
## 11 2024.000  104.0787     119.3887
## 12 2024.083  107.8316     119.6040
## 13 2024.167  106.8041     119.8194
## 14 2024.250  111.8613     120.0348
## 15 2024.333  112.3880     120.2502
## 16 2024.417  106.7647     120.4656
## 17 2024.500  114.3399     120.6809
## 18 2024.583  114.4751     120.8963
## 19 2024.667  111.7730     121.1117
## 20 2024.750  118.3544     121.3271
## 21 2024.833  114.7283     121.5424
## 22 2024.917  114.3219     121.7578
## 23 2025.000  106.0656     121.9732
## 24 2025.083  106.7854     122.1886
## 25 2025.167  112.3091     122.4040
## 26 2025.250  108.2944     122.6193
## 27 2025.333  116.0095     122.8347
## 28 2025.417  108.9988     123.0501
## 29 2025.500  121.2317     123.2655
## 30 2025.583  115.6427     123.4808
## 31 2025.667  117.6000     123.6962
## 32 2025.750  120.4760     123.9116
## 33 2025.833  115.4923     124.1270
## 34 2025.917  113.6208     124.3424

Ahora pronosticamos con el modelo automatico fuera del periodo de análisis, es decir enero 2025

Es decir, le sumamos al periodo de prueb auna observación más. Es decir, se estan pronosticando 4 observaciones o trimestres.

##      Tiempo Pronostico
## 1  2023.167   114.0421
## 2  2023.250   114.5469
## 3  2023.333   117.1550
## 4  2023.417   117.8810
## 5  2023.500   118.0964
## 6  2023.583   118.3118
## 7  2023.667   118.5272
## 8  2023.750   118.7425
## 9  2023.833   118.9579
## 10 2023.917   119.1733
## 11 2024.000   119.3887
## 12 2024.083   119.6040
## 13 2024.167   119.8194
## 14 2024.250   120.0348
## 15 2024.333   120.2502
## 16 2024.417   120.4656
## 17 2024.500   120.6809
## 18 2024.583   120.8963
## 19 2024.667   121.1117
## 20 2024.750   121.3271
## 21 2024.833   121.5424
## 22 2024.917   121.7578
## 23 2025.000   121.9732
## 24 2025.083   122.1886
## 25 2025.167   122.4040
## 26 2025.250   122.6193
## 27 2025.333   122.8347
## 28 2025.417   123.0501
## 29 2025.500   123.2655
## 30 2025.583   123.4808
## 31 2025.667   123.6962
## 32 2025.750   123.9116
## 33 2025.833   124.1270
## 34 2025.917   124.3424
## 35 2026.000   124.5577
## [1] "Pronóstico para enero 2025: 2026 = 124.557730618166"

Modelo SARIMA automático

Este modelo podria ser una solución o mejora al modelo arima tradicional ya que recoge el efecto estacional de las variables, es recomendable por tanto para datos que si tienen un componente estacional fuerte.

El modelo ajustado en este ejemplo es un SARIMA(0,1,1)(1,0,0)[12], lo que significa:

(0,1,1): Parte ARIMA no estacional: 0 términos autorregresivos (AR). 1 diferenciación (d), lo que indica que la serie fue diferenciada una vez para hacerla estacionaria. 1 término de media móvil (MA).

(1,0,0)[12]: Parte estacional con periodicidad 12 (mensual si los datos son mensuales): 1 término autorregresivo estacional (SAR). 0 diferenciaciones estacionales. 0 términos de media móvil estacionales (SMA).

El modelo SARIMA(0,1,1)(1,0,0)[12] sugiere que:

  • La serie tiene una tendencia no estacionaria, corregida con una diferenciación.
  • Existe una influencia significativa del error pasado (MA(1)).
  • Hay un componente estacional autorregresivo fuerte cada 12 períodos.
  • El ajuste es adecuado según los criterios AIC y BIC, pero se podría comparar con otros modelos para mejorar la predicción.

Identificación dautomática del modelo SARIMA

## Series: train_ts 
## ARIMA(1,1,1)(2,0,0)[12] 
## 
## Coefficients:
##          ar1      ma1    sar1    sar2
##       0.4545  -0.8185  0.3467  0.1637
## s.e.  0.1799   0.1269  0.0900  0.0985
## 
## sigma^2 = 32.56:  log likelihood = -419.94
## AIC=849.89   AICc=850.36   BIC=864.34

A continuación, se crea el objeto darima para luego poder graficar los valores reales y observados:

## Series: train_ts 
## ARIMA(1,1,1)(2,0,0)[12] 
## 
## Coefficients:
##          ar1      ma1    sar1    sar2
##       0.4545  -0.8185  0.3467  0.1637
## s.e.  0.1799   0.1269  0.0900  0.0985
## 
## sigma^2 = 32.56:  log likelihood = -419.94
## AIC=849.89   AICc=850.36   BIC=864.34
## 
## Training set error measures:
##                    ME     RMSE      MAE      MPE     MAPE     MASE         ACF1
## Training set 0.468532 5.598699 3.873359 0.141165 4.090038 0.693648 -0.007586797

Validación de residuales del modelo automatico SARIMA

En el correlograma de residuos siguiente se observa que, mejora la correlación de los residuos frente a lso dos modelos anteriores. Sin embargo, al comparar los valores reales VS pronosticados se determina una poca coincidencia. Sigue funcionando mejor el modelo automatico (4,1,2)

## 
##  Ljung-Box test
## 
## data:  Residuals from ARIMA(1,1,1)(2,0,0)[12]
## Q* = 24.66, df = 20, p-value = 0.2147
## 
## Model df: 4.   Total lags used: 24

Pronóstico con el modelo SARIMA dentro del set de prueba-Gráfico líneas

Pronóstico del modelo automático SARIMA en el set de prueba-Tabla

##      Tiempo Observado Pronosticado
## 1  2023.167  120.2487     119.4399
## 2  2023.250  107.7626     116.8869
## 3  2023.333  116.5034     116.2980
## 4  2023.417  112.3158     119.5030
## 5  2023.500  112.1142     122.1173
## 6  2023.583  116.7636     124.8845
## 7  2023.667  116.6099     124.1465
## 8  2023.750  117.1116     124.0130
## 9  2023.833  116.2565     124.0098
## 10 2023.917  112.2879     122.6949
## 11 2024.000  104.0787     116.9322
## 12 2024.083  107.8316     117.7907
## 13 2024.167  106.8041     122.9436
## 14 2024.250  111.8613     120.8268
## 15 2024.333  112.3880     121.5018
## 16 2024.417  106.7647     122.2491
## 17 2024.500  114.3399     123.5720
## 18 2024.583  114.4751     125.6493
## 19 2024.667  111.7730     125.0187
## 20 2024.750  118.3544     124.8302
## 21 2024.833  114.7283     124.7665
## 22 2024.917  114.3219     123.6527
## 23 2025.000  106.0656     119.7907
## 24 2025.083  106.7854     120.3554
## 25 2025.167  112.3091     123.6091
## 26 2025.250  108.2944     122.4573
## 27 2025.333  116.0095     122.5949
## 28 2025.417  108.9988     123.3787
## 29 2025.500  121.2317     124.2653
## 30 2025.583  115.6427     125.4384
## 31 2025.667  117.6000     125.0990
## 32 2025.750  120.4760     125.0118
## 33 2025.833  115.4923     124.9892
## 34 2025.917  113.6208     124.3878

Pronóstico del modelo automático SARIMA fuera de muestra, es decir, en enero 2025

Es decir, le sumamos al periodo de prueba una observación más. Es decir, se estan pronosticando 4 observaciones o meses.

##      Tiempo Pronostico
## 1  2023.167   119.4399
## 2  2023.250   116.8869
## 3  2023.333   116.2980
## 4  2023.417   119.5030
## 5  2023.500   122.1173
## 6  2023.583   124.8845
## 7  2023.667   124.1465
## 8  2023.750   124.0130
## 9  2023.833   124.0098
## 10 2023.917   122.6949
## 11 2024.000   116.9322
## 12 2024.083   117.7907
## 13 2024.167   122.9436
## 14 2024.250   120.8268
## 15 2024.333   121.5018
## 16 2024.417   122.2491
## 17 2024.500   123.5720
## 18 2024.583   125.6493
## 19 2024.667   125.0187
## 20 2024.750   124.8302
## 21 2024.833   124.7665
## 22 2024.917   123.6527
## 23 2025.000   119.7907
## 24 2025.083   120.3554
## 25 2025.167   123.6091
## 26 2025.250   122.4573
## 27 2025.333   122.5949
## 28 2025.417   123.3787
## 29 2025.500   124.2653
## 30 2025.583   125.4384
## 31 2025.667   125.0990
## 32 2025.750   125.0118
## 33 2025.833   124.9892
## 34 2025.917   124.3878
## 35 2026.000   122.1056
## [1] "Pronóstico para enero 2025: 2026 = 122.105580447477"

Conclusión: