hledger-interest: computes interest for a given account

[ bsd3, finance, program ] [ Propose Tags ]

hledger-interest is a small command-line utility based on Simon Michael's hleder library. Its purpose is to compute interest for a given ledger account. Using command line flags, the program can be configured to use various schemes for day-counting, such as act/act, 30360, 30E360, and 30/360isda. Furthermore, it supports a (small) number of interest schemes, i.e. annual interest with a fixed rate and the scheme mandated by the German BGB288 (Basiszins für Verbrauchergeschäfte). Extending support for other schemes is fairly easy, but currently requires changing to the source code.

As an example, consider the following loan, stored in a file called test.ledger:

2008/09/26 Loan
    Assets:Bank          EUR 10000.00
    Liabilities:Loan

2008/11/27 Payment
    Assets:Bank          EUR -3771.12
    Liabilities:Loan

2009/05/03 Payment
    Assets:Bank          EUR -1200.00
    Liabilities:Loan

2010/12/10 Payment
    Assets:Bank          EUR -3700.00
    Liabilities:Loan

Suppose that loan earns 5% interest per year, and payments amortize interest before amortizing the principal claim, then the resulting ledger would look like this:

$ hledger-interest --file=test.ledger --source=Expenses:Interest --target=Liabilities:Loan --30-360 --annual=0.05 Liabilities:Loan
2008/09/26 Loan
    Assets:Bank              EUR  10000.00
    Liabilities:Loan

2008/11/27 Payment
    Assets:Bank              EUR  -3771.12
    Liabilities:Loan

2008/11/27 5.00% interest for EUR -10000.00 over 61 days
    Liabilities:Loan         EUR    -84.72
    Expenses:Interest

2008/12/31 5.00% interest for EUR -6313.60 over 34 days
    Liabilities:Loan         EUR    -29.81
    Expenses:Interest

2009/05/03 Payment
    Assets:Bank              EUR  -1200.00
    Liabilities:Loan

2009/05/03 5.00% interest for EUR -6343.42 over 123 days
    Liabilities:Loan         EUR   -108.37
    Expenses:Interest

2009/12/31 5.00% interest for EUR -5251.78 over 238 days
    Liabilities:Loan         EUR   -173.60
    Expenses:Interest

2010/12/10 Payment
    Assets:Bank              EUR  -3700.00
    Liabilities:Loan

2010/12/10 5.00% interest for EUR -5425.38 over 340 days
    Liabilities:Loan         EUR   -256.20
    Expenses:Interest

2010/12/31 5.00% interest for EUR -1981.58 over 21 days
    Liabilities:Loan         EUR     -5.78
    Expenses:Interest

Running the utility with --help gives a brief overview over the available options:

Usage: hledger-interest [OPTION...] ACCOUNT
  -h          --help            print this message and exit
  -V          --version         show version number and exit
  -v          --verbose         echo input ledger to stdout (default)
  -q          --quiet           don't echo input ledger to stdout
              --today           update account until today
  -f FILE     --file=FILE       input ledger file
  -s ACCOUNT  --source=ACCOUNT  interest source account
  -t ACCOUNT  --target=ACCOUNT  interest target account
              --act             use 'act' day counting convention
              --30-360          use '30/360' day counting convention
              --30E-360         use '30E/360' day counting convention
              --30E-360isda     use '30E/360isda' day counting convention
              --constant=RATE   constant interest rate
              --annual=RATE     annual interest rate
              --bgb288          compute interest according to German BGB288

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 1.0, 1.1, 1.2, 1.3, 1.4, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.5, 1.5.1, 1.5.2, 1.5.3, 1.5.4, 1.5.5, 1.6.0, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.6.6
Dependencies base (>=3 && <5), Cabal, hledger-lib (>=0.14 && <0.15), mtl, time [details]
License BSD-3-Clause
Author Peter Simons <simons@cryp.to>
Maintainer Peter Simons <simons@cryp.to>
Revised Revision 1 made by PeterSimons at 2016-10-31T07:23:10Z
Category Finance
Home page http://github.com/peti/hledger-interest
Source repo head: git clone git://github.com/peti/hledger-interest.git
Uploaded by PeterSimons at 2011-08-21T18:02:45Z
Distributions Debian:1.6.0, LTSHaskell:1.6.6, NixOS:1.6.6, openSUSE:1.6.6
Reverse Dependencies 1 direct, 0 indirect [details]
Executables hledger-interest
Downloads 13423 total (71 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-11-18 [all 7 reports]