Stock Quotes - information passed to server

When KMyMoney gets stock prices from the source you select (Yahoo by default), does it send any personal Identifiable information, or just the stock ticket symbol? Is it an annomyous request? The way Big Data is going, I would not be suprised if they start requesting “Who” is wanting these stock prices and will not release any information unless they can identify the requestor to add to their data collection and their “profile” of me.

I am changing to KMyMoney from Quicken. I was talking to a service agent at Quicken about the fact that a payment I electronically requested did not reach the recipient until after the due date even though the date on the check was a couple of days before the due date. He told me information about specifics stored in my Quicken database. This indicated to me that Quicken loads your data file to their server every time you open a Quicken file. I have several files and he could tell me the name and contents of the files! In the past, Quicken would only “update” every several months to update their application software on your computer. Now it does an “update” every time you open a data file. The only reason is for them to UPDATE THEIR SERVER with your private financial data file.

I believe strongly in privacy, so I want to know the specifics of how KMyMoney goes out and gets current price information.

If you look at the price source configuration, you will see the URL KMM uses to fetch data. The regexes are then used to extract the data from the returned web page. You can just copy/paste that URL into any browser (be sure to substitute an actual stock symbol for the %1). As with using a browser, KMM does not send any personal data, but the mechanism of using HTTP itself does send some additional data. For example, browsers send data about the OS and some configuration data about the browser itself, and there have been articles about how identifiable that data makes you. (For one example of this, see
For KMM fetching stock prices, you would either need to use Wireshark (or similar tool) or look at the source code (not of KMM itself, but of the KDE libraries KMM uses to fetch a URL) to see exactly what data does get sent. I should probably know (or remember) which library that is, but I plead to having a mind like a steel sieve.

Thank you. I use to have a memory like a bear trap, but now my mind is a steel sieve too. I’m sure KMyMoney sends the IP address and those things, but a good VPN will protect you from being tracked by your IP address.

Do you know of any way to manually enter cost basis for a security? I am setting this up because of inherited securities. Lot tracking does not pertain to this situation. The Cost basis is the quantity of the security inherited and the value (price per share) on the Date of Death of the Grantor. So, it becomes a single cost basis as if you purchased it on that date. Then future sells and buys would need to keep track of lot prices.


If you actually transferred (remove and add) the security from the old
account to a new account as of the day of death, just enter the price
on that date, and since that is when the shares entered the account, I
“THINK” that should set the basis. Please check it out and let us
know. The whole way Investments are handled in KKM is known to need an
update, but it’s unfortunately not high on the list. At least I am
working on accumulating issues that have specific problems, and basis
and calculation of unrealized gains is one of them. If what I suggest
turns out not to work (only if the add shares doesn’t seem to set a
basis cost) I suppose you can add shares, sell shares, and buy shares
all on the date of death (or the buy one day later) to force an add to
set the basis cost.

Note if you follow that link I sent, even without your IP address,
there is often enough browser information sent to support more tracking
than you or I would like, even without a useful IP address. Whether
that info can actually be linked to your real identity is probably up
for debate.

Add Shares does not have an input field for the price per share or the total price for all shares. It only has a Shares entry field. I tried going into the price area and manually giving it a price, but it did not associate the manual price with the ADD shares action. Investment accounts of the Grantors were entered with Buy transactions and then I just faked a cash deposit to the “brokerage account” to cover the cost of the Buy actions. I created a new investment account for the Estate account with a brokerage account. Then I did a “Remove Shares” action on the original accounts. This was a 100% transfer of shares and cash to the Estate account using “Add Shares”. Then the Estate account was distributed to 4 inheritors accounts at the same the same institution. I created 4 new Investment accounts with brokerage. I used Remove Shares on the Estate account 4 times for each security and then had to go to the new Inheritor’s accounts and “Add Shares” based on the provisions of the Will. All of this has actually been done in the real world. I was just trying to get it recorded into KMyMoney. If you add up the 4 “removed shares” of a security, it totals the original Add Shares to the Estate account. But the Estate account in KMyMoney is a mess. It should show “Share Balances” of 0. But it shows some large positive values and some large negative values in the “currency balance” column.

In an Investment Account, the value (in currency) is not what is primarily being tracked. It is the Share Balance that needs to be updated and reported. The currency value of a security is only a “matter of interest”. The real number that has to be tracked is the number of shares! I set my securities to 3 decimal places. It only shows “Balance” in an Investment Account in the currency! It should be showing “Balance” in an Investment account as the balance of the number of Shares and then show a Value column for the currency. Reconciling an Investment Account is a reconciliation of the number of shares of a security for the statement period, not the value of the shares. You want to reconcile Buys, sells, Dividend reinvestment, Adds and Removes, splits, and other actions that happen to “Shares” to make sure the number of shares of each security in KMyMoney is correct to the number of shares on the institution statement. KMyMoney does none of that. It did not even calculate the number of shares correctly after 1 Add and then 4 Removes! Maybe if you do Buy and Sell and then fudge the money in the brokerage account it would keep track of the proper share balance. I have not tried that.

But now, I have a really messed up database of the number of shares in each account.

There REALLY needs to be a Transfer function on the number of Shares between accounts. The manual says that there really isn’t a reconcile for an investment account!

I’m keeping my data in an SQLite3 database. I have a lot of experience using SQLite3. I have tools to directly access it, modify it, and I have written programming in C/C++ to execute SQL statements to manipulate an SQLite3 database. I may have to download the source for KMyMoney and see if I can write my own version of KMyMoney to handle Investment accounts correctly.


[Re-sending from the subscribed address. Hopefully there won’t be a duplicate entry.]

The handling of Investment in KMM is quite complex, thus the reason it is essentially waiting for probably near complete rewrite, instead of easily being able to fix any of the issues in the short term. It will take me a while to go through your whole post to see if I can offer any further advice.

You are correct that an “Add shares” transaction has no mention of price. What I was suggesting was setting a price for that day. That gives a value of the stock on the day it was added to that account. KMM does track the number of shares of a security, not the value. It calculates the value on any date by multiplying the number of shares held on that date by the latest price available on or before that date. Prices can be entered as part of a buy or sell transaction, by downloading, or by manual entry.

If your Estate account has the wrong number of shares, then something does seem funny. The number of shares is only altered by add/remove/buy/sell/divivdend reinvest/split transactions. (That’s only from memory, but I’m pretty sure that’s it.)

In terms of KMM’s use of an SQL database back end, understand that KMM treats it essentially the same as a file back end. It reads in the data when it starts, and writes it back out on a File/Save action. All transactions only affect the in-memory data until the file is saved. I’m just pointing that out so you don’t wonder why the database does not change in real time when you add a transaction.


Thank you for hanging with me on this.

First, I do not understand why a security is considered a sub-account of the investment account. It is simply a security being held in the investment account. Fortunately, I read in the manual a way to “use” securities that have already been defined in other accounts. A very cumbersome cluge to be sure and not user friendly or an obvious operation. You have to know the secret from reading the user manual. But, it probably saved me hours on entry work.

Securities should be a Global item. If there are different classes of the security, then each would have to be defined, but each is a specific asset (not a sub-account) that could be referenced by any Investment Account in KMyMoney. This is a key concept of relational databases that has been around since at least 1990. Dbase was not considered a relational database, but you could make it one by how you initialized it and used it.

Now my example of a problem:
After creating the Investment account for the Estate, I did an “Add shares” transaction of 500 Shares for General Motors. Then 4 “Remove Shares” transactions were done to divide the 500 shares into Inheritor’s Investment accounts. A remove for 250 shares, a remove of 83.334 shares, a remove of 83.333 shares, a remove of 83.333 shares.

I ran a report for “Investment Holdings by Account”. I turned off all the checkboxes by going to configure>Account and pressing the None button. Then I selected just the parent Estate Account checkbox. I verified that the date range covered the 5 transactions (1 Add, 4 Remove). Also, the other filters were set to All Amounts, All Categories, All Tags, All Payees, and in Details: All Types, All States, and Any transaction. I click Apply and I get a report with 4 headings (Account, Shares 3-decimal places, Price, Amount). There are only 4 line entries, not 5, for General Motors. Under Shares (-83.334, -83.333, +250, -83.333). The price and amount in USD are given to 2 decimal places. There is no “Share Balance” column. Also, the Add shares of 500 is not reported at all. That Add transaction was within the date range of the report. It was in the previous month statement and had been manually reconciled. The 4 Remove transaction are within a single month and that month has been manually reconciled.

Again, the running “Share Balance” is what is important in a report. Every other software I have used shows the resulting Share Balance that is current after the transaction is applied. The Price and Amount columns are of no use to me because they do not even show a running Amount Balance.

You could quickly and easily setup an investment account and enter 1 Add and 4 Remove transactions and see this in action.

The ledger is just as bad as the report because there is NO running Share Balance column after each transaction. The numbers I see in the Balance column are positive and negative values of the transaction Quantity and not a Running Share Balance. It is not clear why some are positive and some are negative when all the transactions in this month’s statement are “Remove transactions”. The negative numbers in the balance column make it look like the share balance in the Estate Account for a specific security is in the negative!

These problems make it basically impossible to use KMyMoney for Investment Accounts. It only seems to handle Bank Accounts (Checking, and Savings).

Very disappointing,

It probably would have been easier for me to say that KMM fetches prices more like going to in a browser than like an android or iOS app or an applications like Quicken. KMM never “phones home”. In terms of usability for investments, I have been using KMM for years to track my investments in multiple accounts at four brokerages. I know there are deficiencies, for which I use the reporting at each broker’s web site, but for basic tracking of holdings and current value, it’s fine.

In terms of the running balance, what you seem to want is exactly what KMM does. For each securityk,k the balance is the number of shares. If you are really seeing numbers that do not do that, see if you can create a test .kmy file with one or two securities and just a few transactions. If you can, we can use that to track down what the problem is. We can’t fix any bug we can’t replicate. Separately, a screen shot would be useful, but that would be your data, thus my suggestion of creating a test file.