-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Indexing parameter values, rounding rules #130
Comments
This looks like a pretty comprehensive write up @jdebacker, thanks. Only thing I'd add is that I've occasionally seen examples where different marital statuses have different rounding rules: e.g. where single filers round to $100, joint filers round to $50. |
Good point. Perhaps for this case (which should actually in the example above), one could have "interval" (and maybe other keys) be a list? |
A note per further discussion: may want the "index_parameter" (and potentially other indexing rule parameters) to vary by year, e.g., to capture legislative changes to these such as the TCJA. One idea is to have the "index_parameter" take a string (that is in a set list, e.g., "CPI-U", "Chained CPI-U", "wages") or a dictionary of key value pairs (for custom growth rates by year). |
Often, when policy parameters are indexed to inflation, they are subject to rounding rules. For example, policy parameters of the US income tax code such as income thresholds defining tax brackets are index to inflation, but, in order to be more clear to taxpayers, are rounded to whole dollar amounts.
Rounding rules like this are often parameter-specific. For example, for some policy parameters rounding may be downward, while for others it's upward. For some, rounding maybe to the nearest $50 increment, for others $1, or $100.
The Tax-Calculator project currently addresses rounding by updating parameter values after the IRS publishes numbers with the rounding rules applied (see the updating process in PR #2633). This is a pretty big maintenance issue for that project. Hardcoding in these values also has other limitations.
One solution is to allow the model parameters to be given indexing rules. Since the Tax-Calculator project uses ParamTools to handle parameter inputs, validation, and extrapolation this Issue is to discuss if this might be possible to do in ParamTools.
I think what one would want is the following:
II_brk1
, this could be "CPI".E.g. (where this gives indexing to the CPI with rounding upwards to the nearest $1),
Would this be possible in ParamTools? Potential drawbacks to this approach?
cc @MattHJensen @nikhilwoodruff @MaxGhenis
The text was updated successfully, but these errors were encountered: