This repository contains a collection of Python scripts simulating money creation, banking operations, and the mechanics of the financial system. Each script represents a specific part of the simulation process, from cash deposits to interbank transactions.
Before running the scripts, install the abcFinance library:
pip install abcfinance
Bank and customer initial setup.
Create balance sheets for:
Bank X
Bank Y
Customer A
Customer B
Customer C
Central Bank
Customer A deposits cash into Bank X.
Money stock increases through deposit creation.
Bank X gives a loan to Customer B.
Loan creates a new deposit in the banking system.
Bank Y gives a loan to Customer C.
Another deposit is created through lending.
Customer B repays part of their loan principal to Bank X.
Reduces outstanding loan and customer deposit.
Customer A makes a payment to Customer B.
Transfer between deposits without changing total money supply.
Customer C makes a payment to Customer A.
Interbank transfer requiring reserve movements.
Banks withdraw cash from the Central Bank.
Reduces reserves and increases cash holdings.
Customer A withdraws cash from Bank X.
Cash leaves the banking system, reducing deposits.
Bank Y borrows reserves from Bank X (interbank market transaction).
Bank Y issues bonds to raise additional funds.
Bank Y borrows directly from the Central Bank.
Bank Y collects additional customer deposits.
Complex balance sheet operations combining multiple steps.
Full simulation update.
Integrates previous steps into a full financial system evolution.
Developed by veridelisi.
Feel free to contribute, open issues, or suggest improvements!
This project is licensed under the MIT License.