Deep-MacroFin is a comprehensive deep-learning framework designed to solve equilibrium economic models in continuous time. The library leverages deep learning to alleviate curse of dimensionality.
Documentation: mkdocs
All the code are under deep_macrofin
, and the tests are under tests
The project is now configured with poetry for dependency management and packaging. To install the dependencies and run the code:
poetry config virtualenvs.in-project true --local # this sets the virtual environment path to be in the local directory.
poetry shell # creates the virtual environment
poetry install --no-interaction # installs the dependencies and the package
## You can now run the tests using the command:
pytest tests
To run the code and tests locally without poetry:
python -m venv venv
source venv/bin/activate # venv/Scripts/activate using Windows powershell
pip install -r requirements.txt
pip install -r requirements-dev.txt
pip install -r requirements-doc.txt
For easier testing, you can create a file in the root folder of the project, and import functions from deep_macrofin
.
To properly run all tests in the tests/
folder
pip install -e .
pytest tests/
Various examples using the library, with comparisons to DeepXDE and PyMacroFin are included in examples
basic_examples
: Solutions to basic ODEs/PDEs, diffusion equation, function approximation and systems of ODEs, with some comparisons to DeepXDE.initial_examples
: Initial scripts for testing deep neural networks for ODE/PDE solutions, and macromodels.kan_examples
: Solutions to basic ODEs, using KAN as approximatorsmacro_problems
: Macroeconomic models in different dimensions.paper_example
: Examples in the paper, with PyMacroFin and deepXDE comparisons. Models and log files for reproducing paper results can be found in Google Drive.pymacrofin_eg
: Examples from PyMacroFin and proposition 2 from Brunnermeier and Sannikov (2014)
Note: PyMacroFin and DeepXDE are used as benchmarks in several examples, but the associated packages are not included in this repo's requirements.txt
. To run the comparisons properly, please install their packages respectively.
The documentation site is based on mkdocs and mkdocs-mateiral.
Layouts
mkdocs.yml # The configuration file.
docs/
index.md # The documentation homepage.
... # Other markdown pages, images and other files.
To see the site locally, run the following command:
mkdocs serve
If you use Deep-MacroFin for academic research, you are encouraged to cite the following paper:
@misc{wu2024deepmacrofin,
title={Deep-MacroFin: Informed Equilibrium Neural Network for Continuous Time Economic Models},
author={Yuntao Wu and Jiayuan Guo and Goutham Gopalakrishna and Zisis Poulos},
year={2024},
eprint={2408.10368},
archivePrefix={arXiv},
primaryClass={cs.LG},
url={https://arxiv.org/abs/2408.10368},
}