Introducción a la Programación en Julia

Segundo Semestre de 2019

Descripción

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