This is a Python library to calibrate, estimate and analyze linearized DSGE models. The interface is inpired by the dynare interface which allows for symbolic declarations of the variables and equations. The implemented bayesian estimation method uses markov chain monte carlo (MCMC) to simulate the posterior distributions of the parameters. This library is an effort to bring the DSGE toolset into the open-source world in a fully python implementation, which allows to fully embrace the advantages of the programming language when working with DSGEs.
You can install this development version using:
pip install git+https://github.com/gusamarante/pydsge.git#egg=pydsge
A stable verion will be available soon
A full example on how to use this library with a small New Keynesian model is available in this Jupyter notebook. The model used in the example is descibred briefly by the following equations:
For now, the model equations have to be linearized around its steady-state. Soon, there will be a functionality that allows for non-linearized declaration of the equilibrium conditions and simplified variable name declaration.
The solution method used is based on the implementation of Christopher A. Sims' gensys
function. You can find the
author's original matlab code here. The paper explaining the solution
method is this one.
The models are estimated using Bayesian methdos, specifically, by simulating the posterior distribution using MCMC sampling. Simulations are typically long, so there is a functionality that allows you to stop a simulation and continue it later from where it stoped.
Since there is symbolic declaration of variables and equations, methdos involving them are slow, so the MCMC methods typically take a long time to run. Although there is a lot room for improvement for the efficiency of these estimation algorithms.
If you would like to contribute to this repository, plese check the contributing guidelines here. A list of feature suggestions is available on the projects page of this repository.
If you need more information and help, specially about contributing, you can contact Gustavo Amarante on developer@pydsge.com