abaquant.financial_math.risk

Import path: abaquant.financial_math.risk

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

Purpose

Parametric and simulation-based market-risk measures.

When to use it

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

Public objects

  • function: parametric_var — Estimate parametric value at risk under the implemented return distribution.

  • function: monte_carlo_var_cvar — Estimate value at risk and conditional value at risk by simulation.

Detailed reference

Parametric and simulation-based market-risk measures.

Purpose

The module estimates value at risk and conditional value at risk from annual return and volatility assumptions.

Conventions

Returns and volatility are annualized decimal quantities unless a horizon conversion is applied. Portfolio value is expressed in currency units.

Scope and limitations

The parametric method relies on its stated distributional assumptions; simulated estimates depend on the random seed and number of paths.

References

[ 1 ] Glasserman, P. (2004), Monte Carlo Methods in Financial Mathematics. [ 2 ] Rockafellar, R. T., and S. Uryasev (2000), “Optimization of Conditional Value-at-Risk”.

abaquant.financial_math.risk.monte_carlo_var_cvar(annual_return, annual_volatility, portfolio_value, confidence_level, horizon_days, simulations=10000, seed=42)

Estimate value at risk and conditional value at risk by simulation.

Parameters:
  • annual_return (float) – Annual expected return in decimal units.

  • annual_volatility (float) – Annual volatility in decimal units.

  • portfolio_value (float) – Current portfolio value in currency units.

  • confidence_level (float) – Confidence probability for a tail-risk measure.

  • horizon_days (int | float) – Risk-measure horizon in trading days.

  • simulations (int, default=10000) – Number of Monte Carlo simulations.

  • seed (int, default=42) – Optional pseudo-random seed for reproducible simulation.

Returns:

Positional outputs produced by the monte carlo var cvar calculation.

Return type:

tuple[float, float]

abaquant.financial_math.risk.parametric_var(annual_return, annual_volatility, portfolio_value, confidence_level, horizon_days)

Estimate parametric value at risk under the implemented return distribution.

Parameters:
  • annual_return (float) – Annual expected return in decimal units.

  • annual_volatility (float) – Annual volatility in decimal units.

  • portfolio_value (float) – Current portfolio value in currency units.

  • confidence_level (float) – Confidence probability for a tail-risk measure.

  • horizon_days (int | float) – Risk-measure horizon in trading days.

Returns:

(var_amount, z_score, period_return, period_volatility). The second value is the normal quantile used in the VaR calculation; it is not CVaR.

Return type:

tuple[float, float, float, float]