Skip to main content

Fava extension and beancount libraries for investing

Project description

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:

Demo

Play with the live demo at pythonanywhere.

Screenshots (dated):

Screenshot: TLH Screenshot: Asset Allocation

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.

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fava_investor-0.7.tar.gz (652.8 kB view details)

Uploaded Source

Built Distribution

fava_investor-0.7.0-py3-none-any.whl (499.4 kB view details)

Uploaded Python 3

File details

Details for the file fava_investor-0.7.tar.gz.

File metadata

  • Download URL: fava_investor-0.7.tar.gz
  • Upload date:
  • Size: 652.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for fava_investor-0.7.tar.gz
Algorithm Hash digest
SHA256 88917d165efdd6e68ec9f5f334096646be1957e4b605f6f4e4b4f6b1f5b017b7
MD5 04182efb79c521ff0fe49416296912ae
BLAKE2b-256 30dd51c5dc1cd9a7fc84d25b54f55fde8c0365e322b2ce3bbd26605442296f34

See more details on using hashes here.

File details

Details for the file fava_investor-0.7.0-py3-none-any.whl.

File metadata

File hashes

Hashes for fava_investor-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 559570ea4c8bca0bebe108584aa6696bea95e577a56b3604cfc613a1820a26aa
MD5 3267757edeb9c558f5df29fd9baa9ed2
BLAKE2b-256 b0ebc4f977a37ee0ec6589b55cda51b6f86f7a7ae8a29e00d24d98dee5a32ade

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page