5 ms·
Ledger deals with multiple currencies quite well in my experience, especially using a custom prices.db file. What is the problem you are having?
by oskarth 11y ago
Ledger deals with multiple currencies quite well in my experience, especially using a custom prices.db file. What is the problem you are having?
- avodonosov 11y agoAfter currency exchange transactions it doesn't balance.
- kspaans 11y agoI deal with multiple currencies in Ledger as well. Feel free to email me or join their IRC channel for some help! :)
- avodonosov 11y agoYou profile doesn't specify your email :) I'd be glad to get help here, but I think this is just an unsolved problem. Discussed it on google group. I think I understand it relatively well, and even wanted to fix it, therefore I doubt multiple currencies can be handled with the current version of ledger; but would be glad to find a workaround.
- avodonosov 11y agoI don't have it installed now, so an example just out of my head: suppose I have 100 USD; I exchange 50 USD to EUR at 1.2 rate. Then I spend 20 EUR on food. Then I exchange remaining EUR to USD at 1.1 rate. Now, if we generate a balance report, do you say it will be balanced?
- roel_v 11y agoWhat do you mean 'it will be balanced'? In double entry accounting, every ledger entry needs to balance. You have three entries. Whether they balance depends on how you enter them. What is the specific problem in your example?
- avodonosov 11y agoI mean that balance report had 0 total. More precisely, I want to convert everything to a single currency, and than have 0 balance. I.g. I want to check my net worth in USD, or my net worth in EUR. To see capital gains/losses.
- kspaans 11y agoIf I'm understanding you correctly you expected to see a line item in your balance report stating your losses due to the change in the exchange rate between USD and EUR? Ledger definitely supports that, you just need to make sure to arrange your accounts and transactions accordingly to capture that information. See the "Currency Trading Accounts" method: https://github.com/ledger/ledger/wiki/Currency-trading-accounts https://github.com/ledger/ledger/wiki/Currency-trading-accou...
- roel_v 11y agoAfter every entry, your total system balances to 0. Of course you have to enter all your entries, and not use the 'auto balancing' and unit conversion things that ledger recommends because they don't make sense. If you use ledger just as a, well, ledger, you can do what you want, of course after specifying exchange rates, just like you'd do in a real accounting system.
- avodonosov 11y agoYou don't understand. I mean I want to enter facts as they are, included real currencies used in transactions. But when I review balance, net worth I want them presented a single currency I choose.
- roel_v 11y agoNo, you don't understand. What you're asking doesn't make sense, but I'll admit it's not obvious when you've never done 'real' double entry accounting. What you need to enter are the 'real facts', it's only at balance time that you can make a 'net worth' in one currency, depending on a given exchange rate.
- mikekchar 11y agoIt can be done, but it is tricky, especially if you have to report capital gains as FIFO. The documentation is in ledger is misleading/wrong (or was the last time I looked). I have been meaning to write a blog post on this topic for ages (a year???). Warning: This may be wrong. I just grabbed it randomly out of a test file I was using to try this out and I don't have time to verify it. However, I think it will put you on the right track even if it is wrong (also not sure how to get it formatted correctly here). Anyway this is the kind of thing you have to do: 2014/09/04 Exchange Currency ; Note that the next line generates 20 GBP, not 10 GBP as you might expect ; This is so that the excess is captured by the capital gains account at the bottom ; Also note that the @ 0.50 GBP is not actually used by ledger in this case ; You could put @ 5000 GBP and it would do the same thing. The rate is ; determined by the lot price. Assets:CDN -20.00 CDN {1.00 GBP} @ 0.50 GBP ; It is unfortunate that you can't get ledger to calculate or assert the next value Assets:GBP 10.00 GBP ; Proceeds without commission Expenses:Commissions 0.20 GBP Assets:GBP -0.20 GBP ; Balance the commission Income:Capital Gains The main things you have to understand are that you need to specify the lot price in the transaction. Second, you must specify the price of the transaction. The P line is only used for calculating current value -- it will not set the price of the transaction correctly (if you don't specify it, I think it sets it to whatever the P line is set to when you run the report, which is clearly wrong). Also, you have to calculate either the total proceeds for the balancing account or the capital gains. Also, very unfortunately, with this scheme you can not use the @@ method of specifying the price. I do the math and calculate the result and let ledger calculate capital gains, because that seems the most reasonable thing to do. Some people feel very strongly that a human should calculate the capital gains by hand and enter that value. Either way should work. Hopefully the above should unstick you. If you are using average method for capital gains, it is dramatically simpler, but I don't have an example handy. Printing reports with the lot prices is incredibly useful as the lots should balance out to zero. If they do not, then you have an error somewhere (and boy does that suck). It's also very frustrating when doing FIFO or LIFO that you constantly need to run the report to show you how much you have left in each lot, and then go and figure out which lots are the next ones to use. I think this can be automated, but I haven't gotten around to doing it.
- 11y ago