Loading [MathJax]/extensions/tex2jax.js
MRFFL: MR Fortran Finance Library 2024-12-28
Computational Tools For Finance
All Namespaces Files Functions Variables
mrffl_tvm.f90 File Reference

Time value of money solvers. More...

Go to the source code of this file.

Modules

module  mrffl_tvm
 Solvers for TVM problems involving lump sums, level (fixed) annuities, and geometric (growing) annuities.
 

Functions/Subroutines

real(kind=rk) pure elemental function, public mrffl_tvm::fv_from_pv_n_i (pv, n, i)
 compute future value from present value (pv), number of periods (n), and an intrest rate (i).
 
real(kind=rk) pure function, public mrffl_tvm::tvm_geometric_annuity_sum_a (n, g, a)
 Sum the payments from a geometric annuity.
 
integer(kind=ik) pure function, public mrffl_tvm::tvm_delayed_annuity_num_payments (n, d, e)
 Return the number of payments given the period count (n), delay (d), and early end (e).
 
subroutine, public mrffl_tvm::tvm_lump_sum_solve (n, i, pv, fv, unknowns, status)
 Solve for TVM parameters for a lump sum.
 
subroutine, public mrffl_tvm::tvm_delayed_lump_sum_solve (n, i, pv, fv, a, d, unknowns, status)
 Solve for TVM parameters for a generalized lump sum.
 
subroutine, public mrffl_tvm::tvm_delayed_lump_sum_check (n, i, pv, fv, a, d, status)
 Check the TVM parameters for a generalized lump sum.
 
subroutine, public mrffl_tvm::tvm_delayed_level_annuity_solve (n, i, pv, fv, a, d, e, unknowns, status)
 Solve for TVM parameters for a level annuity.
 
real(kind=rk) function sf_i_no_n (i)
 
real(kind=rk) function sf_i_no_fv (i)
 
real(kind=rk) function sf_i_no_pv (i)
 
subroutine, public mrffl_tvm::tvm_delayed_level_annuity_check (n, i, pv, fv, a, d, e, status)
 Check TVM parameters for a level annuity.
 
subroutine, public mrffl_tvm::tvm_delayed_geometric_annuity_solve (n, i, g, pv, fv, a, d, e, unknowns, status)
 Solve for TVM parameters for a geometric annuity certain.
 
subroutine, public mrffl_tvm::tvm_delayed_geometric_annuity_check (n, i, g, pv, fv, a, d, e, status)
 Check TVM parameters for a geometric annuity certain.
 
subroutine, public mrffl_tvm::tvm_delayed_arithmetic_annuity_solve (n, i, q, pv, fv, a, d, e, unknowns, status)
 Solve for TVM parameters for a arithmetic annuity certain.
 
subroutine, public mrffl_tvm::tvm_delayed_arithmetic_annuity_check (n, i, q, pv, fv, a, d, e, status)
 Check TVM parameters for a arithmatic annuity certain.
 

Variables

real(kind=rk), parameter mrffl_tvm::consistent_epsilon = 1.0e-3_rk
 Used to check equation consistency.
 

Detailed Description

Time value of money solvers.

Author
Mitch Richling http://www.mitchr.me/
Date
2024-12-19
Keywords
finance fortran monte carlo inflation cashflow time value of money tvm percentages taxes stock market
Standards
F2023
See also
https://github.com/richmit/FortranFinance

.H.E.!!

Definition in file mrffl_tvm.f90.

Function/Subroutine Documentation

◆ sf_i_no_n()

real(kind=rk) function tvm_delayed_level_annuity_solve::sf_i_no_n ( real(kind=rk), intent(in) i)
private

Definition at line 646 of file mrffl_tvm.f90.

References sf_i_no_n().

Referenced by sf_i_no_n(), and mrffl_tvm::tvm_delayed_level_annuity_solve().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sf_i_no_fv()

real(kind=rk) function tvm_delayed_level_annuity_solve::sf_i_no_fv ( real(kind=rk), intent(in) i)
private

Definition at line 653 of file mrffl_tvm.f90.

References sf_i_no_fv().

Referenced by sf_i_no_fv(), and mrffl_tvm::tvm_delayed_level_annuity_solve().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sf_i_no_pv()

real(kind=rk) function tvm_delayed_level_annuity_solve::sf_i_no_pv ( real(kind=rk), intent(in) i)
private

Definition at line 660 of file mrffl_tvm.f90.

References sf_i_no_pv().

Referenced by sf_i_no_pv(), and mrffl_tvm::tvm_delayed_level_annuity_solve().

Here is the call graph for this function:
Here is the caller graph for this function: