Author

Topic: Portfolio Performance [Open Source] - Keep track of your Crypto Portfolio! (Read 377 times)

legendary
Activity: 1148
Merit: 3117
A quick update: The team of Portfolio Performance has recently released an Android version[1] as well as an iOS[2] version. I have updated the thread accordingly as well. I was about to make a small guide but I find that the provided links[3][4] make a good explanation of the features and frequent asked questions. If you don't find the information available enough let me know and I'll update the guide with a small walk-through.

[1]https://play.google.com/store/apps/details?id=software.msm.portfolio_performance
[2]https://apps.apple.com/us/app/portfolio-performance/id6451118191
[3]https://www.portfolio-performance.app/en/walkthrough
[4]https://www.portfolio-performance.app/en/faq
legendary
Activity: 1148
Merit: 3117
I just noticed this very recently as well and I will try to bring them back as soon as possible, thank you for reporting. Sorry for the current state of the guide due to this.
You can try with this image hosting site from a forum member.
TalkImg.com - Image hosting for BitcoinTalk
https://www.talkimg.com/

You can upload it manually or use this script to automate things.
[Script] Imgur to TalkImg - automatically fix your broken images
Thank you both for the help. Images have now been updated. Sorry for the downtime.
full member
Activity: 420
Merit: 120
I just noticed this very recently as well and I will try to bring them back as soon as possible, thank you for reporting. Sorry for the current state of the guide due to this.
You can try with this image hosting site from a forum member.
TalkImg.com - Image hosting for BitcoinTalk
https://www.talkimg.com/

You can upload it manually or use this script to automate things.
[Script] Imgur to TalkImg - automatically fix your broken images
legendary
Activity: 1148
Merit: 3117
images are expired(...)
I just noticed this very recently as well and I will try to bring them back as soon as possible, thank you for reporting. Sorry for the current state of the guide due to this.
(...)how you'd add a bitcoin wallet, as a deposit account or as securities account?
You should add as a securities account, under new instrument. The best that you can do (while the images are broken) is quoting my initial post[1] and start following the guide after "Funding your deposit account" using the linked images as a guide (the direct urls are working).
hero member
Activity: 698
Merit: 500
images are expired, how you'd add a bitcoin wallet, as a deposit account or as securities account?
legendary
Activity: 2352
Merit: 6089
bitcoindata.science
This is a brilliant idea. Who knows how manipulative can one become if he has access to the portfolios of hundreds of thousands of people... I'm definitely going to try out this, thanks!

I have always thought about that.

Financial data is the most sensitive kind of data that exists imo. I would definitely never use some "portfolio tracker". However, this might be a good option as it is open source.
 
I have created myself an excel sheet where I update monthly all my financial applications: cryptocurrency, bonds, etf, etc etc... It takes some time to do so every month, but I find that it is definitely worth it.

Controlling the growth of your portfolio is very encouraging, and it certainly helps me to focus in my financial goals.

This software looks good, and if someone do not have some excel sheet or if you are some third party application where your financial data is saved in a remote server, it is definitely worth trying this one out (or just create an excel sheet)
legendary
Activity: 1148
Merit: 3117
Interesting program if you want to create portfolio not only for cryptocurrencies but also for other investment, but it can be a bit complicated for newbies.

I will make a small but deserved advertisement for one more open source portfolio tracking application called crypTrax that is using Coingecko api, and it's made by bitcointalk member Escaflowne.

CrypTrax is available for Linux, Mac and wiNdOws operating system, and it looks really cool:




https://github.com/Escaflownevan/crypTrax
That program also sounds interesting dkbit98, thank you for bringing it to us. The more open source portfolio the better! The UI also seems neat, I'll keep an eye on it as well.

Regarding the signature files I might have something here - someone replied in the forums stating that the .asc files are always posted with each update on their GitHub page[1] - which is correct. However, whenever I run:
Code:
gpg --verify PortfolioPerformance-0.56.3-setup.exe.asc
I get the following message:
Code:
(snip)>gpg --verify PortfolioPerformance-0.56.3-setup.exe.asc
gpg: assuming signed data in 'PortfolioPerformance-0.56.3-setup.exe
gpg: Signature made 09/01/2022 19:49:07 GMT Standard Time
gpg: using RSA key E46E6F8FF02E4C83569084589239277F560C95AC
gpg: Good signature from "Buchen Andreas " [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: No indication that the signature belongs to the owner.
Primary key printout: E46E 6F8F F02E 4C83 5690 8458 9239 277F 560C 95AC
Considering the "Good signature" result I suppose this verifies the integrity of the file? Since I haven't verified the signature myself I reckon it's normal to be greeted with the Warning message in the last few lines of the command window. PGP on Windows wasn't verifying his signature initially, so I had to get his key from here[2], import it and then I was able to verify it.

[1]https://github.com/buchen/portfolio/releases/
[2]https://keys.openpgp.org/search?q=andreas.buchen%40gmail.com
legendary
Activity: 2212
Merit: 7064
Interesting program if you want to create portfolio not only for cryptocurrencies but also for other investment, but it can be a bit complicated for newbies.

I will make a small but deserved advertisement for one more open source portfolio tracking application called crypTrax that is using Coingecko api, and it's made by bitcointalk member Escaflowne.

CrypTrax is available for Linux, Mac and wiNdOws operating system, and it looks really cool:

Bitcointalk topic you should check out if you are interested to try this app:
https://bitcointalksearch.org/topic/cryptrax-keep-track-of-your-cryptocurrencies-5375431


https://github.com/Escaflownevan/crypTrax
hero member
Activity: 1106
Merit: 912
Not Your Keys, Not Your Bitcoin
-snipped-

As I thought, your statement looks adjective to what OP was saying and I wasn't sure enough and assumed you are asking about been offline and other languages. Let's not spam the thread.
Peace  Wink
hero member
Activity: 910
Merit: 677
on the other hand it can also be used offline and with a variety of language choices.
very good i will try this.

I doubt if you read the entire guide OP posted.


  • Works completely offline;
  • Supports multiple languages - (English, Spanish, Dutch, Portuguese, Italian ...)

There you have it; those  are your answers.
precisely because I read it that's why I know it can be used offline and is already in various languages.
I'm trying to practice it now not reading it!
hero member
Activity: 1106
Merit: 912
Not Your Keys, Not Your Bitcoin
on the other hand it can also be used offline and with a variety of language choices.
very good i will try this.

I doubt if you read the entire guide OP posted.


  • Works completely offline;
  • Supports multiple languages - (English, Spanish, Dutch, Portuguese, Italian ...)

There you have it; those  are your answers.
legendary
Activity: 1148
Merit: 3117
This is a brilliant idea. Who knows how manipulative can one become if he has access to the portfolios of hundreds of thousands of people... I'm definitely going to try out this, thanks!
Thank you for the kind words BlackHatCoiner. Your thoughts are exactly like mine - who knows, in this day and age of data=gold, what corporations are doing with the data within our portfolio? Open source is the way to go regarding this field and this program for sure it's a feasible choice.

May I assume you're involved into this? Is it your work?
I'm assuming based on OP stating they haven't found a way to verify the download, I expect not.
Welsh is correct @BlackHatCoiner, altough I understand some concepts regarding coding, I'm in no way involved in the development of the program. I've started using it some years ago to track some investments that I did and it has been a joy to see it evolve into a fully fledged program. The program was originally created by Andreas Buchen (GitHub[1], Twitter[2] and Xing Profile[3]) but now it has the help of many developers that continue to add functionalities to the program itself. Their forums are also very active considering the userbase!

This page isn't working currently, but I'm assuming this is where you would find the hash, and be able to verify the installations/versions.
Indeed, that was what I thought. I raised the question on the forum and as soon as I have an update about it, I'll edit my post to include those keys & procedure.

[1]https://github.com/buchen
[2]https://twitter.com/4asbn
[3]https://www.xing.com/profile/Andreas_Buchen
hero member
Activity: 910
Merit: 677
very cool, I will definitely try this because it can indirectly make it easier for us to track fortopolio with this.
on the other hand it can also be used offline and with a variety of language choices.
very good i will try this.
staff
Activity: 3304
Merit: 4115
Weird. I don't think I've ever come across this piece of software, although it looks like its been quite fleshed out. Good find.

This page isn't working currently, but I'm assuming this is where you would find the hash, and be able to verify the installations/versions.


May I assume you're involved into this? Is it your work?
I'm assuming based on OP stating they haven't found a way to verify the download, I expect not.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
This is a brilliant idea. Who knows how manipulative can one become if he has access to the portfolios of hundreds of thousands of people... I'm definitely going to try out this, thanks!

May I assume you're involved into this? Is it your work?
legendary
Activity: 1148
Merit: 3117
Changelog:
Code:
16/01/2022 - Thread created
26/04/2024 - Updated with Android and iOS support
legendary
Activity: 1148
Merit: 3117


.
Table of Contents
Introduction
Windows Instructions
Conclusion
References

.
Introduction
.
About Portfolio Performance

Taken directly from the developers website[1], Portfolio Performance is:
Quote
An 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.
.
Why would I use it?

I know what you're thinking - there are a couple of portfolio trackers out there already. We have trackers from FTX[2] (previously Blockfolio), Delta.app - owned by eToro since late 2019[4] -, CoinMarketCap Portefolio Tracker[5], Coinpeak[6] and even Google excel spreadsheets made by users[7][8] from all over the world. Why would you even think in using a German app that's more geared towards traditional investing anyway? Well, unlike the previous options where we don't know what kind of information they are harvesting from us - FTX, Delta.app,CoinMarketCap, Microsoft Excel + Google Sheets are closed source - , Portfolio Performance is a free and open source tool that can be freely audited by anyone who wants to do it. Just go over their GitHub[9] to check it out!

.
Plus / Delta

PlusDelta
_____________________________________________________________________________________________________________________________________________________
  • Open source;
  • Works completely offline;
  • Doesn't rely on any server - As long as you have it installed, it will run forever on your PC;
  • Provides in-depth indicators regarding your portfolio such as True Time-Weighted Rate of Return, Internal Rate of Return (IRR)...;
  • Supports multiple languages - (English, Spanish, Dutch, Portuguese, Italian ...)
  • Android and iOS applications available
  • German app - Troubleshooting will lead you mostly to german replies/forum;
  • Slight learning curve needed;
  • No smartphone application available - they are working[10] on it;

.
Windows Instructions
.
Installing the software

This part is the easiest one - just open the website (English version mentioned here[1]) and click on the OS that you're running. Sadly I wasn't able to find any kind of information that would allow us to verify the download, but I've kept this as an open issue. Whenever I find the keys of the developer I'll update this section to add an additional step.



.
Setting the correct language

By default the program should apply the same language that your OS is running. If it doesn't and assuming it applies german language, then you'll have follow the following steps:



After clicking on the button identified as #3 just restart the program for the changes to be applied.

.
Main Window - Creating a new file

Whenever you open the program you'll be greeted by the following window:



Since we're creating a new file, which will be stored in a XML file on your computer, we'll just go ahead and select the option "Create a new file (The samples section already has some files created that are more geared towards traditional investment funds and to demonstrate the potential of the program (if you're interested you can also check them out)). The first window that will pop up is quite straightforward, you just need to select the currency that you want your portfolio to be in (in this example I'll be using EUR) and click Next.



You'll be greeted to the following window:



These two concepts - Securities and Reference accounts - are very embodied within the program. Here's how they work:

  • Reference account - See this as an account/bag where you'll deposit / withdraw your money from.
  • Securities account - It's the account where you hold your assets. This account will be the one where you'll record every transaction that you made in a specific broker.

Let's assume that I want to buy BTC from LocalCryptos.com[12] (a non KYC exchange). I would have to do this:

  • Reference account - You can name it whatever you want. I just went with the simpliest one - "Deposit Account";
  • Securities account - Since I'll be using the mentioned service, I'll just name it "LocalCryptos";

Click Add to save this entry and you'll be greeted to this screen:



If you usually buy/sell on other brokers (HodlHodl, LocalCoinSwap, Bitsq) you can also add them in this step. Once you're done click Finish.

.
Main Menu of your portfolio

When you finish the previous step you'll be greeted with the screenshot below which encompasses 5 sections. They are well summarized here[11] so I'll just quote it:



Quote
  • Securities - In this section you specify all securities that you intend to create transactions on.
  • Accounts - In this section you register your transactions in your brokerage accounts (e.g. deposits, withdrawals, buy, sell, dividend).
  • Reports - In this section you can see graphs about your portfolio and how it is performing according to several metrics
  • Taxonomies - In this section you can see how your portfolio is allocated across asset classes. You can also specify your target asset allocation.
  • General Data - In this section you can see the evolution of currency exchange rates and can also change the details of the where ETF information is fetched from.

.
Funding your deposit account

To start buying cryptocurrencies you'll need to have an available balance within your portfolio. To do that just follow these steps:

  • Click on deposit accounts -> Right click in your named deposit (in my case it was just "Deposit Account") -> Select "Deposit..."



On the next screen you are able to enter the amount that you wish to spend on your cryptocurrency (let's say that you'll spend 1.000 €). You can also select which date and time you made the deposit and add a little note if you so desire. After filling all the fields just go ahead and click Save.



If you head over to your Statment of Assets tab you'll see that your 1.000 € are now 100 % of your portfolio and that you are ready to trade this money for securities!



.
Adding Securities (BTC, ETH, XMR ...)

In the beginning Portfolio Performance didn't had any kind of cryptocurrency to be added as a security. Nowadays, if you want to track the price of coins such as BTC or ETH (or any other coin within the Top 10 for example) you simply have to do the following steps:
  • Click on All securities -> Click on the + signal -> Select "New instrument..."



In the search box type the coin you're looking for. In this case let's type "btc" in the search box and hit search. Lots of options will appear and you'll have to look for the one that says either "Bitcoin EUR" or "Bitcoin USD". Select the option which suits you (I'll go ahead with Bitcoin EUR) and click Apply.



