A package for solving, filtering and estimating linear DSGE models with the ZLB (or other occasionally binding constraints).

The set of methods is introduced in the paper Estimation of DSGE Models with the Effective Lower Bound (Gregor Boehl & Felix Strobel, 2023, JEDC), where we also estimate the medium-scale New Keynesian model to post-2008 US data.

Check out my Econpizza package if you are interested in simulating nonlinear DSGE models with (or without) heterogeneous agents.

A collection of models that can be (and were) used with this package can be found in another repo.


Installing the stable version is as simple as typing

pip install pydsge

in your terminal (Linux/MacOS) or Anaconda Prompt (Win).


Documentation can be found on ReadTheDocs:


pydsge is developed by Gregor Boehl to simulate, filter, and estimate DSGE models with the zero lower bound on nominal interest rates in various applications (see my website for research papers using the package). Please cite it with

  title = {{Estimation of DSGE Models with the Effective Lower Bound}},
  author = {Boehl, Gregor and Strobel, Felix},
  journal = {Journal of Economic Dynamics and Control},
  volume = {158},
  year = {2022},
  publisher = {Elsevier}
  title = Efficient solution and computation of models with occasionally binding constraints},
  author = {Boehl, Gregor},
  journal = {Journal of Economic Dynamics and Control},
  volume = {143},
  year = {2022},
  publisher = {Elsevier}

We appreciate citations for pydsge because it helps us to find out how people have been using the package and it motivates further work.


The parser originally was a fork of Ed Herbst’s fork from Pablo Winant’s (excellent) package dolo.

See EconForge/dolo and eph.


Boehl, Gregor (2022). Efficient Solution and Computation of Models with Occasionally Binding Constraints. Journal of Economic Dynamics and Control