industries
Pyvorin for Risk Management
VaR, CVaR, stress testing, and portfolio optimisation at speed.
Published May 30, 2026
Value at Risk
Monte Carlo VaR simulations are CPU-intensive. Compile the path generation and portfolio valuation for 5-10x speedup.
def monte_carlo_var(returns, weights, n_sims=100000):
portfolio_returns = []
for _ in range(n_sims):
sim = 0.0
for i in range(len(weights)):
sim += weights[i] * random.gauss(0, returns[i])
portfolio_returns.append(sim)
return np.percentile(portfolio_returns, 5)
Stress Testing
Run thousands of scenario combinations. Compilation reduces overnight stress tests to under an hour.
Portfolio Optimisation
Mean-variance optimisation with covariance matrix inversion compiles efficiently.