-
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
Remove ltcg from ETI substitution effect base #37
Conversation
Codecov Report
@@ Coverage Diff @@
## master #37 +/- ##
=====================================
Coverage 100% 100%
=====================================
Files 2 2
Lines 102 103 +1
=====================================
+ Hits 102 103 +1
Continue to review full report at Codecov.
|
This is ready for review. |
@MattHJensen said in Behavioral-Responses issue #36:
I know very little about the ETI research literature, but there seem to me a disconnect between what you said in #36 and the code change you propose in #37. Your statement above suggests that the double-counting occurs only when assuming "a non-zero substitution elasticity and a non-zero long-term capital gains elasticity." And by proposing #37 you have answered your first question with a yes. So, why not revise the code to subtract LTCG out of the taxable income measure used to compute the substitution effect only when there is a non-zero LTCG elasticity. Why deviate from the ETI research literature in situations where there is no double-counting? |
You're right to spot the disconnect between this PR and my concern about double counting in #36, it probably would have been helpful for me to flesh out that issue with more background. There was no overriding factor that caused me to remove the ETI from the substitution effect base even when the ltcg response is zero, but a few factors, together, pushed me over the edge:
|
@MattHJensen, Thanks for the extensive explanation of the thinking behind B-R PR #37. All this makes sense, so I have no objections to merging this change. Although if none of the tests failed, it would suggest adding one that would have failed would be a good idea. I guess we need a test that assumes both the substitution and LTCG elasticities are non-zero. |
Yea, this makes sense. I'll add one to the PR. |
@MattHJensen, Why does commit 828d1d3 add the return of a Calculator object? |
I am still working on this PR. I'll start a discussion of the changes when they're ready for review. In the meantime, I'll add back the WIP tag to show that I'm in progress on the testing. |
This PR is ready for review. In addition to addressing #36 and adding a test that fails under master but passes on this branch, the PR makes a substantial change to the behresp API by returning the calc2 with behavior calculator from Here is my thinking for returning calc2_beh:
I do not know what kind of performance benchmarks Behavioral-Responses is trying to hit or the reason for those benchmarks, so I have not yet considered performance in these changes. One simple approach to alleviate some performance concerns -- which we may also want to adopt in the absence of performance concerns -- might be to have |
I've moved the discussion of extra-response-data needs to issue #38 because it is logically separate from resolving issue #36, which is the focus of pull request #37. @andersonfrailey and @MattHJensen, can you please describe the details of your experiences in issue #38? |
@MattHJensen, it would seem that pull request #37 contains far more than a resolution of issue #36. |
@martinholmer, I was unable to devise an adequate test for #36 (by adequate, I mean one that fails on master) without returning extra data. I am happy to remove the testing for now and open an issue that reminds us to add tests after #38 is resolved. Is that what you are suggesting? |
@MattHJensen said:
I don't understand. The core change in #37 causes a change (for some people) in the high-level data now returned from the |
I retract this. The tested PR will be ready for review soon. |
This PR is ready for review. |
@MattHJensen, Maybe I'm distracted by all the things going on with the move today, but I don't understand the new test. First, I don't understand the role of the new Second, I don't understand this new How can a single individual ( |
@MattHJensen, Thanks for all your work on Behavioral-Responses pull request #37. All the coding-style and substantive tests ran fine on my computer. Sorry the limited output from the |
@martinholmer, thanks a lot for reviewing/shepherding/merging this PR.
|
Resolves #36.