sl75
Posts: 2,092
Likes: 1,245
|
Post by sl75 on Sept 15, 2015 16:53:39 GMT
chris: Can you fix it so that I can shift the £0.0057... from my cash account to my MLIA (or other investment account)? Maybe if the available balance is short of the requested transfer by less than 1p, then transfer the whole balance? Not earth-shattering, just annoying. Been wanting to do that for ages too... Marginally less annoying now that the fraction of a penny is being treated as part of the QAA, but still an annoying UI blunder for something that the back-end is clearly capable of doing. The nearest method I've found so far was to hover over the MLIA balance, and see what the fractional penny amount "awaiting investment" is... if it, added to the amount in the cash account adds up to at least a full penny, you can ask to withdraw from the MLIA an amount exceeding the "awaiting investment" amount. Then cancel the withdrawal and transfer an amount including the recombined penny back in. Each time a further repayment occurs it will "randomise" the fractional penny amount, so by doing this every time that it will allow a little more back in to the MLIA, you can get closer and closer to transferring the full fractional amount back in, but it will still continue to taunt you by saying there's an amount "<0.01" in the cash account, which the system is perfectly capable of combining with the MLIA balance but refuses to allow you to do so.
|
|
|
Post by meledor on Sept 15, 2015 17:54:59 GMT
Having worked at the business end of software for financial institutions as well as accounting software for a number of years all I can say is that forcing users to deal with fractions of a penny is quite simply the result of poor systems design. This has got to be damaging to the platform's reputation surely?
|
|
niceguy37
Member of DD Central
Posts: 504
Likes: 254
|
Post by niceguy37 on Sept 16, 2015 8:42:42 GMT
Having worked at the business end of software for financial institutions as well as accounting software for a number of years all I can say is that forcing users to deal with fractions of a penny is quite simply the result of poor systems design. This has got to be damaging to the platform's reputation surely? I must admit I'm surprised the rounding issues have been allowed to drag on for so long with so much user annoyance and so much time spent by AC on the subject. chris, how about this for a plan: 1. Keep as many digits as AC deem fit on the back end but display amounts rounded to whole pennies. 2. Allow 6 decimal places to be displayed with mouse-over. Then anyone who wants to check calculations can be confident they are correct. 3. If any transaction would leave a balance of less than 1/2 penny behind, then sweep it up into the transaction to leave an exactly nil balance clean position.
I appreciate that the various account statements are probably stored as fixed text, rather than separate columns of data (transaction type / loan# / rate / amount etc) and compiled from these, so on the statements it might have to remain at 6 decimal places, until the statement log text is compiled.
Surely AC will be happy to have the accuracy they need, lenders less annoyed and less confused, and a much tidier cleaner and more attractive system.
Does anyone have any objections to this suggestion? (Aside from a lengthy war of attrition over whether it should be 4 or 6 decimal places shown when hovering the mouse over the amount.)
|
|
sl75
Posts: 2,092
Likes: 1,245
|
Post by sl75 on Sept 16, 2015 9:52:03 GMT
3. If any transaction would leave a balance of less than 1/2 penny behind, then sweep it up into the transaction to leave an exactly nil balance clean position.
Not always going to be possible - suppose you've got £10.001 in the account now, and someone else sells exactly £10 of a loan you're the only person trying to buy. Whilst I acknowledge there's a wider issue of how fractional balances are displayed in various places, there's only a single change in functionality required: When adding or removing funds from an account give an option for "all available funds" (possibly ticked by default, as it's the most likely thing someone will want to do), which is automatically treated as if you'd filled in the exact amount to 20 decimal places. When the box is not ticked, allow the user to enter an amount in whole pence as at present.
|
|
|
Post by meledor on Sept 16, 2015 10:41:18 GMT
3. If any transaction would leave a balance of less than 1/2 penny behind, then sweep it up into the transaction to leave an exactly nil balance clean position.
Not always going to be possible - suppose you've got £10.001 in the account now, and someone else sells exactly £10 of a loan you're the only person trying to buy. Whilst I acknowledge there's a wider issue of how fractional balances are displayed in various places, there's only a single change in functionality required: When adding or removing funds from an account give an option for "all available funds" (possibly ticked by default, as it's the most likely thing someone will want to do), which is automatically treated as if you'd filled in the exact amount to 20 decimal places. When the box is not ticked, allow the user to enter an amount in whole pence as at present.
But you haven't got £10.001 - the currency in this country is pound sterling divisible by 100 pennies. What you have got is a poorly designed program confusing everybody. If a customer orders a quantity of 10 of an item with a unit price of £0.1444 I don't raise an invoice and debit the sales ledger with £1.444. Business software is designed to follow rounding conventions so users do not have to put up with this confusion.
|
|
|
Post by chris on Sept 16, 2015 10:50:29 GMT
Not always going to be possible - suppose you've got £10.001 in the account now, and someone else sells exactly £10 of a loan you're the only person trying to buy. Whilst I acknowledge there's a wider issue of how fractional balances are displayed in various places, there's only a single change in functionality required: When adding or removing funds from an account give an option for "all available funds" (possibly ticked by default, as it's the most likely thing someone will want to do), which is automatically treated as if you'd filled in the exact amount to 20 decimal places. When the box is not ticked, allow the user to enter an amount in whole pence as at present.
But you haven't got £10.001 - the currency in this country is pound sterling divisible by 100 pennies. What you have got is a poorly designed program confusing everybody. If a customer orders a quantity of 10 of an item with a unit price of £0.1444 I don't raise an invoice and debit the sales ledger with £1.444. Business software is designed to follow rounding conventions so users do not have to put up with this confusion. Business software doesn't deal with micro-transactions and fractional repayments and refinancing of parts of a loan thousands of times a day. We're also not the only business in the world to deal with fractions of a penny.
|
|
niceguy37
Member of DD Central
Posts: 504
Likes: 254
|
Post by niceguy37 on Sept 16, 2015 11:00:37 GMT
3. If any transaction would leave a balance of less than 1/2 penny behind, then sweep it up into the transaction to leave an exactly nil balance clean position.
Not always going to be possible - suppose you've got £10.001 in the account now, and someone else sells exactly £10 of a loan you're the only person trying to buy. Whilst I acknowledge there's a wider issue of how fractional balances are displayed in various places, there's only a single change in functionality required: When adding or removing funds from an account give an option for "all available funds" (possibly ticked by default, as it's the most likely thing someone will want to do), which is automatically treated as if you'd filled in the exact amount to 20 decimal places. When the box is not ticked, allow the user to enter an amount in whole pence as at present. With respect, that's an extremely unlikely scenario, but if it happened to arise then obviously the system would be obliged to leave you with a fragment of a penny. Regarding your "Withdraw all available funds" suggestion this would be useful if, for example you had 10.0001 in a particular account and you were then expecting fractions of pennies in interest later. If you requested a withdrawal of £10, the system would clear out the out, sweeping up the 0.0001p with the £10. And later when fractions of pennies arrived they would be transferred as well.
|
|
|
Post by meledor on Sept 16, 2015 11:34:28 GMT
But you haven't got £10.001 - the currency in this country is pound sterling divisible by 100 pennies. What you have got is a poorly designed program confusing everybody. If a customer orders a quantity of 10 of an item with a unit price of £0.1444 I don't raise an invoice and debit the sales ledger with £1.444. Business software is designed to follow rounding conventions so users do not have to put up with this confusion. Business software doesn't deal with micro-transactions and fractional repayments and refinancing of parts of a loan thousands of times a day. We're also not the only business in the world to deal with fractions of a penny. I don't think there's anything particularly special about what you describe that proper systems design wouldn't solve.
|
|
|
Post by chris on Sept 16, 2015 11:41:36 GMT
Business software doesn't deal with micro-transactions and fractional repayments and refinancing of parts of a loan thousands of times a day. We're also not the only business in the world to deal with fractions of a penny. I don't think there's anything particularly special about what you describe that proper systems design wouldn't solve. How do you pay interest and principal on a £1 loan unit in a 5 year amortising loan? There are only two ways to do so involving monthly repayments - one is to hide the fractions of pennies and only pay them out when they accumulate to 1p the other is to show those accumulated funds. Of course we could ban small trades, put a £1k minimum investment in place, etc. but I don't see how that helps small investors.
|
|
|
Post by meledor on Sept 16, 2015 11:58:57 GMT
I don't think there's anything particularly special about what you describe that proper systems design wouldn't solve. How do you pay interest and principal on a £1 loan unit in a 5 year amortising loan? There are only two ways to do so involving monthly repayments - one is to hide the fractions of pennies and only pay them out when they accumulate to 1p the other is to show those accumulated funds. Of course we could ban small trades, put a £1k minimum investment in place, etc. but I don't see how that helps small investors.
I assume you are calculating interest on a cumulative basis (that's how it works for banking and leasing systems I've been involved in). The user would not see any fractions of a penny and interest would be credited when the cumulative interest exceeded a penny in each case. From the amortisation you know the principal to be repaid and the total interest to be earned - it's just a case of making sure it is phased over the amortisation period in a more user friendly way.
|
|
|
Post by chris on Sept 16, 2015 12:26:00 GMT
How do you pay interest and principal on a £1 loan unit in a 5 year amortising loan? There are only two ways to do so involving monthly repayments - one is to hide the fractions of pennies and only pay them out when they accumulate to 1p the other is to show those accumulated funds. Of course we could ban small trades, put a £1k minimum investment in place, etc. but I don't see how that helps small investors.
I assume you are calculating interest on a cumulative basis (that's how it works for banking and leasing systems I've been involved in). The user would not see any fractions of a penny and interest would be credited when the cumulative interest exceeded a penny in each case. From the amortisation you know the principal to be repaid and the total interest to be earned - it's just a case of making sure it is phased over the amortisation period in a more user friendly way.
That's how it used to work but it causes a lot of problems when loan parameters are changed, loan units are split and merged, interest is deferred after sale, etc. For example because principal repayments are always rounded down to whole pennies your actual balance is overstated. If you sell that loan unit then the buyer doesn't receive what they're paying for. Couple that to the way we used to split loan units into £100 chunks to aid sale on the aftermarket and your £10k holding could be up to £1 out due to the cumulative errors. For major investors like our underwriters who were dealing in multiple hundred thousand pound bids that were all then sold on the aftermarket these cumulative errors would add up to quite large amounts. One way of implementing such a system is with two balances - the whole penny balance and the undisplayed excess to whatever precision you need. All we've done is merge those two figures and show lenders the excess.
|
|
|
Post by meledor on Sept 16, 2015 13:00:30 GMT
I assume you are calculating interest on a cumulative basis (that's how it works for banking and leasing systems I've been involved in). The user would not see any fractions of a penny and interest would be credited when the cumulative interest exceeded a penny in each case. From the amortisation you know the principal to be repaid and the total interest to be earned - it's just a case of making sure it is phased over the amortisation period in a more user friendly way.
That's how it used to work but it causes a lot of problems when loan parameters are changed, loan units are split and merged, interest is deferred after sale, etc. For example because principal repayments are always rounded down to whole pennies your actual balance is overstated. If you sell that loan unit then the buyer doesn't receive what they're paying for. Couple that to the way we used to split loan units into £100 chunks to aid sale on the aftermarket and your £10k holding could be up to £1 out due to the cumulative errors. For major investors like our underwriters who were dealing in multiple hundred thousand pound bids that were all then sold on the aftermarket these cumulative errors would add up to quite large amounts. One way of implementing such a system is with two balances - the whole penny balance and the undisplayed excess to whatever precision you need. All we've done is merge those two figures and show lenders the excess.
If principal payments were always rounded down (and never up) the issue was being made worse.
The loan amount sold should not be overstated it should be the amortised amount as calculated then rounded to the nearest penny.
|
|
|
Post by chris on Sept 16, 2015 13:13:28 GMT
That's how it used to work but it causes a lot of problems when loan parameters are changed, loan units are split and merged, interest is deferred after sale, etc. For example because principal repayments are always rounded down to whole pennies your actual balance is overstated. If you sell that loan unit then the buyer doesn't receive what they're paying for. Couple that to the way we used to split loan units into £100 chunks to aid sale on the aftermarket and your £10k holding could be up to £1 out due to the cumulative errors. For major investors like our underwriters who were dealing in multiple hundred thousand pound bids that were all then sold on the aftermarket these cumulative errors would add up to quite large amounts. One way of implementing such a system is with two balances - the whole penny balance and the undisplayed excess to whatever precision you need. All we've done is merge those two figures and show lenders the excess.
If principal payments were always rounded down (and never up) the issue was being made worse.
The loan amount sold should not be overstated it should be the amortised amount as calculated then rounded to the nearest penny.
So taking a loan unit £100 with a £0.9934212p principal repayment (as in reality they'll almost always come in nice round figures like that). How much are you saying the loan unit is worth? Your principal repayment is rounded down to £0.99p so you'd have received that amount back. So any lender looking at their statement would expect their holding to be £99.01. If you then tell them their holding is only £99 they'll tell you there is an error. In reality their holding is between those two figures - both are wrong in their own ways.
|
|
|
Post by meledor on Sept 16, 2015 13:28:40 GMT
If principal payments were always rounded down (and never up) the issue was being made worse.
The loan amount sold should not be overstated it should be the amortised amount as calculated then rounded to the nearest penny.
So taking a loan unit £100 with a £0.9934212p principal repayment (as in reality they'll almost always come in nice round figures like that). How much are you saying the loan unit is worth? Your principal repayment is rounded down to £0.99p so you'd have received that amount back. So any lender looking at their statement would expect their holding to be £99.01. If you then tell them their holding is only £99 they'll tell you there is an error. In reality their holding is between those two figures - both are wrong in their own ways.
The loan is worth whatever the amortisation calculation comes up with (principal repayment and interest are derived from this). For the purpose of the financial records for the user it is rounded and if sold transferred at that amount. There should be no question of users expecting their holding to be higher by £0.01
|
|
|
Post by chris on Sept 16, 2015 13:55:38 GMT
So taking a loan unit £100 with a £0.9934212p principal repayment (as in reality they'll almost always come in nice round figures like that). How much are you saying the loan unit is worth? Your principal repayment is rounded down to £0.99p so you'd have received that amount back. So any lender looking at their statement would expect their holding to be £99.01. If you then tell them their holding is only £99 they'll tell you there is an error. In reality their holding is between those two figures - both are wrong in their own ways.
The loan is worth whatever the amortisation calculation comes up with (principal repayment and interest are derived from this). For the purpose of the financial records for the user it is rounded and if sold transferred at that amount. There should be no question of users expecting their holding to be higher by £0.01
That's what the rounding does though, or if it's rounded down then their holding will always be lower than their statement will say it's worth.
|
|