Skip to content
Sequential Monte Carlo algorithm for approximation of posterior distributions.
Julia
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs update license formatting Sep 10, 2019
examples Fixing examples Dec 13, 2019
src Only draw from prior and concatenate clouds if want to draw something… Mar 12, 2020
test Update tests with bridging Mar 12, 2020
.gitignore Initial commit Jul 28, 2019
.travis.yml Remove 0.7 testing Mar 12, 2020
LICENSE Initial commit Jul 28, 2019
Manifest.toml Adding Manifest to try and get it to use proper DSGE.jl version Mar 12, 2020
NEWS.md Update NEWS.md Mar 12, 2020
Project.toml Add compat entries Mar 12, 2020
README.md Update README Dec 10, 2019

README.md

SMC.jl

Build Status

Sequential Monte Carlo

This package implements the Sequential Monte Carlo (SMC) sampling algorithm, an alternative to Metropolis Hastings Markov Chain Monte Carlo sampling for approximating posterior distributions. The SMC algorithm implemented here is based upon Edward Herbst and Frank Schorfheide's paper "Sequential Monte Carlo Sampling for DSGE Models" and the code accompanying their book, Bayesian Estimation of DSGE Models. More information and the original MATLAB scripts from which this code was derived can be found at Frank Schorfheide's website.

Our implementation features what we term generalized tempering for "online" estimation, as outlined in our recent paper, "Online Estimation of DSGE Models." For a broad overview of the algorithm, one may refer to the following Liberty Street Economics article.

Comments and suggestions are welcome, and best submitted as either an issue or a pull request. ☝️

Installation and Versioning

SMC.jl is a registered Julia package in the General registry, compatible with Julia v0.7, v1.0, and v1.1. To install it, open your Julia REPL, type ] to enter the package manager, and run

pkg> add SMC

Usage

The package requires our auxiliary package, ModelConstructors.jl, which contains useful data structures for creating custom models (e.g. Parameter, State, Observable, Setting types).

For examples of how to set up a model in the form SMC can estimate, see scripts in the examples/ folder.

Disclaimer

Copyright Federal Reserve Bank of New York. You may reproduce, use, modify, make derivative works of, and distribute and this code in whole or in part so long as you keep this notice in the documentation associated with any distributed works. Neither the name of the Federal Reserve Bank of New York (FRBNY) nor the names of any of the authors may be used to endorse or promote works derived from this code without prior written permission. Portions of the code attributed to third parties are subject to applicable third party licenses and rights. By your use of this code you accept this license and any applicable third party license.

THIS CODE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT ANY WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. FRBNY IS NOT, UNDER ANY CIRCUMSTANCES, LIABLE TO YOU FOR DAMAGES OF ANY KIND ARISING OUT OF OR IN CONNECTION WITH USE OF OR INABILITY TO USE THE CODE, INCLUDING, BUT NOT LIMITED TO DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, PUNITIVE, SPECIAL OR EXEMPLARY DAMAGES, WHETHER BASED ON BREACH OF CONTRACT, BREACH OF WARRANTY, TORT OR OTHER LEGAL OR EQUITABLE THEORY, EVEN IF FRBNY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES OR LOSS AND REGARDLESS OF WHETHER SUCH DAMAGES OR LOSS IS FORESEEABLE.

You can’t perform that action at this time.