-
Notifications
You must be signed in to change notification settings - Fork 186
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #5553 from PolicyEngine/amt_refactor
Refactor AMT code to use descriptive variable names rather than those tied to form lines
- Loading branch information
Showing
24 changed files
with
593 additions
and
305 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
- bump: minor | ||
changes: | ||
added: | ||
- Refactor the Alternative Minimum Tax (AMT) logic. |
174 changes: 0 additions & 174 deletions
174
policyengine_us/parameters/gov/irs/income/amt/capital_gains/brackets.yaml
This file was deleted.
Oops, something went wrong.
21 changes: 21 additions & 0 deletions
21
policyengine_us/parameters/gov/irs/income/amt/multiplier.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
description: The IRS multiplies the Alternative Minimum Tax income tax brackets by this rate, based on filing status. | ||
metadata: | ||
unit: /1 | ||
period: year | ||
breakdown: | ||
- filing_status | ||
label: AMT tax bracket multiplier | ||
reference: | ||
- title: 26 U.S. Code § 55 - Alternative minimum tax imposed (b)(1)(C) | ||
href: https://www.law.cornell.edu/uscode/text/26/55#b_1_C | ||
|
||
SINGLE: | ||
2013-01-01: 1 | ||
JOINT: | ||
2013-01-01: 1 | ||
HEAD_OF_HOUSEHOLD: | ||
2013-01-01: 1 | ||
SURVIVING_SPOUSE: | ||
2013-01-01: 0.5 | ||
SEPARATE: | ||
2013-01-01: 1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
21 changes: 21 additions & 0 deletions
21
...cy/baseline/gov/irs/tax/federal_income/alternative_minimum_tax/amt_part_iii_required.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
- name: Not required | ||
period: 2022 | ||
input: | ||
dwks10: 0 | ||
dwks13: 0 | ||
dwks14: 0 | ||
dwks19: 0 | ||
unrecaptured_section_1250_gain: 0 | ||
output: | ||
amt_part_iii_required: false | ||
|
||
- name: Required | ||
period: 2022 | ||
input: | ||
dwks10: 0 | ||
dwks13: 0 | ||
dwks14: 1 | ||
dwks19: 0 | ||
unrecaptured_section_1250_gain: 0 | ||
output: | ||
amt_part_iii_required: true |
59 changes: 59 additions & 0 deletions
59
...icy/baseline/gov/irs/tax/federal_income/alternative_minimum_tax/amt_tax_including_cg.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
- name: First bracket, no capital gains | ||
period: 2023 | ||
input: | ||
filing_status: SINGLE | ||
amt_income_less_exemptions: 50_000 | ||
dwks10: 0 | ||
dwks13: 0 | ||
dwks14: 0 | ||
unrecaptured_section_1250_gain: 0 | ||
output: | ||
amt_tax_including_cg: 13_000 | ||
|
||
- name: First bracket, no capital gains, higher income | ||
period: 2023 | ||
input: | ||
filing_status: SINGLE | ||
amt_income_less_exemptions: 100_000 | ||
dwks10: 0 | ||
dwks13: 0 | ||
dwks14: 0 | ||
unrecaptured_section_1250_gain: 0 | ||
output: | ||
amt_tax_including_cg: 26_000 | ||
|
||
- name: Income with capital gains in first bracket | ||
period: 2023 | ||
input: | ||
filing_status: SINGLE | ||
amt_income_less_exemptions: 100_000 | ||
dwks10: 50_000 | ||
dwks13: 30_000 | ||
dwks14: 0 | ||
unrecaptured_section_1250_gain: 0 | ||
output: | ||
amt_tax_including_cg: 22_700 | ||
|
||
- name: AMT with capital gains in second bracket | ||
period: 2023 | ||
input: | ||
filing_status: SINGLE | ||
amt_income_less_exemptions: 600_000 | ||
dwks10: 200_000 | ||
dwks13: 150_000 | ||
dwks14: 0 | ||
unrecaptured_section_1250_gain: 0 | ||
output: | ||
amt_tax_including_cg: 144_086 | ||
|
||
- name: AMT with unrecaptured section 1250 gains | ||
period: 2023 | ||
input: | ||
filing_status: SINGLE | ||
amt_income_less_exemptions: 1_000_000 | ||
dwks10: 500_000 | ||
dwks13: 300_000 | ||
dwks14: 0 | ||
unrecaptured_section_1250_gain: 200_000 | ||
output: | ||
amt_tax_including_cg: 230_586 |
23 changes: 23 additions & 0 deletions
23
...cy/baseline/gov/irs/tax/federal_income/alternative_minimum_tax/base_tax/amt_base_tax.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
- name: Single person, low income | ||
period: 2022 | ||
input: | ||
filing_status: SINGLE | ||
amt_income_less_exemptions: 10_000 | ||
output: | ||
amt_base_tax: 2_600 | ||
|
||
- name: Single person, no income | ||
period: 2022 | ||
input: | ||
filing_status: SINGLE | ||
amt_income_less_exemptions: 0 | ||
output: | ||
amt_base_tax: 0 | ||
|
||
- name: Joint, high income | ||
period: 2022 | ||
input: | ||
filing_status: JOINT | ||
amt_income_less_exemptions: 200_000 | ||
output: | ||
amt_base_tax: 52_000 |
23 changes: 23 additions & 0 deletions
23
...line/gov/irs/tax/federal_income/alternative_minimum_tax/base_tax/amt_higher_base_tax.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
- name: Single person, low income | ||
period: 2022 | ||
input: | ||
filing_status: SINGLE | ||
amt_income_less_exemptions: 10_000 | ||
output: | ||
amt_higher_base_tax: 0 | ||
|
||
- name: Single person, 400k income | ||
period: 2022 | ||
input: | ||
filing_status: SINGLE | ||
amt_income_less_exemptions: 400_000 | ||
output: | ||
amt_higher_base_tax: 54_292 | ||
|
||
- name: Joint, 600k income | ||
period: 2022 | ||
input: | ||
filing_status: JOINT | ||
amt_income_less_exemptions: 600_000 | ||
output: | ||
amt_higher_base_tax: 110_292 |
Oops, something went wrong.