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 beancount+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beancount/1dfa121d-a9da-44b8-a76d-8aa2b9f52dfen%40googlegroups.com.

Reply via email to