abaquant.financial_math.tvm¶
Import path: abaquant.financial_math.tvm
Domain: Time-value, actuarial, fixed-income, corporate-finance, and portfolio mathematics.
Purpose¶
Time-value-of-money primitives.
When to use it¶
Use these functions for deterministic calculations where explicit cash-flow, rate, compounding, sign, and annualization conventions matter.
Public objects¶
function:
future_value— Compute the accumulated value of a present amount.function:
continuous_future_value— Compute accumulated value under a constant force of interest.function:
present_value— Compute the discounted value of a future amount.function:
continuous_present_value— Compute discounted value under a constant force of interest.function:
number_of_periods— Solve for the number of compounding periods needed to reach a target amount.function:
rate_of_return— Solve for the effective periodic return implied by two values and a horizon.function:
decompose_periods— Decompose a real-valued period count into its implemented representation.
Detailed reference¶
Time-value-of-money primitives.
Purpose¶
The module provides future value, present value, implied period-count, implied rate, and period decomposition calculations.
Conventions¶
Rates are decimal rates per period and periods are counts of compounding intervals unless a continuous-force parameter is used.
References
[ 1 ] Kellison, S. G. (2009), The Theory of Interest.
- abaquant.financial_math.tvm.continuous_future_value(principal, delta, periods)¶
Compute accumulated value under a constant force of interest.
- Parameters:
principal (float) – Initial invested amount or loan principal in currency units.
delta (float) – Constant force of interest in decimal annual units.
periods (float) – Number of discrete compounding or payment periods.
- Returns:
Computed continuous future value as a scalar in the units implied by the input values.
- Return type:
float
- abaquant.financial_math.tvm.continuous_present_value(future_amount, delta, periods)¶
Compute discounted value under a constant force of interest.
- Parameters:
future_amount (float) – Target future amount in currency units.
delta (float) – Constant force of interest in decimal annual units.
periods (float) – Number of discrete compounding or payment periods.
- Returns:
Computed continuous present value as a scalar in the units implied by the input values.
- Return type:
float
- abaquant.financial_math.tvm.decompose_periods(periods)¶
Decompose a real-valued period count into its implemented representation.
- Parameters:
periods (float) – Number of discrete compounding or payment periods.
- Returns:
Tabular result with schema defined by the module-level convention.
- Return type:
pd.DataFrame
- abaquant.financial_math.tvm.future_value(principal, rate, periods)¶
Compute the accumulated value of a present amount.
- Parameters:
principal (float) – Initial invested amount or loan principal in currency units.
rate (float) – Interest rate in decimal units under the stated compounding convention.
periods (float) – Number of discrete compounding or payment periods.
- Returns:
Computed future value as a scalar in the units implied by the input values.
- Return type:
float
- abaquant.financial_math.tvm.number_of_periods(principal, future_amount, rate)¶
Solve for the number of compounding periods needed to reach a target amount.
- Parameters:
principal (float) – Initial invested amount or loan principal in currency units.
future_amount (float) – Target future amount in currency units.
rate (float) – Interest rate in decimal units under the stated compounding convention.
- Returns:
Computed number of periods as a scalar in the units implied by the input values.
- Return type:
float
- abaquant.financial_math.tvm.present_value(future_amount, rate, periods)¶
Compute the discounted value of a future amount.
- Parameters:
future_amount (float) – Target future amount in currency units.
rate (float) – Interest rate in decimal units under the stated compounding convention.
periods (float) – Number of discrete compounding or payment periods.
- Returns:
Computed present value as a scalar in the units implied by the input values.
- Return type:
float
- abaquant.financial_math.tvm.rate_of_return(principal, future_amount, periods)¶
Solve for the effective periodic return implied by two values and a horizon.
- Parameters:
principal (float) – Initial invested amount or loan principal in currency units.
future_amount (float) – Target future amount in currency units.
periods (float) – Number of discrete compounding or payment periods.
- Returns:
Computed rate of return as a dimensionless decimal quantity.
- Return type:
float