Portfolio Performance
Track the performance of an investment portfolio
Andreas Buchen ✓ Verified
info.portfolio_performance.PortfolioPerformanceAn open source tool to calculate the overall performance of an investment portfolio - across all accounts - using True-Time Weighted Return or Internal Rate of Return.
- Record the full history of your transactions: purchases, sales, taxes, fees, ...
- Calculate performance indicators such as the True-Time Weighted Rate of Return or the Internal Rate of Return (IRR) for your holdings.
- Update historical quotes from a variety of sources: Yahoo Finance, Finnhub.io, Quandl, or AlphaVantage. Alternatively, scrape quotes from HTML pages or JSON documents.
- All data is stored in XML for further processing and can be exported as CSV or JSON.
- Rebalance your investment portfolio based on a freely defined Asset Allocation.
- Keep foreign currency accounts using the exchange rates published by the European Central Bank (ECB).
Screenshots
Observed history
| App | Change | Version | When ↓ |
|---|---|---|---|
| updated | 0.89.0 | 13 Oct 2026 |
Upstream releases
Release notes supplied by the developer. These dates are not Flathub package publication times.
0.89.011 Oct 2026
- Experimental: An MCP endpoint lets AI assistants read and update parts of your portfolio data. This first version does not cover everything yet, and feedback is welcome. It is off by default and can be enabled in the preferences.
- New: "Open in new window" in the tab context menu opens a copy of the portfolio view in a separate window.
- New: Deposit account attributes can now be shown as columns in the Statement of Assets and in taxonomies.
- New: PDF importers for bank99, Charles Schwab, E*TRADE, Robinhood and Volksbank Wien.
- Improvement: Improved PDF importers for Baader Bank, C24 Bank, DEGIRO, Deutsche Bank, DKB, easybank, Erste Bank, flatex, ING-DiBa, J&T Direktbank (now also J&T Banka Slovakia), Liechtensteinische Landesbank, Postbank, Raiffeisenbank, S-Broker, Scalable Capital, St.Galler Kantonalbank, Targobank and Trade Republic.
- Improvement: The Trade Republic CSV importer now books deposit fees as separate fee transactions.
- Improvement: The attribute type "Percent (simple)" has been renamed to "Number (2 decimals)" because the old name incorrectly suggested that the value was a percentage.
- Fix: Fees charged on dividends are now included in a security's total fees.
- Fix: For short trades, the moving-average cost is now shown as undefined instead of zero.
- Fix: The Kraken quote feed now loads historical prices for securities without existing price data.
0.88.04 Oct 2026
- New: Sifting is now available as an online provider for historical prices.
- New: PDF importers for Alpian, Chase, Fondsdepot Bank, Morgan Stanley, Relai and Swisscard AECS.
- New: The lists of deposit accounts, securities accounts and savings plans can be exported to CSV.
- Improvement: Enhanced PDF importers for 1822direkt, 3 Banken, Advanzia Bank, Baader Bank, Bison, Consorsbank, DEGIRO, DZ Bank, Hello Bank, HypoVereinsbank, Hypothekarbank Lenzburg, ING-DiBa, LGT Bank, Liberty Vorsorge, Merkur Privatbank, MLP Banking, N26, Norddeutsche Landesbank, Oldenburgische Landesbank, Pictet, Postbank, Questrade, Quirin Privatbank, Schelhammer Capital Bank, Sutor Bank, Swissquote, Tradegate, UBS, Union Investment, V-Bank, Vanguard, VDK Bank, Volksbank, VZ VermögensZentrum, Weberbank and Zürcher Kantonalbank.
- Improvement: The Yahoo Finance exchange picker now shows a label for FTSE Global Index quotes (.FGI).
- Improvement: Converting a transaction now keeps the source it was imported from (for example, a buy into a delivery).
- Fix: Historical prices from AMFI India load again after the provider changed its data format.
- Fix: Yahoo Finance now uses the correct exchange code for the Saudi Stock Exchange (.SR).
- Fix: The price preview for the MFAPI quote feed now updates when the scheme code changes.
- Fix: The main tab area can no longer be detached by accident.
0.87.016 Aug 2026
- New: Trades can now be grouped by lot: each purchase creates its own trade, and sales are split across the lots they close.
- New: Categories in the statement of assets can be collapsed and expanded; the collapsed state is remembered per file and taxonomy.
- New: The line width in the historical price chart can now be set to 1, 2, or 3 pixels via the chart menu.
- Improvement: Enhanced PDF importers for Barclays Bank Ireland, comdirect, Consorsbank, DAB, Raiffeisen Bankengruppe, and Trade Republic.
- Improvement: The title of the Trades view now reflects the selected accounts and portfolios.
- Fix: Importing a large number of PDF documents no longer fails with a "No more handles" error.
- Fix: Searching for a new instrument no longer aborts with an error when a search provider returns an unexpected answer.
- Fix: Trades now use the exchange rate recorded on the transaction instead of the daily rate.
- Fix: Fixed a sporadic error in the portfolio balance chart when it was updated twice in quick succession.
- Fix: The donut chart now sorts consistently with the pie chart.
0.86.130 Jul 2026
- New: PDF and CSV import remember the last used directory per account.
- New: Added a PDF importer for Thurgauer Kantonalbank.
- Improvement: Enhanced PDF importers for DADAT, Sunrise, St.Galler Kantonalbank, comdirect, S Broker, Union Investment, Findependent AG, UmweltBank, and DekaBank.
- Improvement: The right-click menu on a table header now also lists the show/hide column actions.
- Improvement: The attributes page of the edit security dialog can be scrolled.
- Fix: FIFO capital gains now use the exchange rate recorded on the transaction, matching the moving average and cost calculations.
- Fix: Corrected a regression in the calculation of shares held.



