Thought this
<https://groups.google.com/g/beancount/c/GCuGaVpe-x0/m/_dZ_ugKMAQAJ>
deserved a thread of its own. Here is a new plugin
<https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/capital_gains_classifier>
that classifies sales into short term or long term capital gains based on
how long they have been held, like so: Converts:
```
plugin "long_short" "{
'generic_account_pat': ':Capital-Gains',
'short_account_rep': ':Capital-Gains:Short',
'long_account_rep': ':Capital-Gains:Long',
}"
2014-01-01 open Assets:Brokerage
2014-01-01 open Assets:Bank
2014-01-01 open Income:Capital-Gains
2014-02-01 * "Buy"
Assets:Brokerage 100 ORNG {1 USD}
Assets:Bank -100 USD
2016-02-01 * "Buy"
Assets:Brokerage 100 ORNG {2 USD}
Assets:Bank -200 USD
2016-03-01 * "Sell"
Assets:Brokerage -100 ORNG {1 USD} @ 2.50 USD
Assets:Brokerage -100 ORNG {2 USD} @ 2.50 USD
Assets:Bank 500 USD
Income:Capital-Gains
```
to:
```
2014-01-01 open Assets:Brokerage
2014-01-01 open Assets:Bank
2014-01-01 open Income:Capital-Gains:Short
2014-01-01 open Income:Capital-Gains:Long
2014-02-01 * "Buy"
Assets:Brokerage 100 ORNG {1 USD}
Assets:Bank -100 USD
2016-02-01 * "Buy"
Assets:Brokerage 100 ORNG {2 USD}
Assets:Bank -200 USD
2016-03-01 * "Sell"
Assets:Brokerage -100 ORNG {1 USD} @ 2.50 USD
Assets:Brokerage -100 ORNG {2 USD} @ 2.50 USD
Assets:Bank 500 USD
Income:Capital-Gains:Short -50 USD
Income:Capital-Gains:Long -150 USD
```
WARNINGS:
- still under development
- doesn't work for leap years yet
- doesn't distinguish between reductions and short purchases (doesn't
understand the
latter)
- there are probably cases outside the current unit tests that this fails
for
See beancount-reds-plugins
<https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/capital_gains_classifier>
for how to install and configure:
pip3 install git+https://github.com/redstreet/beancount_reds_plugins
Added to Martin's contribs doc
<https://docs.google.com/document/d/1Z37bQ45wDtjTPaMQ_x-f33p1trH9fNosEAUgbQXwp30/edit>.
--
You received this message because you are subscribed to the Google Groups
"Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beancount/1dfa121d-a9da-44b8-a76d-8aa2b9f52dfen%40googlegroups.com.