PSLmodels / OG-UK

An overlapping generations model to simulate fiscal policy the United Kingdom.
https://pslmodels.github.io/OG-UK
Other
6 stars 7 forks source link

Add UK corporate tax rates #51

Closed nikhilwoodruff closed 1 year ago

nikhilwoodruff commented 2 years ago

This PR replaces the default (US) corporate tax rate with the UK rates. The UK tax rate is currently 19%, but scheduled to rise to 25% from FY23 onwards.

codecov[bot] commented 2 years ago

Codecov Report

Merging #51 (a72a51e) into main (d2716fd) will not change coverage. The diff coverage is 50.00%.

@@           Coverage Diff           @@
##             main      #51   +/-   ##
=======================================
  Coverage   70.06%   70.06%           
=======================================
  Files           4        4           
  Lines         147      147           
=======================================
  Hits          103      103           
  Misses         44       44           
Flag Coverage Δ
unittests 70.06% <50.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
setup.py 0.00% <0.00%> (ø)
oguk/tests/test_get_micro_data.py 87.50% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

rickecon commented 2 years ago

@nikhilwoodruff . For the change you are suggesting, I recommend changing the default cit_rate to [[0.25]] rather than your current change of [[0.19], [0.25]] in oguk_default_parameters.json. The implication of your current change is to set the number of industries to 2, with one industry's corporate income tax rate being 19% and the other industry's CIT rate being 25%. This also requires setting some other parameters as a list of values for each industry, e.g., Z, inv_tax_credit, delta_tau_annual.

For the two build and test failures on windows-latest, 3.7, the error is the following:

Error: Codecov: Failed to properly upload: The process 'D:\a\_actions\codecov\codecov-action\v2\dist\codecov.exe' failed with exit code 4294967295

I'll have to look into why this is happening. But it seems like all we need to do to get the codecov/project test to pass is exclude setup.py.

cc: @jdebacker

nikhilwoodruff commented 2 years ago

OK, thanks @rickecon - will do. Out of interest, is there a recommended way to handle scheduled corporation tax rates? Setting to 25% makes sense to me (it's almost certain this rise will be cancelled by Truss but I'll wait for that to happen).

rickecon commented 2 years ago

@nikhilwoodruff. Right now we do not have cit_rate set up to be time dependent. But we have a number of parameters that are (e.g., replacement_rate_adjust, omega, g_n). It is straightforward to implement this functionality. It just takes some time and care, making sure to update dimensions and making the last value entered be the value for all subsequent time periods. For now, I recommend just setting a particular value for the cit_rate--and in each industry if you want.

jdebacker commented 2 years ago

Following up on this,I think @nikhilwoodruff has this exactly right to model a single rate across all industries, but that changes over time (in this case, in the year after the initial model year (set by start_year). The cit_rate parameter is set to take a 2 dimensional object, where the first dimension is time and the second industry.

nikhilwoodruff commented 2 years ago

Thanks guys for the comments - just a note for myself that the 25% rise did get cancelled last Friday.

nikhilwoodruff commented 1 year ago

The rise got reinstated under Kwarteng and will go ahead under whoever Sunak appoints, most likely

rickecon commented 1 year ago

@nikhilwoodruff. Thanks. Looks good. Merging.