A34-Aplicación del Filtro de Hodrick Prescott

1. Implementación personalizada del Filtro de Hodrick Prescott, para la serir temporal de Costa rica (1992-2024)

library(dplyr)
library(readxl)
library(mFilter)
library(forecast)
# Carga de los datos 
PIB_trimestral <- read_excel("datos_PIB_trim_CA.xlsx", skip = 5)

PIB_trimestral_CR <- PIB_trimestral %>% select(`PIB trimestral en constantes...2`) 

PIB_trim<-ts(PIB_trimestral_CR,start = c(1991,1),frequency = 4)
# Aplica el filtro de Hodrick-Prescott
# Ajusta el parámetro lambda resegún la frecuencia de los datos, 1600 para datos trimestrales. 
hp_result <- hpfilter(PIB_trim, freq = 1600)
# Extrae la tendencia y el componente cíclico
trend <- hp_result$trend
cycle <- hp_result$cycle

plot(PIB_trim, type = "l", main = "Análisis del PIB - Costa Rica", ylab = "PIB (millones de USD)", xlab = "Tiempo")
lines(trend, col = "blue", lwd = 2)
legend("topleft", legend = c("Serie Original", "Tendencia (Filtro HP)"), col = c("black", "red"), lty = 1, lwd = 2)

1.1 Extracción del componente ciclo (Costa rica)

plot(cycle, type = "l", main = "Componente Ciclico", ylab = "Ciclo", xlab = "Tiempo")

## 1.2 Implementación rapida de los gráficos (Costa Rica)

plot(hp_result,ask = FALSE)

2. Aplicación del Filtro de Hodrick Prescott para serie temporal de El salvador. salvador (1991,2024)

PIB_trimestral_SV<- PIB_trimestral %>% select(`PIB trimestral en constantes...3`) 

PIB_trim_SV <- ts(PIB_trimestral_SV,start = c(1991,1),frequency = 4)

# Aplica el filtro de Hodrick-Prescott

# Ajusta el parámetro lambda según la frecuencia de los datos, 1600 para datos trimestrales. 

hp_result_sv <- hpfilter(PIB_trim_SV, freq = 1600)
# Extrae la tendencia y el componente cíclico
trend_sv <- hp_result_sv$trend
cycle_sv <- hp_result_sv$cycle

plot(PIB_trim_SV, type = "l", main = "Análisis del PIB - El salvador",ylab = "PIB (millones de USD)", xlab = "Tiempo")
lines(trend_sv, col = "blue", lwd = 2)
legend("topleft", legend = c("Serie Original", "Tendencia (Filtro HP)"),col = c("black", "red"), lty = 1, lwd = 2)

2.1 Extracción del componente cíclico El salvador

plot(cycle_sv, type = "l", main = "Componente Ciclico", ylab = "Ciclo", xlab = "Tiempo")

## 2.2 Implementación rápida de los graficos (El salvador)

plot(hp_result_sv,ask = FALSE)

# 3. Aplicación del Filtro de Hodrick Prescott para serie temporal de Guatemala (1991-2024)

PIB_trimestral_GT <- PIB_trimestral %>% select(`PIB trimestral en constantes...4`) 

PIB_trim_GT <- ts(PIB_trimestral_GT ,start = c(1991,1),frequency = 4)

# Aplica el filtro de Hodrick-Prescott

# Ajusta el parámetro lambda según la frecuencia de los datos, 1600 para datos trimestrales. 

hp_result_GT <- hpfilter(PIB_trim_GT, freq = 1600)
# Extrae la tendencia y el componente cíclico
trend_gt <- hp_result_GT$trend
cycle_gt <- hp_result_GT$cycle


# Visualiza los resultados
plot(PIB_trim_GT, type = "l", main = "Análisis de serie temporal, para el PIB a precios corrientes, Guatemala (1991-2024)", ylab = "PIB", xlab = "Tiempo")
lines(trend_gt, col = "red", lwd = 2)
legend("topleft", legend = c("PIB Original", "Tendencia (Filtro HP)"), col = c("black", "red"), lty = 1, lwd = 2)

## 3.1 Extracción del componente cíclico ( Guatemala)

plot(cycle_gt, type = "l", main = "Componente Ciclico", ylab = "Ciclo", xlab = "Tiempo")

## 3.2 Implementación rapida de los gráficos(Guatemala)

plot(hp_result_GT,ask = FALSE)

4. Aplicación del Filtro de Hodrick Prescott para serie temporal de Honduras (1991-2024)

PIB_trimestral_HN <- PIB_trimestral %>% select(`PIB trimestral en constantes...5`) 

PIB_trim_HN <- ts(PIB_trimestral_HN ,start = c(1991,1),frequency = 4)

# Aplica el filtro de Hodrick-Prescott

# Ajusta el parámetro lambda según la frecuencia de los datos, 1600 para datos trimestrales. 

hp_result_HN <- hpfilter(PIB_trim_HN, freq = 1600)
# Extrae la tendencia y el componente cíclico
trend_hn <- hp_result_HN$trend
cycle_hn <- hp_result_HN$cycle


