|
Post by jmot on Jul 29, 2019 22:37:15 GMT
I have been looking at a few web pages on interest calculations performed on the Mintos platform:
But none of these pages explains how the rounding of the interest to the cent is calculated, which is quite important for short term loans of low amount. I have noticed from experience that what they seem to be doing is rounding to the nearest cent similar to rounding to the nearest integer where the integers are the cents: en.wikipedia.org/wiki/Rounding#Rounding_to_the_nearest_integer
It would be nice to know the exact formula if anyone in this forum could provide it.
If the rule followed is the one to the neares integer, then if I am careful in chosing randomly from a range of closing dates or from a range of loan amounts (or both) for a vast quantity of small short term loans and considering the randomness of early redemptions dates, the average of the rounding errors should quickly converge to 0 with the square root of N (where N is the number of loans).
My main worry is that there is no bias in the rounding (like rounding down for example), because in such case lost interest will accumulate very quickly (for example in the case of rounding down, it would be on average half a cent per loan and for 10k small Loans at any one moment it would mean approximately 50eur per average loan duration (which is just a few days and always less than 30 days), end of year the lost interest would be in the few hundreds of euros. I know this is a second order concern compared with originators credit risk, but it is still a concern of mine
|
|
|
Post by hugoncosta on Jul 30, 2019 5:33:29 GMT
They always use 8 decimals if I'm not mistaken. Even if you see that you only made, let's say, 2 cents, internally, you'll receive 1.777777 cents, and your actual balance won't be x + 2 cents, it'll be x + 1.77777 cents.
|
|
|
Post by southseacompany on Jul 30, 2019 5:41:57 GMT
Actually they now use 15 digits after the decimal point, making rounding errors completely insignificant. You can view your account statement and click on Download Selected List to get an Excel sheet that shows your balance and transactions with full 15-decimal accuracy.
|
|
benaj
Member of DD Central
Posts: 4,857
Likes: 1,591
|
Post by benaj on Jul 30, 2019 6:10:02 GMT
Just downloaded the list, it seems interest up to 16 decimal places, balance up to 13 decimal places 2019-07-30 04:59:57 Delayed interest income on rebuy Rebuy purpose: agreement_prolongation Loan ID: 7311657-04 Interest: 0.0024309475806444 EUR Balance: 9.0416490494034 EUR
|
|
|
Post by southseacompany on Jul 30, 2019 6:15:44 GMT
Slight correction to my earlier comment. It's 16 decimal places. The "real" value is sent to your browser every time you view the website in a json structure; the web UI just hides the extra decimals by showing a rounded value. Since Excel omits tailing zeroes, it sometimes shows fewer digits onscreen, even though every underlying value is 16 decimals.
|
|
|
Post by jmot on Jul 30, 2019 22:05:42 GMT
Thank you very much. I really appreciated the many answers received.
|
|
|
Post by Ace on Jul 30, 2019 23:54:04 GMT
The discussion here, perhaps unwittingly, seems to relate to how numbers are displayed. The important issue is actually how they are stored.
I know nothing about the Mintos software, but there is zero chance that monetary amounts will be stored as an integer number of cents. This would never be done in any serious, or even semi-serious, financial system. The potential rounding error that is concerning you will not occur in any significant way.
At worst case each monetary figure will be stored as a 64 bit floating point binary word. This provides approximately 16 significant figures of precision (it's approximate because it depends to some extent on the actual number being stored). A figure of €1,000,000, when stored this way, would take more than a hundred years of a systematic rounding error 200 times per day in one direction before it would be in error by a single cent. In all likeliness they would be stored as at least 128 bit words, in which case it would take longer than the life span of the earth to get that 1 cent error. There are many things that one should be concerned about in the world of P2P, but this is not one of them.
It's interesting to note that, although they will be stored with sufficient precision, many numbers cannot be stored exactly in binary. E.g. 10 cents, when stored as €0.1 cannot be stored exactly, because 0.1 cannot be represented exactly as a binary fraction. Again, there's no need to worry as it would be stored as a number that's close enough. Sleep easy 😉
|
|