Economics and quantitative methods
Computational tools are an inescapable component of modern economic research. I have contributed to a number of open-source software projects to improve freely available time series econometrics software. These contributions include:
- Estimation of state space models (Statsmodels)
- Estimation of Markov switching models (Statsmodels)
- Wishart random variables and sampling (Scipy)
Kalman Filter | SARIMAX | Unobserved Components | Diagnostics | VAR, Dynamic Factors | Metropolis-Hastings |
| May, 2014 | | August, 2014 | | April, 2015 | | June, 2015 | | July, 2015 | | August, 2015 |
Statsmodels: State space models and the Kalman filter
Summary: I contributed a module to the Statsmodels project which allows (1) specification of state space models, (2) fast Kalman filtering of those models, and (3) easy estimation of parameters via maximum likelihood estimation. See below for details.
For a longer description of these types of models, a discussion of the implementation in Statsmodels, and example code, see the following link (note: the content at this link used to be on this page): Implementing state space models for Statsmodels
For more information about state space models in Python::
- State space models in Python - this post describes the general approach that was taken in creating the
statespace
approach in Statsmodels, and gives example code for the local linear trend model. - State space diagnostics - this post describes diagnostic statistics for state space models.
- Bayesian state space estimation via Metropolis-Hastings - this post describes estimation of state space models via Metropolis-Hastings (Bayesian posterior simulation).
- Estimating an RBC model - this post provides an example of setting up, solving, and estimating a simple RBC model using the
statespace
library in Statsmodels.
Statsmodels: Markov switching dynamic regression and autoregression
Summary: I contributed MarkovRegression
and MarkovAutoregression
classes to the Statsmodels project allowing maximum likelihood estimation of
these classes of models.
For more information about these Markov switching models:
- Markov dynamic regression models - Examples and discussion of Markov switching dynamic regression models.
- Markov autoregression models - Examples and discussion of Markov switching autoregression models.
Scipy: Wishart random variables and sampling
Summary: I contributed wishart
and invwishart
classes to the Scipy
project allowing evaluation of properties of these random variables (PDF,
entropy, etc.) as well as the drawing of random samples from these
distributions. These can be useful in a variety of settings, including Gibbs
sampling approach to estimating covariance matrices in state space models.