Fiscal Stabilisers, Minsky Dynamics, and Distributional Outcomes in a Keynesian Agent-Based Model

A daily-frequency, single-sector Keynesian ABM of 10,000 households, 1,000 firms, and 10 commercial banks reproduces four stylised macroeconomic facts and documents persistent zero lower bound binding, a novel result in the K+S ABM literature mirroring post-1998 Japan and post-2013 Euro-area experience.

10,000agents
93.7%ZLB frequency (MC median)
4.6%GDP CAGR

Research Snapshot

Model scale, simulation horizon, and key quantitative results.

4 / 12stylised facts matched
50Monte Carlo seeds
3,650simulation steps (10 yr)
Target journal
Journal of Economic Dynamics and Control
Key result
ZLB binds in 93.7% of periods (MC median; 95% CI: 6.0%–96.1%), a novel bimodal result driven by TFP-variance threshold effects.
Implementation
Rust: a 10-year, 10,000-agent run completes in under 30 seconds, enabling high-throughput Monte Carlo experiments.
Tagged
Agent-Based ModelKeynesian MacroeconomicsZero Lower BoundMinsky DynamicsFiscal PolicyRust

Concept Overview

Keynesian ABMMonte CarloRust

Abstract

Setup — We develop, calibrate, and analyse a daily-frequency, single-sector Keynesian agent-based model (ABM) of a closed economy populated by 10,000 households, 1,000 firms, and 10 commercial banks operating alongside a fiscal authority and a Taylor-rule central bank. In a 10-year (3,650-step) baseline run we reproduce four of the twelve stylised facts reported by Dosi et al. (2013): a nominal GDP CAGR of 4.6%, negatively skewed annual growth fluctuations (γ₁ = −0.59), and a wage share of GDP of 72.8%.

Novel Result — The economy reaches the zero lower bound (ZLB) from day 1 and remains there for a median 93.7% of simulation periods across 50 Halton-seed Monte Carlo draws (95% CI: 6.0%–96.1%), mirroring the post-1998 Japanese and post-2013 Euro-area experience. This is a novel result in the K+S ABM literature. The wide confidence interval reflects genuine bimodality: seeds with low TFP variance escape the ZLB for significant fractions of the run, while high-TFP seeds are pinned at zero throughout.

Structural Departures — We document five structural departures from the empirical target (near-zero unemployment, supply-side CPI deflation, suppressed business-cycle volatility and persistence, compressed wealth inequality, and persistent ZLB) and trace each to identifiable modelling choices in the single-sector design. Two of these (growth volatility 0.12% vs. empirical 2–5%, and negative growth autocorrelation ρ₁ = −0.18 vs. empirical >0.70) arise directly from the smooth, near-deterministic TFP growth path produced by the recalibrated R&D parameters.

Contribution — A minimal single-sector null model that isolates by subtraction which stylised facts require two-sector structure, establishing precise boundary conditions for when endogenous cycles re-emerge as the model is extended toward the full two-sector K+S design. JEL codes: C63, E12, E32, E44, E62, G01.

Introduction

The 2007–09 Global Financial Crisis and the subsequent decade of secular stagnation demonstrated the inadequacy of models in which the macroeconomy converges rapidly to a unique rational-expectations equilibrium. By contrast, agent-based computational models of the macroeconomy (macro-ABMs) generate large-amplitude fluctuations endogenously from the local interactions of heterogeneous, boundedly rational agents operating in decentralised markets.

Three Contributions

First, this paper constructs a minimal single-sector null model that isolates which stylised facts require two-sector structure. Implemented in Rust, a 10-year, 10,000-agent run completes in under 30 seconds, enabling high-throughput Monte Carlo experiments. Second, it establishes a systematic mapping between structural design choices and empirical misses via the Hierarchy Proposition. Third, it documents the novel result that the ZLB binds in the large majority of simulation periods, a result not previously established in the K+S ABM literature.

The Keynes+Schumpeter (K+S) programme initiated by Dosi et al. (2010, 2013, 2015) has established a benchmark for macro-ABM research. By combining Harrodian investment, search-and-matching labour markets, a banking sector subject to capital adequacy constraints, and automatic fiscal stabilisers, the K+S family of models jointly reproduces a broad set of macroeconomic and microeconomic stylised facts without imposing market clearing or rational expectations.

The present model is deliberately restricted to a single consumption-good sector and therefore does not reproduce capital-market or multi-sector phenomena. This restriction turns the empirical misses into a diagnostic: each miss identifies a structural feature the single-sector design cannot replicate, providing a precise specification for what the two-sector extension must supply.

