abaquant.financial_math.cashflows

Import path: abaquant.financial_math.cashflows

Domain: Time-value, actuarial, fixed-income, corporate-finance, and portfolio mathematics.

Purpose

Present-value calculations for dividends and irregular cash flows.

When to use it

Use these functions for deterministic calculations where explicit cash-flow, rate, compounding, sign, and annualization conventions matter.

Public objects

  • function: present_value_of_dividends — Discount a level dividend stream to present value.

  • function: present_value_of_irregular_cashflows — Discount irregular dated cash flows to present value.

Detailed reference

Present-value calculations for dividends and irregular cash flows.

Purpose

The module discounts deterministic dividend streams and cash-flow schedules under stated compounding conventions.

Conventions

Amounts are currency values, times are years, and rates are decimal annual rates interpreted according to the compounding argument.

References

[ 1 ] Kellison, S. G. (2009), The Theory of Interest.

abaquant.financial_math.cashflows.present_value_of_dividends(dividend_amount, payments_per_year, rate, total_years, compounding='Continuous')

Discount a level dividend stream to present value.

Parameters:
  • dividend_amount (float) – Level dividend payment in currency units.

  • payments_per_year (int) – Coupon or payment frequency per year.

  • rate (float) – Interest rate in decimal units under the stated compounding convention.

  • total_years (float) – Number of years over which the dividend stream is paid.

  • compounding (str, default='Continuous') – Compounding convention or frequency accepted by the implementation.

Returns:

Computed present value of dividends as a scalar in the units implied by the input values.

Return type:

float

abaquant.financial_math.cashflows.present_value_of_irregular_cashflows(amounts, times_years, rate, compounding='Continuous')

Discount irregular dated cash flows to present value.

Parameters:
  • amounts (list[float] | np.ndarray) – Cash-flow amounts in currency units, ordered consistently with times_years.

  • times_years (list[float] | np.ndarray) – Cash-flow times in years, ordered consistently with amounts.

  • rate (float) – Interest rate in decimal units under the stated compounding convention.

  • compounding (str, default='Continuous') – Compounding convention or frequency accepted by the implementation.

Returns:

Computed present value of irregular cashflows as a scalar in the units implied by the input values.

Return type:

float