Script:
~addons/finance/fp/basicfinance/compoundv.ijs
Contributor: William Szuch
Updated: 2022 6 25
Depend: ~addons/finance/finexec/basicfinance/compound.ijs
Definitions: loaded to locale base
Status: done
Script source:
compoundv.ijs
Definitions for solving compound interest rate
problems with
variable effective interest rates for the time units over a
period.
Equations:

Definitions
anvF (verb)
Form: explicit
Depend:>/b> vf0, vf1
Present value of a level cash flow of one per time unit
with variable effective interest rates Ev over the period
paid at frequency F within the time unit.
Equation:
([x])anvF(N;Ev;[F])
Syntax
([x])anvF(Ev;N;[F])
[x] = 0 : optional: default case payments in advance
1 : payments in arrears
Ev = list of effective interest rate per time unit and can vary
last rate extended, first rate applies to
first time unit
N = integer number of payments of 1 per time unit.
[F] = Optional: default frequency = 1
frequency of payments over a time unit: 1/2/3/4 etc _ for continous
Example
(1)anvF(0.05;1)
0.952381
(0)anvF(0.05;1)
1
anvF(0.05;1)
1
anvF(0.05;10)
8.10782
anvF(0.05 0.06;10)
7.86647
anvF(0.05;10;12)
7.92931
anvF(0.06;10;12)
7.59716
(1)anvF(0.05 0.06;10;12)
7.62808
anvF(0.05 0.06;10;_)
7.64625
ev (dyad)
Form: tacit
List of variable effective interest rates for N time units.
Syntax
(Ev)ev(N)
Ev = list of effective interest rates for a time unit with
the last rate is extended for the period of N time units
N = integer number of time units
Example
(0.05 0.055)ev(12)
0.05 0.055 0.055 0.055 0.055 0.055 0.055 0.055 0.055 0.055 0.055 0.055
(0.02 +0.001 * i. 10)ev(6)
0.02 0.021 0.022 0.023 0.024 0.025
evt (dyad)
Form: tacit
List or table of variable effective interest rates plus one for T time
units.
Syntax
(Ev)evt(T)
Ev = variable effective interest rate for time units over the oeriod
the last rate is estended for the period
fvcfv (dyad)
Form: tacit
Future value of a cash flow C payable at the periods
of T time units from the point of accumulation for variable
effective interest rates Ev.
Equation:
(Ev)fvcfv(C;T)
Syntax
(Ev)pvcfv(C;T)
Ev = variable effective interest rate per time unit over the period.
the last rate is estended for the period
C = amount of cash flow
T = periods in time units of cash flow from the point of accumulation.
Example
(0.05)fvcfv(1;1)
1.05
(0.05 0.1)fvcfv(1 1;1 2)
2.205
(0.05 0.1)fvcfv(1 1 1;1 2 3)
3.4755
(0.05 0.1)fvcfv((1+i.10);(1+ i. 10))
105
(0.05)fvcfv((1+i.10);(1+ i. 10))
77.9321
pvcfv (dyad)
Form: tacit
Present value of a cash flow C payable at the periods
of T time units for variable effective interest rates Ev.
Equation:
(E)pvcfv(C;T)
Syntax
(Ev)pvcfv(C;T)
Ev = variable effective interest rate per time unit over the period.
the last rate is estended for the period
C = amount of cash flow
T = periods in time units of cash flow
Example
(0.05)pvcfv(1;1)
0.952381
(0.05 0.1)pvcfv(1 1 1;1 2 3)
2.60527
(0.05 0.1)pvcfv((1+i.10);(1+ i. 10))
30.4186
(0.05)pvcfv((1+i.10);(1+ i. 10))
39.3738
vvt (dyad)
Form: tacit
Present value of 1 payable in a period of T time units
for variable effective interest rates Ev over the period.
? Equation:
(Ev)vvt(T)
Syntax
(Ev)vvt(T)
Ev = variable effective interest rate per time unit over a period
the last rate is extended for the period
T = number of time units in the period
Example
(0.05 0.06 0.07)vvt(0.5)
0.9759
(0.05 0.06 0.07)vvt(3.5)
0.811763
(0.05 0.06 0.07)vvt(0 1 2 3)
1 0.952381 0.898473 0.839694
(0.05 0.06 0.07)vvt(0 0.5 1 1.5 2.5 10.1)
1 0.9759 0.952381 0.925034 0.868586 0.519393
wvt (dyad)
Form: tacit
Future value of an amount of 1 in a period of T time units
for variable effective interest Ev over the period.
Equation:
(Ev)wvt(T)
Syntax
(Ev)wvt(T)
Ev = variable effective interest rate per time unit over a period
the last rate is extended for the period
T = number of time units in the period
Example
(0)wvt(0)
1
(0.05)wvt(10)
1.62889
(0 0.05 0.1 0.15)wvt(10)
3.07232
(0.05)wvt(0 5 10)
1 1.27628 1.62889
(0 0.05 0.1 0.15)wvt(0 5 10 10.5)
1 1.52749 3.07232 3.2947