Methods

  1. Households (10,000) — Households supply labour inelastically and consume from current income and accumulated savings according to a habit-adjusted consumption function. Savings propensity σ = 0.05, risk aversion ρ = 0.20, consumption habit η = 0.70. Households search for employment across firms in random order, accepting the first offer above their reservation wage, which decays at rate δ_W = 0.05 during unemployment spells. Habit Consumption Search-and-Match Labour Reservation Wage
  2. Firms (1,000) — Firms produce a single consumption good using labour, invest in R&D to improve total factor productivity, and set prices via a mark-up over unit labour cost. Investment rate χ = 0.10, R&D rate φ = 0.005. Firms finance themselves through retained earnings and bank credit subject to capital adequacy constraints. Bankruptcy occurs when equity turns negative. Mark-up Pricing Harrodian Investment TFP Growth via R&D
  3. Commercial Banks (10) — Banks intermediate between household deposits and firm credit. Lending rates are set as the policy rate plus a risk premium that rises with borrower leverage. Capital adequacy ratio (CAR) floor of 8% limits credit expansion. During the banking-crisis shock (day 1,200), elevated non-performing loan rates trigger a credit freeze that propagates through the firm sector: the Minsky dynamic documented in Section IV. Risk-Premium Lending CAR Constraint Minsky Dynamics
  4. Fiscal Authority & Taylor-Rule Central Bank — The government levies a flat income tax and provides unemployment benefits, acting as an automatic fiscal stabiliser. The central bank sets the nominal interest rate via a Taylor rule: πₜ = r* + 1.5(πₜ − π*) + 0.5(yₜ − y*), subject to the ZLB constraint iₜ ≥ 0. The ZLB binds from day 1 due to supply-side deflation, mirroring Japan’s lost-decade liquidity trap. Taylor Rule Automatic Stabilisers Zero Lower Bound

Results

The 10-year baseline simulation reproduces four of the twelve Dosi et al. (2013) stylised facts and documents five structural departures, each traceable to identifiable modelling choices. The most striking result is the persistent ZLB binding.

ZLB Frequency: 93.7% (MC Median)

Across 50 Halton-seed Monte Carlo draws, the nominal interest rate is pinned at zero in a median 93.7% of simulation periods (95% CI: 6.0%–96.1%). The wide CI reflects genuine bimodality: seeds with low TFP variance escape the ZLB for significant fractions of the run, while high-TFP seeds are pinned at zero throughout. This result is novel in the K+S ABM literature and mirrors post-1998 Japan and post-2013 Euro-area experience.

Four matched stylised facts: GDP CAGR of 4.6% (MC median: 4.5%), negatively skewed annual growth fluctuations (γ₁ = −0.59), wage share of GDP of 72.8%, and qualitatively realistic credit-freeze dynamics following the banking-crisis shock.

Five structural departures: (1) near-zero unemployment (0.24% vs. empirical 5–10%), caused by the missing capital-income channel and absence of a statutory wage floor; (2) supply-side CPI deflation driven by continuous TFP improvement without a nominal price anchor; (3) suppressed growth volatility (0.12% vs. empirical 2–5%); (4) negative growth autocorrelation (ρ₁ = −0.18 vs. empirical >0.70); (5) compressed wealth inequality (Gini 0.15 vs. empirical 0.40–0.70).

Shock Experiments

A demand shock at day 500 produces a temporary GDP contraction of 8.2% recovered within 90 days. The banking crisis at day 1,200 triggers a Minsky-reversal dynamic: bank credit contracts by 34%, firm bankruptcies spike from 0.27% to 4.1% per year, and GDP falls 12.3% before fiscal stabilisers arrest the decline. The economy recovers to trend within 18 months, consistent with the bounded nature of single-sector Minsky cycles.

Discussion

The Hierarchy Proposition converts the catalogue of misses into a single testable prediction: correcting near-zero unemployment will simultaneously resolve four of the five structural departures, bringing corresponding moments toward their empirical targets.

Near-zero unemployment is the proximate cause of four structural departures. In the single-sector design, households compete only for consumption-good sector jobs, and the absence of a capital-income channel means labour demand is always near full-employment. Introducing a statutory wage floor or a capital-good sector that competes for labour would restore realistic unemployment rates and, through the income channel, correct the deflation, inequality, and credit-utilisation misses simultaneously.

The persistent ZLB arises from supply-side deflation: continuous TFP growth reduces unit production costs faster than nominal wages adjust, producing a chronic deflationary tendency that drives the Taylor rule to its zero lower bound. In the full K+S two-sector model, capital-good pricing acts as a nominal anchor that makes ZLB episodes occasional rather than chronic. Its absence here makes the ZLB the default state. This result provides a sharp, testable distinction between single- and two-sector designs.

Business-cycle dynamics (volatility and autocorrelation) are absent because the recalibrated R&D parameters produce near-deterministic TFP growth. The ξ-sweep sensitivity analysis confirms that search friction alone is insufficient to restore cycle dynamics under these R&D parameters. Demand-side heterogeneity, not just matching friction, is the necessary ingredient.

Conclusion

The most significant result of the 10-year baseline simulation is that the zero lower bound binds in 93.7% of simulation periods (MC median; 95% CI: 6.0%–96.1%), with a bimodal cross-seed distribution reflecting a TFP-variance threshold effect, a novel result in the K+S ABM literature.

The 10-year recalibrated baseline reproduces four of the twelve targeted stylised facts. These four matches are structural properties of the Keynesian coordination mechanism that survive even in the minimal single-sector design. The eight misses are equally informative: each identifies a structural feature (capital-good sector pricing, multi-sector demand interactions, or a nominal price anchor) that the two-sector extension must supply.

The Hierarchy Proposition converts this catalogue of misses into a single, testable prediction: correcting near-zero unemployment will simultaneously resolve four of the five structural departures. Each structural correction can be implemented independently, making this baseline a natural stepping stone toward the fully calibrated two-sector K+S model of Dosi et al. (2015). See Paper 2 for the companion study on individual optimality and collective failure in this model framework.

Abstract

This paper builds a small simulated economy inside a computer, where 10,000 fake households, 1,000 fake firms, and 10 fake banks each make their own day-to-day decisions (this kind of simulation is called an "agent-based model"). Run for a simulated 10 years, it correctly reproduces 4 of the 12 real-world economic patterns that economists usually check simulations against — for example, the economy grows at a realistic rate and wages make up a realistic share of total income.

The standout finding: the simulated central bank's interest rate gets stuck at zero (called the "zero lower bound," or ZLB) for the vast majority of the simulated time — something that also happened in real life in Japan after 1998 and the Eurozone after 2013, but had never been shown in this type of model before.

Introduction

The 2007–09 financial crisis showed that older economic models, which assume the economy quickly settles into one "correct" balanced state, don't capture how real economies actually behave. Agent-based models take a different approach: instead of assuming an answer, they simulate many individual households, firms, and banks each making their own imperfect decisions, and see what kind of economy-wide behavior emerges naturally from all those small decisions interacting.

This paper deliberately builds the simplest possible version of such a model — just one type of good being produced, no separate capital-goods sector — so that whatever it gets wrong tells you exactly what a more realistic, richer model still needs to add.

Methods

The simulated economy has four kinds of players. Households earn wages, spend based on habit and savings, and search for jobs, accepting a job once it pays enough. Firms produce goods, invest in improving their own productivity over time, set prices with a standard markup, and go bankrupt if they run out of money. Banks sit between household savings and firm borrowing, charging riskier firms more interest, and are required to keep a safety cushion of capital. A government taxes income and pays unemployment benefits, while a central bank sets interest rates using a standard rule economists call a Taylor rule, similar to what real central banks use.

The whole simulation runs for 3,650 simulated days (10 years), and is repeated 50 times with different random starting conditions to make sure the results are a genuine pattern rather than a fluke of one particular run.

Results

Out of 12 standard real-world economic patterns researchers check simulations against, this one matches 4: it grows at a realistic rate, bad economic years tend to be worse than good years are good (a real-world asymmetry), and wages make up a realistic share of total income.

The most interesting result is that the central bank's interest rate gets stuck at zero for the vast majority of simulated time — matching what actually happened in Japan after 1998 and the Eurozone after 2013. The simulation also produces a "Minsky-style" credit crunch: after a simulated banking-crisis shock, banks pull back lending sharply, firm bankruptcies spike, and the economy shrinks before government support programs help it recover.

Discussion

The paper finds that nearly everyone in the simulated economy has a job — unrealistically full employment — and traces this back to one root cause: because this simple model only has one type of good being produced, there's no competition for workers from a separate capital-goods industry, so labor demand stays artificially high. Fixing this one design choice would likely also fix several of the simulation's other unrealistic results at the same time, since they all stem from the same missing piece.

The "stuck at zero interest rates" result happens because productivity keeps improving smoothly, which pushes production costs down faster than wages adjust, creating constant mild deflation that keeps pulling interest rates back to zero. A richer, two-sector version of the model would likely make this a rare event rather than the constant default state seen here.

Conclusion

The single most notable result is that this simple simulated economy gets stuck with zero interest rates for the vast majority of the time, mirroring what actually happened in Japan and the Eurozone in real life — something not previously shown in this type of model.

Of the 12 standard economic patterns checked, 4 come out realistic even in this stripped-down, one-sector version, while the other 8 point to specific missing ingredients (like a separate capital-goods sector, or more varied demand) that a fuller version of the model would need to add. This makes the simple model a useful stepping stone toward building a more complete, realistic one.

Back to Research