This is a repo for the C++ program that implements the Bayesian GMM estimator of Gallant, Giacomini and Ragusa (2017). The program heavily relies on Gallant's MLE package.
-
base_model: this folder contains the heart of the MCMC estimator. In principle, this part should be independent from the specific project.
- initialize: reads the InputParamFile (example) and defines the specification class
- source files:
main.cpp
,initialize.cpp
- header files:
initialize.h
- source files:
- estimator: elements of the mcmc sampler/optimizer, it generates the mcmc class
- source files:
asymptotics.cpp
,mcmc_class.cpp
,proposal.cpp
- header files:
estimator_base.h
,estimator.h
- source files:
- libscl: slightly altered version of Gallant's statistical library (including the gmm class)
- initialize: reads the InputParamFile (example) and defines the specification class
-
xxx.example: these foders belong to separate projects (indicated by the prefix
xxx
). In addition to the subfolders detailed below, they contain (1) the makefile that generates the executablebayes_gmm
, (2) the InputParamFile detailing the specifics of the estimator (3) a python script generating summary statistics and plots from the result files. Each project directory must contain three subfolders:- data: this contains the data (in the file named
data.dat
; variables in columns separated by whitespaces) and theinitial_particle.dat
file containing an intial draw of particles for the conditional particle filter. - usermodel: defines the usermodel class
- source files:
usermodel.cpp
,moments.cpp
,model.cpp
,default_params.cpp
- header files:
usermodel.h
,moments.h
,model.h
,default_params.h
- source files:
- result_files: a plethora of
.dat
files generated by the estimator for diagnoses and further analyses. It has a subfolder with figures and summary tables generated byplot_generator.py
- data: this contains the data (in the file named