Fava Investor
Fava Investor aims to be a comprehensive set of reports, analyses, and tools for investments, for Beancount and Fava (software for plain text, double entry bookkeeping). It is developed as a collection of modules, with each module offering a Fava plugin, a Beancount library, and a shell command.
Current modules:
- Visual, tree structured asset allocation by class
- Asset allocation by account
- Tax loss harvestor
- Cash drag analysis
- Summarizer
- Gains minimizer
Demo
Play with the live demo at pythonanywhere.
Screenshots (dated):
Utilities
Fava Investor ships with ticker-util, which is a collection of utilities for:
- downloading information from Yahoo for commodities (tickers), and annotating your commodity declarations with metadata
- discovering relationships between tickers in your Beancount file, such as equivalent and substantially identical tickers, and tax loss harvesting partner groups, from a minimal and incomplete specification
- providing ISIN an other ticker identifying information to your importers
For more, install fava_investor via pip, and then see:
ticker-util --help
ticker-util relate --help
Installation
pip3 install fava-investor
Or to install the bleeding edge version from git:
pip3 install git+https://github.com/redstreet/fava_investor
See #55 for MacOS installation.
Note the latest version of Fava Investor is compatible with both Beancount v2 and v3.
Running Fava Investor
Running in Fava:
Add this to your beancount source, and start up fava as usual:
2000-01-01 custom "fava-extension" "fava_investor" "{}"
You should now see an 'Investor' link in the sidebar in fava. For more on how to
configure the extension, see the included huge-example.beancount.
Running on the Command-Line:
The command line interface (CLI) is accessed using the investor command, which has
subcommands for each module. Eg:
investor assetalloc-class
investor tlh
investor --help
Both the CLI and the utility (ticker-util) use click.
See here
to enable shell completion in zsh, bash, or fish, which is highly recommended.
Problems?
- Monitor the terminal you are running fava from to look for error output from fava_investor
- Include the error messages you see above when opening bug reports or asking for help
Contributing
Features, fixes, and improvements welcome. Remember:
- Feel free to send send pull requests. Please include unit tests
- For larger changes or changes that might need discussion, please reach out and discuss first to save time (open an issue)
- Please squash your commits (reasonably)
- Use conventional commits for commit messages
Thank you for contributing!
Related Projects
Release files for fava-investor 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fava_investor-1.0.1.tar.gz | 653.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fava_investor-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.2 MB
Release files / fava_investor-1.0.1.tar.gz
| Download URL | fava_investor-1.0.1.tar.gz |
|---|---|
| Size | 653.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
041ae3f6c3832686cac7bf8abf594aa44cc60718a2124c1542d4c93b604b8bbb
|
|
BLAKE2b-256 checksum How to use checksums |
48fea83b481965d208a2103274a447dfbd5823397ad951640c6ec23b639b756e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.8
|
Release files / fava_investor-1.0.1-py3-none-any.whl
| Download URL | fava_investor-1.0.1-py3-none-any.whl |
|---|---|
| Size | 500.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ce00bfd491a329ed8dd5e31e7f471c3488946264b7b896314f385aebadbcfd7c
|
|
BLAKE2b-256 checksum How to use checksums |
3dd7d9a3fa89c2afd21ee757d823527c3ec37f6ab06cb6a89a4d12431ab6dc41
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.8
|