• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Monte Carlo & VaR - Application Issues

Hi Guys,

First real forum post! I have been playing around with Monte Carlo (MC) with respect to Value at Risk and have hit a wall so to speak. A problem stemming from my lack of experience with this process.

I have come across the Benson_Zangari methodology (attached the paper) which simulates a vector of returns Y via the following:
\[ Y_j = \sum_{i=1}^n R_{ij}Z_i = \sqrt{\frac{1 - \lambda}{1 - \lambda^n}}\sum_{i=1}^n \lambda^{(i-1)/2}f_j(n-i+1)Z_i, \qquad i = 1, \dots,n \quad j = 1, \dots, k. \]
Where k is the number of risk factors (i.e assets in a portfolio); n is the number of historical observations for each risk factor and lambda is the exponential smoothing factor. Z is a vector of iid standard normal random variables

This is quite simple and easy to replicate in C# or Python, i obtain a covariance matrix (R'R) and the simulated returns vector.

The Monte Carlo is applied to the simulated returns with the addition of Ito's drift term. Just to keep things simple (ignoring sampling & analysis horizons), the returns are generated via MC by:
\[ Y_a = R'Z - \frac{\sigma^2_j}{2}. \]
Where the variance is obtained from the covariance matrix.

My confusion comes from the actual calculation of VaR from the set of simulations above. Do i go about the standard way of simulated profit/loss, ranking then for each asset and then calculating VaR (This wouldnt calculate VaR for the portfolio as VaR is not additive, additionally i cannot include the quantity of each asset in the calculation).

So how do i go about it?

The first thing that comes to my head is using the MPT formulas for k asset portfolio return and variance.

I can calculate the weights for each asset using the NAV and the quantity of each asset in the portfolio and use that in the formula, however how would i go about the MC process?

Any guidance would be extremely appreciated, I think I am missing out some key theory concerning Monte Carlo VaR for an N asset portfolio.

Thanks for reading and any comments are appreciated,


  • benson_zangari.pdf
    290.1 KB · Views: 20