abaquant.financial_math.corporate¶
Import path: abaquant.financial_math.corporate
Domain: Time-value, actuarial, fixed-income, corporate-finance, and portfolio mathematics.
Purpose¶
Corporate-finance valuation, CAPM, and discounted-cash-flow helpers.
When to use it¶
Use these functions for deterministic calculations where explicit cash-flow, rate, compounding, sign, and annualization conventions matter.
Public objects¶
function:
capm_cost_of_equity— Compute the CAPM required return on equity.function:
weighted_average_cost_of_capital— Compute after-tax weighted average cost of capital.function:
dcf_valuation— Estimate enterprise and equity value from a deterministic discounted-cash-flow model.function:
dcf_sensitivity_matrix— Evaluate DCF output across terminal-growth and discount-rate scenarios.function:
beta_alpha_from_returns— Estimate beta and alpha from paired asset and market return series.
Detailed reference¶
Corporate-finance valuation, CAPM, and discounted-cash-flow helpers.
Purpose¶
The module implements elementary CAPM, WACC, DCF, sensitivity, and return-regression calculations.
Conventions¶
Rates and growth assumptions are decimal annual rates. Free cash flow, debt, and enterprise values use currency units. Beta and alpha follow the implemented return-regression convention.
Scope and limitations¶
DCF outputs depend directly on deterministic growth and discount-rate assumptions and are not forecasts.
References
[ 1 ] Markowitz, H. (1952), “Portfolio Selection”.
- abaquant.financial_math.corporate.beta_alpha_from_returns(asset_returns, market_returns, risk_free_rate, trading_days=252)¶
Estimate beta and alpha from paired asset and market return series.
- Parameters:
asset_returns (pd.Series) – Periodic return series for the asset.
market_returns (pd.Series) – Periodic return series for the market benchmark.
risk_free_rate (float) – Annual risk-free rate in decimal units.
trading_days (int, default=252) – Observations per year used to annualize regression statistics.
- Returns:
Named outputs of the beta alpha from returns calculation.
- Return type:
dict[str, float | pd.DataFrame]
- abaquant.financial_math.corporate.capm_cost_of_equity(risk_free_rate, beta, market_return)¶
Compute the CAPM required return on equity.
- Parameters:
risk_free_rate (float) – Annual risk-free rate in decimal units.
beta (float) – Model-specific beta parameter; consult the module convention.
market_return (float) – Expected market return in decimal annual units.
- Returns:
Computed capm cost of equity as a scalar in the units implied by the input values.
- Return type:
float
- abaquant.financial_math.corporate.dcf_sensitivity_matrix(fcfs, terminal_growth_values, discount_rate_values, net_debt, shares_outstanding)¶
Evaluate DCF output across terminal-growth and discount-rate scenarios.
- Parameters:
fcfs (list[float] | np.ndarray) – Free-cash-flow sequence in currency units for DCF sensitivity analysis.
terminal_growth_values (list[float] | np.ndarray) – Terminal-growth-rate grid in decimal annual units for DCF sensitivity analysis.
discount_rate_values (list[float] | np.ndarray) – Discount-rate grid in decimal annual units for DCF sensitivity analysis.
net_debt (float) – Net debt deducted from enterprise value, in currency units.
shares_outstanding (float) – Number of shares outstanding used to convert equity value to value per share.
- Returns:
Tabular result with the index, column schema, units, and missing-value treatment defined by the module convention.
- Return type:
pandas.DataFrame
- abaquant.financial_math.corporate.dcf_valuation(fcf_base, projection_growth, terminal_growth, discount_rate, projection_years, net_debt, shares_outstanding)¶
Estimate enterprise and equity value from a deterministic discounted-cash-flow model.
- Parameters:
fcf_base (float) – Base-period free cash flow in currency units.
projection_growth (float) – Forecast free-cash-flow growth rate in decimal annual units.
terminal_growth (float) – Perpetual terminal-growth rate in decimal annual units.
discount_rate (float) – Annual discount rate in decimal units.
projection_years (int) – Number of explicit free-cash-flow forecast years.
net_debt (float) – Net debt deducted from enterprise value, in currency units.
shares_outstanding (float) – Number of shares outstanding used to convert equity value to value per share.
- Returns:
Named outputs of the dcf valuation calculation.
- Return type:
dict[str, float | list[float] | pd.DataFrame]
- abaquant.financial_math.corporate.weighted_average_cost_of_capital(cost_of_equity, equity_weight, cost_of_debt, tax_rate)¶
Compute after-tax weighted average cost of capital.
- Parameters:
cost_of_equity (float) – Cost of equity in decimal annual units.
equity_weight (float) – Capital-structure equity weight, expressed as a fraction.
cost_of_debt (float) – Pre-tax cost of debt in decimal annual units.
tax_rate (float) – Corporate tax rate as a decimal fraction.
- Returns:
Computed weighted average cost of capital as a scalar in the units implied by the input values.
- Return type:
float