A new windows appears allowing you to specify some details of the security. I wouldn't change anything on this tab. However I recommend that you go over to the tab named "Historial Quotes" to select the source that feeds the quote of your security (in this case BTC).



The default option is Yahoo Finance - I advise you to choose another one, such as CoinGecko. If you are also keen to use it, choose that option on that list. A couple of new fields appear:



As you can see in the screenshot above, it seems like the source is broken - no quotes are displayed. What you need to input to make the "link" with CoinGecko is the coin ID which can be found here[13]. If we search for "bitcoin" on that huge list we'll see that the coin id is (as expected) bitcoin. Add that text to the previous field and you'll see that the table gets updated:



Go ahead and click on OK. That's it! You've just added a security to your portfolio! You can repeat the steps for additional cryptocurrencies.

.
Adding transactions

Now that you've got your deposit account funded and that you've added the security that you're interested in, it's time to start registering your transactions. To do that just follow these steps:

  • Click on Securities accounts -> Right click in your named security account (since I would be making purchases on LocalCryptos, I named it the same) -> Select "Buy..."



This next windows is pretty straightforward - you just have to input all the information regarding your purchase(s). If you added more than one security in the previous step you can select which one you'll be buying in the Security field. To demonstrate the reporting tools that the program offers I'll make a dummy purchase of 6 BTC on 01/01/2015 at 100 € each. When you're done editing the fields just click Save. Here's my window:



