Here, we look at how currencies and commodities are supported in Prudent.
Currencies are commodities
Ledger does not make any assumption on the commodities that you may want to specify in your journal. Thus, currencies are treated the same way as commodities. Prudent reports and features operate on the same understanding.
You can specify any commodity you want, i.e.:
2🐑 $13.90 10 APPL
From Ledger's documentation:
"The commodity may be any non-numeric string that does not contain a period, comma, forward slash or at-sign. It may appear before or after the amount, although it is assumed that symbols appearing before the amount refer to currencies, while non-joined symbols appearing after the amount refer to commodities"
If you have multiple commodities in your report and do not specify a base currency, Prudent reports will show the expand button by default:
For example, a journal with the following entries:
2018/02/25 Assets:Current $168 Income:Interest 2018/02/25 Assets:Current $50 Expenses:Food 2018/02/25 Assets:Current £3000 Income:Royalty
will result in the following month card (for example):
Click on the expand button to see the values of each individual commodity:
The commodity switch toggles between report views that shows values in a base commodity (based on the relative prices to all the other commodities) and report views that shows values in all involved commodities.
You can and will want to specify conversion rates between different commodities. A conversion rate can be specified with the following syntax:
PYYYY/MM/DD HH:MM:SS <Commodity Symbol> <Price in Base Currency>
P2018/02/26 15:50:00 £ $1.31
The above specifies the price of one unit of £ in dollars ($). When an exchange rate is available, Prudent will use it to show reports in combined value. For example, if we append the above to the example earlier:
2018/02/25 Assets:Current $168 Income:Interest 2018/02/25 Assets:Current $50 Expenses:Food 2018/02/25 Assets:Current £3000 Income:Royalty P2018/02/26 15:50:00 £ $1.31
Prudent will show this month card even in combined commodity view:
One useful thing to note is the use of the commodity definition syntax to handle stocks that are priced in a part of a currency. For example, LSE stock prices are quoted in pence. In this case, you can define:
P 2016/09/3 02:17:58 p £0.01
And continue to buy and sell stocks in the
2020/02/27 * £10.50 Assets:Shares:Halifax 6 "FASPT" @ 1050p Assets:Shares:Halifax
Price updates can now be made in
P 2020/3/21 16:31:9 FASPT p38.2
Prudent in practice
From a practical perspective, you wouldn't typically need to specify the either a transaction nor the prices of commodities manually by entering text into your Ledger. With the use of Import and Sync add-ons (coming soon!), Prudent will automatically create transactions with commodity values that are compliant to Ledger's format and automatically update the prices of commodities that you use.