[GNC-dev] Interest

David Cousens davidcousens at bigpond.com
Wed Dec 12 23:22:11 EST 2018


Hamid,

What would you envisage a loan calculator for a zero interest loan providing? How would you envisage such a calculator
dealing with the five loan types often encountered in Islamic finance e.g.
Murabaha  
Mudarabah
Ijara
Musharaka
Wakala. 
As far as I can see these are all dealt with by (Principal + profit)/No of repayments. Any further complexities are
likely to be contractual in basis rather than in the accounting.

If you can describe what you would like to have GnuCash do, in dealing with such loans, then we are better able to
assess how to meet your needs.

You are right in that it is also highly likely that the original developer did not envisage dealing with a zero interest
loan for some obvious reasons. The formulae commonly used to calculate the payment for an interest bearing loan is
proportional to the interest rate and the present value of the loan, see 
https://en.wikipedia.org/wiki/Mortgage_calculator, which would result in a zero value payment for a zero value interest
rate which is more than likely why a zero interest rate has been excluded in the existing assistant code. 

As other have pointed out and the above article in Wikipedia describes, the payment in the case of zero interest becomes
simply the principal of the loan divided by the number of payments to be made. This is not a complex calculation as in
the case of an interest bearing loan, which is why a calculated payment schedule is not really required.

GnuCash is developed almost entirely by volunteers and there are only a relatively small number of people with a
comprehensive knowledge of the code able to add new features, so incorporating new features requires a developer with:

1 the time to tackle the problem (bugs which prevent GnuCash from working correctly are a higher priority than new
features;
2 the expertise to tackle it;
3 usually a specific interest in the area of the problem.;
4 the problem having a priority with the user base (i.e. the number of users requesting a solution).

As a result new features can sometimes take some time to be developed and incorporated into the GnuCash.

The way to get new features incorporated is to go to https://bugs.gnucash.org and enter a description of the problem you
would like to have addressed describing it as completely as possible. That will at least get your problem into the queue
and development cycle, where it can at least compete with existing bugs/feature requests for priority.

In the mean time, the suggestions people have made are to help you achieve a way of using GnuCash to achieve your ends
using the existing features of GnuCash, until such time as GnuCash can be improved. That is a prime function of the
forum.

It may be that a simple change in the code to allow a zero interest rate in the current loan assistant is all that is
required. Even small changes take some time however as the GnuCash code is complex and changes introduced in one area
can result in unexpected results and problems in other areas of the code.


David Cousens



On Thu, 2018-12-13 at 05:09 +0330, Hamidreza Jafari wrote:
> On چهارشنبه ۱۲ دسامبر ۲۰۱۸ ۱۷:۳۱:۲۱ (+0330) Christopher Lam wrote:
> Many on the list are mentioning that the scenario is possible but simply not 
> provisioned in the part that does it automatically which here it is the 
> calculator. The stress so far evident in discussions causes one to question if 
> this was even originally intended, that is manual operation. If so that has to 
> change. I am not currently in need of such feature but a high view will 
> require that work that can be automated, should be automated. 
> 
> About improving GnuCash, I would rather finish the translation sooner but 
> redesign and extension is possible when practical usage gets momentum.
> 
> Hamid
> 
> > Hi
> > I am not an original developer on this loan assistant.
> > However I think that the original loan druid was designed to
> > calculate/estimate the loan repayment amounts, assuming a conventional
> > loan, with a non-zero interest rate.
> > If the interest rate was zero, there would be little need for a loan druid.
> > e.g. original loan = $1,000 and 20 repayments of $50 each... A simple
> > calculator would do the trick.
> > I do not think there has ever been a policy against having a zero-rated
> > loan... but I think that the loan module has not been properly tested with
> > such figures. So, I am not entirely sure that a "simple refactoring" is a
> > good description of the process; it would require a complete review of the
> > loan assistant, and more testing of code to handle zero-interest loans, to
> > ensure crashes such as division-by-zero do not occur.
> > There is very little time developer CPU cycles available for such work; if
> > you are able to assist in reviewing code, enabling and testing, you are
> > very welcome on board.
> > So I think, at least, the "Loan Repayment Calculator" message "The interest
> > rate cannot be zero" should really be "The loan calculator does not handle
> > zero interest rates."
> > 
> > On Tue, 11 Dec 2018 at 20:05, Hamidreza Jafari <hamidrjafari at gmail.com>
> > 
> > wrote:
> > > Hello,
> > > 
> > > I use GnuCash mostly for personal finance and use its basic features,
> > > that's
> > > why I have not tried it completely with all its capabilities. When I
> > > decided
> > > to translate I had no idea I would encounter parts of it designed in
> > > specific
> > > doctrines. This is one such string that paused my for a while:
> > > 
> > > Enter the annual interest rate in percent. Accepts values from 0.001 -
> > > 100.
> > > The Mortgage Assistant does not support zero-interest loans.
> > > 
> > > Although it is possible to set up zero interest business using extra
> > > effort it
> > > is better that the tool can be used at a policy level. Historical views on
> > > the
> > > subject are clear. It is true that Islam (which was referred to as Sharia)
> > > takes sides about it, it is not the only one contending. There are some
> > > issues
> > > in life that are not a matter of voting simply because of limited capacity
> > > of
> > > everyday person.
> > > 
> > > It is not clear to me if there are some other parts in GnuCash that have
> > > been
> > > designed in similar ideas. I would like it to be accepting of the moral
> > > side
> > > by allowing interest-free transactions (I currently suffice to this level
> > > of
> > > goodness advocacy). I hope it is designed and implemented in such a way
> > > that
> > > extension is possible if not a simple refactoring can do the job.
> > > 
> > > What's the situation?
> > > 
> > > Hamid
> > > 
> > > 
> > > _______________________________________________
> > > gnucash-devel mailing list
> > > gnucash-devel at gnucash.org
> > > https://lists.gnucash.org/mailman/listinfo/gnucash-devel
> 
> 
> 
> 
> _______________________________________________
> gnucash-devel mailing list
> gnucash-devel at gnucash.org
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel



More information about the gnucash-devel mailing list