These annual updates are becoming a habit..

I actually hadn’t touched PART in over a year, but found myself with an itch to do some coding in December 2014 and started to do some work, and it has been a very productive six weeks.  Highlights:

  • The entire codebase is now in C++
  • Basic command line UI is up and running (e.g. through an XTerm,, or Cygwin command line)
  • Successfully compiled & tested on:
    • Mac OS X Mavericks
    • openSUSE Linux
  • The following data can be loaded into the system:
    • Equities
    • Prices
    • Transactions
  • The following functions can be performed on the loaded data:
    • time weighted return (monthly, up to an “as-of” date)
    • holdings
    • ACB
  • As per my original vision, all functionality functions on either the Fund, Book, or Portfolio level
  • If you do not have a price available, the system will reach out to Yahoo! Finance and try to pull the security price for that day (way cool!!!)
  • Export holdings and TWR to a CSV file

All in all, the system is shaping up where I want it to be.  I’ll post some screenshots soon, albeit only of the text based UI.  I have also started a feature request thread over at Canadian Money Forum to ask folks for what they would like to see in an application.  Through my testing, I have identified a large number of gaps in my holdings (e.g. I still show positions in my Questrade account, which I haven’t used in years; this is because I didn’t add transactions to transfer shares out of the Questrade account, and into the BMO InvestorLine account, when I moved).

Now, limitations/caveats at the moment:

  • Text based UI only — no graphics here!
  • Currently cannot save data back; so when the system pulls prices from Yahoo! Finance, when you exit and restart, those prices are gone.
  • Cannot edit data (e.g. cannot edit a transaction).

Basically, everything is configured via CSV files for now, and you cannot write data back out.  This was by design: by leaving everything in CSV files, I was able to ignore details around saving data, and creating a fancy UI for editing data in the app.  I knew that if I went down that path, I would spend so much time on the UI that I would never get the business logic done.  But, now that the business logic is functioning, I can start working on the UI.

I’ll be posting a new timeline/milestone list shortly!!

Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

× eight = sixty four