Introducción a la Programación en Julia

Mauricio M. Tejada

ILADES - Universidad Alberto Hurtado


Descripción

Este curso enseña programación en Julia a aquellos que tienen muy poca o ninguna experiencia previa en el tema. Julia es usado como programa base porque es fácil de aprender, es versátil, es eficiente y es muy útil para el análisis numérico. Además es gratuito. Cómo complemento, a lo largo del curso se presentarán diversas aplicaciones a problemas económicos. El curso requiere que el alumno acompañe las clases con su computador para replicar los ejercicios y aplicaciones provistas.

Contenidos

  1. Motivación
  2. Primeros Pasos en Julia
    • Interactuando con Julia.
    • Ayuda.
    • Paquetes.
    • Comentarios.
    • Variables.
    • Operaciones Matemáticas Básicas.
    • Estructura de Datos.
    • Imprimir Resultados en Pantalla.
    • Elementos Básicos para Graficar.
  3. Matrices
    • Secuencias.
    • Matrices Especiales.
    • Operaciones con Matrices.
    • Referenciación y Submatrices.
    • Concatenar Matrices.
    • Arreglos de Mayor Dimensión.
  4. Funciones de Julia
    • Funciones Escalares.
    • Funciones Vectoriales.
    • Funciones Matriciales.
  5. Importando y Exportando Datos
  6. Aplicaciones I
    • Modelo Insumo-Producto.
    • Equilibrio de Mercado con Dos Bienes.
    • Mínimos Cuadrados Ordinarios.
  7. Programar en Julia
    • jl-files.
    • Funciones.
    • Loops.
    • Condicionales y Operadores Lógicos.
  8. Aplicaciones II
    • Flujos vs. Stocks.
    • Ciclos Económicos.
    • La Curva de Laffer.
    • El Modelo de la Telaraña.
  9. Diferenciación e Integración Numérica
    • Diferenciación.
    • Integración.
  10. Ecuaciones No Lineales
    • Métodos Numéricos y Ecuaciones No Lineales: Ideas Básicas.
    • Las Funciones fzero y nlsolve.
  11. Optimización
    • Métodos Numéricos de Optimización: Ideas Básicas.
    • Paquetes de Optimización de Julia (Optim y JuMP).
  12. Aplicaciones III
    • Aproximación lineal de una Función
    • Esperanza Matemática.
    • Duopolio de Cournot.
    • Estimación por Máximo Verosimilitud.
    • El Problema de Maximización del Consumidor.
  13. Tipos de Variables en Julia
    • Despacho Múltiple
    • Tipos Compuestos

Todos los notebooks pueden ser descargados de Github.

El siguiente script contiene todos los paquetes utilizados en este curso (y algunos adicionales bastante útiles).

Referencias

  • La fuente primaria de referencia es el manual de Julia y el de sus paquetes.
  • Petre Caraiani (2019): Introduction to Quantitative Macroeconomics Using Julia. ScienceDirect Press. [Página Web]

Referencias útiles sobre métodos computacionales en Matlab

  • Mario J. Miranda & Paul L. Fackler (2002): Applied Computational Economics and Finance. MIT Press. [Página Web] [CompEcon Toolbox]
  • Abi, Adams, Damian Clarke & Simon Quinn (2015): Microeconometrics and Matlab. Oxford University Press. [Página Web]

Otras referencias o páginas web útiles:

  • Jesús Fernández-Villaverde, Profesor de la Universidad de Pennsylvania, tiene un curso de economía computacional y le dedica un capítulo a Julia. Adicionalmente, hace disponible un script con diversos ejemplos de procedimientos en Julia. La página con el curso completo puede ser encontrada aquí (Computational Methods in Economics).
  • Thomas J. Sargent y John Stachurski tienen un sin fin de lecturas y ejemplos en Julia y Python en el marco su proyecto Quantecon.
  • Anthony Smith, profesor de la Universidad de Yale, tiene unos consejos muy útiles para realizar un buen trabajo computacional. Ver el PDF aquí.
  • JuliaDocs pone a disposición una hoja de consulta rápida, la misma que se puede encontrar aquí.