In your Statment of Assets you'll now see that your portfolio balance has been adjusted to your recent purchase:



If you head over to the Performance option within Reports you'll be treated with the following dashboard:



Bear in mind that these KPI's are only reporting 1 year. If you intend to increase the range, say to 3 years, just click on the top right option (near the gear) and select 3 years. In my case I would have been greeted with this:



The table on the right also gives valuable information - If I were to sold my BTC as of today, I would be looking at 208,077.72 € of capital gains. With more and more transactions being made this table for sure is handy to let you know if you are in the green or red area.

.
Extra section I - Q: "But I can't find my "insert random coin name here"! Can I still use the program?"

Yes you can young padawan you'll just need to follow a couple of extra steps. Follow the section Adding Securities (BTC, ETH, XMR ...) up until the part where you click on the + signal. Instead of choosing New Instrument... go ahead and click on "Add instruments". On the next menu you can just name your cryptocurrency (let's use Railgun as an example) and go straight to the Historical Quotes tab. On there click on the provider and choose JSON.



To get the historical quotes of this coin you'll need both the information from this[13] source - coin id (previously mentioned and explained) - and this base link:
Quote
You have to adapt the previously link to the coin, currency and days that you want. In this case I'll use the following data:

  • id- railgun
  • currency (XYZ) - eur
  • days (XY) - 365

