How yhilpisch/dx works
DX Analytics is a Python financial analytics library centered on global Monte Carlo valuation and risk analysis of derivatives portfolios. Its main workflow is to define market and valuation environments, configure risk-factor models and derivative positions, simulate shared paths, value payoffs, then aggregate portfolio values and sensitivities. The repository also provides analytical and Fourier pricing, model calibration, interest-rate swaps, mean-variance portfolio analysis, and plotting. Some subsystem wiring is supported by the README rather than sampled implementation excerpts, so uncertain call links are omitted.
Main entry points: derivatives_portfolio.py Derivatives Portfolio · models Risk-Factor Models · simulation_class.py Simulation Framework · frame.py Market Environment
Components 18
Portfolio Analytics
- Derivatives Portfolio
dx/valuation/derivatives_portfolio.py - Portfolio Risk
dx/valuation/var_portfolio.py - Parallel Valuation
dx/valuation/parallel_valuation.py - Mean-Variance Analysis
dx/portfolio.py - Analytics Plotting
dx/plot.py
Simulation and Markets
- Market Environment
dx/frame.py - Discount Curves
dx/frame.py - Random Numbers
dx/frame.py - Simulation Framework
dx/models/simulation_class.py - Risk-Factor Models
dx/models
Derivative Pricing
- Single-Risk Valuation
dx/valuation/single_risk.py - Multi-Risk Valuation
dx/valuation/multi_risk.py - Fourier Pricing
dx/analytical/stoch_vol_jump_diffusion.py - Black-Scholes Pricing
dx/analytical/black_scholes_merton.py - SABR Calibration
dx/models/sabr_stochastic_volatility.py
Rates and Allocation
- Interest-Rate Swaps
dx/rates.py - Stochastic Short Rates
dx/models/square_root_diffusion.py
Other components
- Analyst
Connections 25
- Analyst → Derivatives Portfolio: configures portfolio
- Derivatives Portfolio → Market Environment: uses environments
- Derivatives Portfolio → Risk-Factor Models: creates risk models
- Derivatives Portfolio → Single-Risk Valuation: creates valuations
- Derivatives Portfolio → Multi-Risk Valuation: creates valuations
- Derivatives Portfolio → Parallel Valuation: dispatches parallel work
- Derivatives Portfolio → Portfolio Risk: supports risk analysis
- Derivatives Portfolio → Analytics Plotting: provides analytics
- Risk-Factor Models → Simulation Framework: extends simulation
- Simulation Framework → Market Environment: reads parameters
- Simulation Framework → Random Numbers: generates paths with
- Single-Risk Valuation → Risk-Factor Models: gets simulated paths
- Single-Risk Valuation → Discount Curves: discounts values
- Multi-Risk Valuation → Risk-Factor Models: simulates risk factors
- Multi-Risk Valuation → Discount Curves: discounts values
- Analyst → Black-Scholes Pricing: requests analytical price
- Analyst → Fourier Pricing: requests Fourier price
- Analyst → SABR Calibration: calibrates model
- SABR Calibration → Market Environment: reads parameters
- Analyst → Interest-Rate Swaps: values swap
- Interest-Rate Swaps → Simulation Framework: reads rate paths
- Interest-Rate Swaps → Discount Curves: discounts payments
- Stochastic Short Rates → Risk-Factor Models: uses rate process
- Analyst → Mean-Variance Analysis: analyzes allocation
- Mean-Variance Analysis → Market Environment: reads asset inputs