Skip to content

Bugs/planned vs executed investment#64

Open
jose-moran wants to merge 2 commits intobugs/productivity-growthfrom
bugs/planned-vs-executed-investment
Open

Bugs/planned vs executed investment#64
jose-moran wants to merge 2 commits intobugs/productivity-growthfrom
bugs/planned-vs-executed-investment

Conversation

@jose-moran
Copy link
Member

This fixes the issue #59 that @sternluke raised.

Details below:

compute_tfp_growth() was using executed_productivity_investment (computed as
total_capital_bought - replacement_cost) instead of planned_tfp_investment
(the forward-looking decision from set_targets).

These are fundamentally different calculations:

  • Planned: Based on available cash, hurdle rate, and budget constraints
  • Executed: Residual after depreciation is accounted for

This caused TFP growth to be disconnected from firms' investment intentions:

  • Firms with high depreciation got less TFP growth than planned
  • Firms that over-bought capital got more TFP growth than planned (windfall)

The fix changes compute_tfp_growth() to use this priority order:

  1. planned_tfp_investment (TFP-specific portion of planned investment)
  2. planned_productivity_investment (total planned, if TFP portion unavailable)
  3. executed_productivity_investment (legacy fallback)
  4. compute_productivity_investment() (final fallback for initial period)

compute_tfp_growth() was using executed_productivity_investment (computed as
total_capital_bought - replacement_cost) instead of planned_tfp_investment
(the forward-looking decision from set_targets).

These are fundamentally different calculations:
- Planned: Based on available cash, hurdle rate, and budget constraints
- Executed: Residual after depreciation is accounted for

This caused TFP growth to be disconnected from firms' investment intentions:
- Firms with high depreciation got less TFP growth than planned
- Firms that over-bought capital got more TFP growth than planned (windfall)

The fix changes compute_tfp_growth() to use this priority order:
1. planned_tfp_investment (TFP-specific portion of planned investment)
2. planned_productivity_investment (total planned, if TFP portion unavailable)
3. executed_productivity_investment (legacy fallback)
4. compute_productivity_investment() (final fallback for initial period)

Fixes #59
@jose-moran jose-moran changed the base branch from main to bugs/productivity-growth February 12, 2026 16:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant