Script:
~addons/finance/finexec/basicfinance/simple.ijs
Contributor: William Szuch
Updated: 2022 6 25
Depend: nil
Definitions: loaded to locale base
Status: done
Script source:
simple.ijs
Definitions for solving simple interest rate
problems for
a constant simple interest rate over a period.
Equations:

Definitions
effectiveFromSimple_T
|
d
|
Tacit form of effectiveFromSimple
|
simpleFromEffective_T
|
d
|
Tacit form of simpleFromEffective
|
sirate_E
|
m
|
Explicit form of sirate
|
effectiveFromSimple
(dyad)
Form: explicit
Depend: nil
Calculate the effective interest rate for a time from the
simple interest rate for a time unit over a period.
Syntax
(S)effectiveFromSimple(T)
S = constant simple interest rate for one time unit over the period
T = number of time units in the period
Example
(0.05)effectiveFromSimple(1)
0.05
(0.05)effectiveFromSimple(3)
0.0476896
(0.05)effectiveFromSimple(i. 10)
0 0.05 0.0488088 0.0476896 0.0466351 0.0456396 0.0446975 0.0438044 0.042956 0.0421489
r (monad)
Form: tacit
Depend: nil
Present value of 1 payable in 1 time unit
for a simple interest rate S.
Syntax
r(S)
S = simple interest rate for one time unit
Example
r(0.05)
0.952381
r(0 0.01 0.05 0.09)
1 0.990099 0.952381 0.917431
rt (dyad)
Form: tacit
Depend: nil
Present value of 1 payable in a period of T time units
for a constant simple interest rate S over the period.
Syntax
(S)rt(T)
S = constant simple interest rate for one time unit over the period
T = number of time units in the period
Example
(0.05)rt(10)
0.666667
(0.05)rt(0.1)
0.995025
(0.05)rt(0.1 0.5 0.75 1)
0.995025 0.97561 0.963855 0.952381
(0 0.05 0.07)rt(0 0.1 0.5 0.75 1)
1 1 1
1 0.995025 0.993049
1 0.97561 0.966184
1 0.963855 0.950119
1 0.952381 0.934579
s (monad)
Form: tacit
Depend: nil
Future value of 1 in 1 time unit
for a simple interest rate S.
Syntax
s(S)
S = simple interest rate for one time unit
Equation
Example
s(0.05)
1.05
s(0 0.05 0.1 0.15)
1 1.05 1.1 1.15
simpleFromEffective
(dyad)
Form: explicit
Depend: nil
Calculate the simple interest rate for a time from the
effective interest rate for a time unit over a period.
Syntax
(E)simpleFromEffective(T)
E = constant effective interest rate for one time unit over the period
T = number of time units in the period
Example
(0.05)simpleFromEffective(1)
0.05
(0.05)simpleFromEffective(3)
0.0525417
(0.05)simpleFromEffective(i. 10)
0 0.05 0.05125 0.0525417 0.0538766 0.0552563 0.0566826 0.0581572 0.0596819 0.0612587
sirate (monad)
Form: tacit
Depend: nil
Calculate the simple interest rate for a
time unit from the amount at the start and end of a period.
Syntax
sirate(A0;A1;T)
A0 = amount at start of a period
A1 = amount at end of the period
T = period in time units
Example
sirate(100;110;1)
0.1
sirate(100;90;1)
_0.1
sirate(100;103;(91%365))
0.12033
sirate(100;110;0.5 0.7 1 1.1)
0.2 0.142857 0.1 0.0909091
st (dyad)
Form: tacit
Depend: nil
Future value of 1 in T time units
for a simple interest rate S.
Syntax
(S)st(T)
S = constant simple interest rate for one time unit over the period
T = number of time units in the period
Example
(0.05)st(0.6)
1.03
(0.05)st(0 0.5 1.5)
1 1.025 1.075
(0.05 0.07)st(0.1 0.5 0.75 1)
1.005 1.007
1.025 1.035
1.0375 1.0525
1.05 1.07