Now we just have to fill the following fields within this window:



Code:
Feed URL: https://api.coingecko.com/api/v3/coins/railgun/market_chart?vs_currency=eur&days=365
Path to Date: $.prices[*][0]
Path to Close: $.prices[*][1]

When you're done just click OK and you're set! Your "next soon to explode" coin is now added in your securities account. Go grab the seat on that rocket!



.
Extra section II - Q: "I've got thousands of transactions on my exchange, do I have to manually insert each one of them?"

No. The program is prepared to import a CSV file with your transactions (assuming your broker provides you with one). I thought of adding a guide for this, but then I found out this[14] neat blog entry that explains it quite well & simple - I would end up creating the same steps. Follow it and you'll be ready to import your transactions into the desired security account. If you have any problem just post and I'll help you out.

.
Conclusion

That's about it! You are now ready to add any cryptocurrency that you wish - as long as it's being tracked by CoinGecko - and you are also able to import all your transactions from your broker accounts. I reckon it's not the most intuitive program out there, but being able to know that no company is selling your data + it's being kept for your eyes only, has to count for something right? Regarding selling your securities, I didn't cover that part because the steps are mostly the same as when you're registering your buying orders. If you do think that I should add just let me know!

Disclaimer: Partial sections of my thread were based from this[11] guide. Since it ends up covering content more geared towards traditional investments (ETF's, bonds...) I decided to focus my guide on what you'll need to track just your crypto portfolio. Feel free to refer to it whenever you're curious about other functionalities of it.

.
References

[1]https://www.portfolio-performance.info/en/
[2]https://blockfolio.com/
[3]https://delta.app/en
[4]https://techcrunch.com/2019/11/06/investment-platform-etoro-acquires-crypto-portfolio-tracker-app-delta/
[5]https://coinmarketcap.com/portfolio-tracker/
[6]https://coinpeak.io/
[7]https://www.reddit.com/r/CryptoCurrency/comments/n5tvpv/due_to_a_high_number_of_requests_ive_updated_my/
[8]https://www.reddit.com/r/CryptoCurrency/comments/7m3nvy/ive_created_an_excel_crypto_portfolio_tracker/
[9]https://github.com/buchen/portfolio
[10]https://forum.portfolio-performance.info/t/zur-entwicklung-der-mobilen-app-android-apple-beitragen/13303
[11]https://indexfundinvestor.eu/2019/06/27/how-to-track-your-investments-with-portfolio-performance/
[12]https://localcryptos.com/
[13]https://api.coingecko.com/api/v3/coins/list
[14]https://www.publish0x.com/bitcoin-trading-experiments/tracking-crypto-trades-how-to-import-in-portfolio-performanc-xzydnpd
Jump to: