die-bg / hemi.jl Goto Github PK
View Code? Open in Web Editor NEWHerramienta de evaluación estadística de medidas de inflación subyacente utilizando el lenguaje de programación Julia.
Home Page: https://die-bg.github.io/HEMI.jl/dev
Herramienta de evaluación estadística de medidas de inflación subyacente utilizando el lenguaje de programación Julia.
Home Page: https://die-bg.github.io/HEMI.jl/dev
Como referencia, dejo la ubicación en run_batch
donde se almacenan los resultados.
Escenario E: obtención de medidas para evaluación fuera de muestra.
Los parámetros de configuración en este caso son los siguientes:
ff = Date(2018, 12)
InflationTotalRebaseCPI(60)
].ResampleSBB(36)
], con tamaño de bloque esperado igual a 36.SimConfig
].Realizar un script para determinar el número de simulaciones del ejercicio base utilizando los siguientes parámetros:
Implementación de la función de inflación para percentiles equiponderados y ponderados.
Actualmente existe una versión implementada para percentiles equiponderados que funciona bastante bien. De manera similar, se debe implementar la versión ponderada
Agregar medida de inflación para media ponderada interanual
Se podría utilizar PrettyTables para mostrar parte de las series de tiempo de las variaciones intermensuales o de los índices de precios.
Agregar opción en SimConfig
y tipos para implementar evaluación en diferentes períodos en evalsim
. La implementación debe ser transparente para lo implementado hasta el momento, a menos que se desee configurar los períodos manualmente.
Escenario E: obtención de medidas para evaluación fuera de muestra.
Los parámetros de configuración en este caso son los siguientes:
ff = Date(2018, 12)
InflationTotalRebaseCPI(60)
].ResampleSBB(36)
], con tamaño de bloque esperado igual a 36.SimConfig
].El proyecto de DependentBootstrap.jl está agregado con un fork de @r2cp, porque el proyecto original mantiene el manifiesto y no permite actualizar los paquetes. Debido a que este paquete, como el de Bootstrap.jl se utilizaron en la etapa de investigación de métodos de remuestreo, se propone quitarlos del proyecto principal y crear un ambiente separado en el directorio de investigación de métodos de bootstrap.
Implementación de la función de inflación de exclusión fija de gastos básicos. Se puede utilizar como parámetros los números de gastos básicos a excluir. Estos números corresponden a la columnas en las matrices v
de los tipos VarCPIBase
.
Escenario E: obtención de medidas para evaluación fuera de muestra.
Los parámetros de configuración en este caso son los siguientes:
ff = Date(2018, 12)
InflationTotalRebaseCPI(60)
].ResampleSBB(36)
], con tamaño de bloque esperado igual a 36.SimConfig
].Evaluación de metodología basada en el método de exclusión dinámica de gastos básicos utilizando los siguientes criterios:
Período de evaluación: completo
Período final de evaluación: diciembre de 2020
Estadístico de evaluación: MSE
Número de simulaciones: 125,000
Función de tendencia: caminata aleatoria calibrada
Trayectoria de inflación paramétrica: Variación interanual del IPC con cambios de base
Método de remuestreo: block bootstrap estacionario con tamaño de bloque 36 y metodología de remuestreo por meses de ocurrencia.
Actualmente, en types.jl
los tipos concretos de AbstractCPIBase
utilizan el campo de de fechas
en español, mientras que la mayoría de funciones y tipos están en inglés. Algunos comentarios al inicio del proyecto están en inglés, mientras que otros están en español. Sería bueno definir concretamente el estilo del código. Se podría utilizar el siguiente esquema de reglas para el código:
gentrayinfl
podría ser un poco más legible que gentrajinfl
.Son bienvenidos los comentarios.
Evaluación de medidas de exclusión fija (05/08/2021):
- Escenario A: Replicar el trabajo efectuado en 2020 - criterios básicos a dic-19
- Escenario B: Extender el trabajo efectuado en 2020 - criterios básicos a dic-20
- Escenario C: Evaluación de criterios básicos a dic-20 - cambio de parámetro
- Escenario D: Evaluación de criterios básicos a dic-20 - remuestreo de bloques
Implementación de las función de inflación para obtener la media truncada equiponderada con recortes especificados.
Construcción de la medida de inflación de media simple de las variaciones intermensuales de índices de precios.
Escenario D: Evaluación de criterios básicos a dic-20 - remuestreo de bloques
Documentación de resultados
URLs amigables en archivos de documentación de percentiles
Implementación de la función de inflación subyacente MAI. Debido a que esta medida es más compleja, podría ser buena idea utilizar un módulo dentro de InflationFunctions
para implementar todas las funciones y solamente reexportar la medida de inflación final.
Utilizar las medidas óptimas del escenario A para replicar los ponderadores y la trayectoria subyacente óptima MSE 2019.
Incluir:
Evaluación de metodologías de inflación total utilizando los siguientes criterios:
Período de evaluación: completo
Período final de evaluación: diciembre de 2020
Estadístico de evaluación: MSE
Número de simulaciones: 125,000
Función de tendencia: caminata aleatoria calibrada
Trayectoria de inflación paramétrica: Variación interanual del IPC con cambios de base
Método de remuestreo: block bootstrap estacionario con tamaño de bloque 36 y metodología de remuestreo por meses de ocurrencia.
Mover definiciones a un archivo diferente al de tipos CPIBase.
Se propone utilizar un generador de números aleatorios estable en versión para que al cambiar de versiones de Julia se puedan reproducir los resultados.
Revisar script de MATLAB y crear script similar en JULIA para ampliar el vector de caminata aleatoria.
Refactorizar campo de fechas en VarCPIBase para denotarlo en inglés.
Warning al construir documentación, nombre de las imágenes no coincide con nombre indicado en archivo de Markdown. Cambiar nombre a los archivos de imágenes o en el markdown de resultados de la medida de exclusión fija.
Implementar una TrendFunction
con una interfaz general para aplicarse sobre los objetos CountryStructure
y VarCPIBase
. Similar a la ResampleFunction
.
Se debe extender method_name
de esta función de remuestreo.
Se propone agregar a la configuración de simulación la función de inflación para aplicar a los datos paramétricos.
Agregar el número de simulaciones en método show de SimConfig.
Implementar función de inflación para obtener la medida de exclusión dinámica de productos, tomando en cuenta dos límites que indican el número de desviaciones estándar respecto del promedio de cada mes.
Se propone construir una medida de inflación que funcione como una envolvente (wrapper) de otra medida de inflación y compute una media móvil aplicando la metodología de suavizamiento exponencial. La medida debe recibir otra función de inflación y el parámetro de suavizamiento, por ejemplo:
inflfn = InflationExpSmoothing(InflationTotalCPI(), 0.75)
Con la metodología de la HEMI se puede encontrar el parámetro de suavizamiento óptimo.
Agregar las métricas de descomposición aditiva del MSE
Las dos técnicas para obtener los promedios históricos en ResampleSBB son:
La aproximación de promedio único tiene la ventaja de ser inmediatamente extensible al agregar una nueva base a un CountryStructure
.
Implementación de las función de inflación para obtener la media truncada ponderada con recortes especificados.
Escenario D: Evaluación de criterios básicos a dic-20 - remuestreo de bloques
Documentación de resultados.
Escenario E: obtención de medidas para evaluación fuera de muestra.
Los parámetros de configuración en este caso son los siguientes:
ff = Date(2018, 12)
InflationTotalRebaseCPI(60)
].ResampleSBB(36)
], con tamaño de bloque esperado igual a 36.SimConfig
].Evaluación de metodología basada en el método de muestra ampliada utilizando los siguientes criterios:
Período de evaluación: completo
Período final de evaluación: diciembre de 2020
Estadístico de evaluación: MSE
Número de simulaciones: 125,000
Función de tendencia: caminata aleatoria calibrada
Trayectoria de inflación paramétrica: Variación interanual del IPC con cambios de base
Método de remuestreo: block bootstrap estacionario con tamaño de bloque 36 y metodología de remuestreo por meses de ocurrencia.
savename
con este tipo para generar nombres de archivos de resultados.Evaluación de metodologías basadas en percentiles utilizando los siguientes criterios:
Implementar una función que reciba las trayectorias de simulación y la trayectoria paramétrica, o bien, generar la trayectoria paramétrica con #30. El resultado de dicha función deben ser los estadísticos de evaluación:
Los estadísticos de evaluación se deben obtener en la muestra de simulación. Posiblemente se tendrá que implementar otra función para obtener los estadísticos de evaluación en los períodos utilizados para el proceso de validación cruzada.
Realizar un programa de evaluación utilizando criterios básicos:
Lista de tareas:
Evaluación de metodologías basadas en medias truncadas utilizando los siguientes criterios:
Guía:
Escenario E: obtención de medidas para evaluación fuera de muestra.
Los parámetros de configuración en este caso son los siguientes:
ff = Date(2018, 12)
InflationTotalRebaseCPI(60)
].ResampleSBB(36)
], con tamaño de bloque esperado igual a 36.SimConfig
].¿Se pueden añadir otros parámetros al SimConfig
?
Esto para queevalsim
, makesim
y run_batch
puedan recibir un diccionario con variantes que incluyan la data, parámetro de inflación y semilla.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.