# Visualiza los resultados
plot(PIB_trim_HN, type = "l", main = "Análisis de serie temporal, para el PIB a precios corrientes, Guatemala (1991-2024)", ylab = "PIB", xlab = "Tiempo")
lines(trend_hn, col = "red", lwd = 2)
legend("topleft", legend = c("PIB Original", "Tendencia (Filtro HP)"), col = c("black", "red"), lty = 1, lwd = 2)

4.1 Extracción del componente ciclico (Honduras)

plot(cycle_hn, type = "l", main = "Componente Ciclico", ylab = "Ciclo", xlab = "Tiempo")

4.2 Implementación rápida de los graficos (Honduras)

plot(hp_result_HN,ask = FALSE)

5 Aplicación del Filtro de Hodrick Prescott para serie temporal de Nicaragua (1991-2024)

PIB_trimestral_NC <- PIB_trimestral %>% select(`PIB trimestral en constantes...6`) 

PIB_trim_NC <- ts(PIB_trimestral_NC ,start = c(1991,1),frequency = 4)

# Aplica el filtro de Hodrick-Prescott

# Ajusta el parámetro lambda según la frecuencia de los datos, 1600 para datos trimestrales. 

hp_result_NC <- hpfilter(PIB_trim_NC, freq = 1600)
# Extrae la tendencia y el componente cíclico
trend_nc <- hp_result_NC$trend
cycle_nc <- hp_result_NC$cycle


# Visualiza los resultados
plot(PIB_trim_NC, type = "l", main = "Análisis de serie temporal, para el PIB a precios corrientes, Guatemala (1991-2024)", ylab = "PIB", xlab = "Tiempo")
lines(trend_nc, col = "red", lwd = 2)
legend("topleft", legend = c("PIB Original", "Tendencia (Filtro HP)"), col = c("black", "red"), lty = 1, lwd = 2)

5.1 Extracción del componente cíclico (Nicaragua)

plot(cycle_nc, type = "l", main = "Componente Ciclico", ylab = "Ciclo", xlab = "Tiempo")

5.2 Implementación rápida de los gráficos (Nicaragua)

plot(hp_result_NC,ask = FALSE)

6. Aplicación del Filtro de Hodrick Prescott para serie temporal de República Dominicana. (1991-2024)

library (dplyr)
PIB_trimestral_RD <- PIB_trimestral %>% select(`PIB trimestral en constantes...7`) 

PIB_trim_RD <- ts(PIB_trimestral_RD ,start = c(1991,1),frequency = 4)

# Aplica el filtro de Hodrick-Prescott

# Ajusta el parámetro lambda según la frecuencia de los datos, 1600 para datos trimestrales. 

hp_result_RD <- hpfilter(PIB_trim_RD, freq = 1600)
# Extrae la tendencia y el componente cíclico
trend_rd <- hp_result_RD$trend
cycle_rd <- hp_result_RD$cycle


# Visualiza los resultados
plot(PIB_trim_RD, type = "l", main = "Análisis de serie temporal, para el PIB a precios corrientes, Guatemala (1991-2024)", ylab = "PIB", xlab = "Tiempo")
lines(trend_rd, col = "red", lwd = 2)
legend("topleft", legend = c("PIB Original", "Tendencia (Filtro HP)"), col = c("black", "red"), lty = 1, lwd = 2)

6.1 Extracción del componente cíclico (República Dominicana)

plot(cycle_rd, type = "l", main = "Componente Ciclico", ylab = "Ciclo", xlab = "Tiempo")

6.2 Implementación rápida de los gráficos (República Dominicana)

plot(hp_result_RD,ask = FALSE)

7. Aplicación del Filtro de Hodrick Prescott para serie temporal de Panamá. (1991-2024)

PIB_trimestral_PAN <- PIB_trimestral %>% select(`PIB trimestral en constantes...8`) 

PIB_trim_PAN <- ts(PIB_trimestral_PAN ,start = c(1991,1),frequency = 4)

# Aplica el filtro de Hodrick-Prescott

# Ajusta el parámetro lambda según la frecuencia de los datos, 1600 para datos trimestrales. 

hp_result_pan <- hpfilter(PIB_trim_PAN,  freq = 1600)
# Extrae la tendencia y el componente cíclico
trend_pan <- hp_result_pan$trend
cycle_pan <- hp_result_pan$cycle


# Visualiza los resultados
plot(PIB_trim_PAN, type = "l", main = "Análisis de serie temporal, para el PIB a precios corrientes, Guatemala (1991-2024)", ylab = "PIB", xlab = "Tiempo")
lines(trend_pan, col = "red", lwd = 2)
legend("topleft", legend = c("PIB Original", "Tendencia (Filtro HP)"), col = c("black", "red"), lty = 1, lwd = 2)

7.1 Extracción del componente cíclico(Panamá)

plot(cycle_pan, type = "l", main = "Componente Ciclico", ylab = "Ciclo", xlab = "Tiempo")

7.2 Implementación rápida de los gráficos (Panamá)

plot(hp_result_pan,ask = FALSE)