In this course we provide a methodology for calculating the Value at Risk (VaR) measure for futures and options. The methodology that we have employed uses a Monte Carlo Simulator to first generate terminal prices series, then calculates the related payoffs and prices series. The prices series is used to determine the return series which is used in the volatility and VaR calculations.
As a pre-requisite to this course the user may like to review the following two courses:
The first step of the process involves the construction of a Monte Carlo simulator for determining the terminal price of the underlying. As we are interested in daily prices of the options, the interval or time step length should be for a day. In our illustration we have assumed that the option contract will expire after 10 days so we have used ten intermediate steps to simulate the development of prices of the underlying security for this period.
The simulated prices are generated based on the Black Schole’s Terminal Price formula:
Where S0 is the spot price at time zero,
r is the risk free rate
q is the convenience yield
sigma is the annualized volatility in the commodity’s price
t is the duration since time zero, and
zt is a random sample from a normal distribution with mean zero and standard deviation of 1. zt was obtained in these models by normally scaling the random numbers generated using Excel’s RAND() function, i.e. NORMINV(RAND()).
In order to calculate the Value at Risk (VaR) measure we require a series of returns which in turn requires time-series price data. To simulate this particular environment we assume that we have a series of similar option contracts that commence and expire on a one-day roll-forward basis. Suppose that for the original option the commencement was at time 0 and the expiry was at time step 10, the next option will commence at time 1 and expire at time step 11, the next will start at time 2 and expire at time step 12, and so on. Based on this premise we will obtain a time series of daily terminal prices. In our illustration we have repeated this process in order to generate time-series data for terminal prices for a period of 365 days.
Step 2 above generates a 365-day terminal price series under a single scenario. The process now needs to be repeated several times (in our illustration we have used 1000 simulation runs) in order to generate a data set of times series data with the aid of EXCEL’s Data Table functionality. Once this process has been completed an average terminal price time-series will be calculated, by taking a simple average of the terminal prices at each future date across all the simulated runs. The figure below shows this process for our example.
The Average Terminal Price for Date 1 is the average of all the terminal prices generated for this date across the 1000 simulated runs. The Average Terminal Price for Date 363 is the average of all the terminal prices generated for this date across the 1000 simulated runs.
Individual payoffs at each data point
For each data point given in the terminal price data set mentioned in Step 3 above we now have to calculate the payoffs or intrinsic values of the derivatives contract. In our illustration, we have assumed that we have a futures contract, a European call option and a European put option all having a strike or exercise price of 1300. The payoffs for these contracts are calculated as follows:
Payoff for a long futures = Terminal Price – Strike
Payoff for a long call option = Maximum of (Terminal Price –Strike, 0)
Payoff for the long put option = Maximum of (0, Strike-Terminal Price)
This is illustrated for a subset of futures payoffs below:
For example, for scenario 3 (third data row) on date 2 (second data column) the Terminal price is 1333.04. The strike price as mentioned earlier is 1300. The futures payoff therefore works out to Terminal Price – Strike Price = 1333.04 – 1300 = 33.04.
Average payoff time-series
Once all the payoffs have been calculated we determine the average payoff time series by taking a simple average of the payoffs at each future date across all the simulated runs.
Individual prices at each data point
For each data point given in the terminal price data set mentioned in Step 3 above for which we have determined the payoffs or intrinsic values of the derivatives contract as mentioned in Step 4 above, we will now calculated their discounted values as follows:
Payoff * e-rT
Where r is the risk free rate and
T is the tenor of the option, i.e. 10 days.
The discounted values derived are the values/ prices of the futures contract and the call and put options respectively. This is illustrated for a subset of futures prices below:
For example, for scenario 3 (third data row) on date 2 (second data column) the payoff is 33.04. The risk free rate is 0.15% and as mentioned earlier the tenor of the contract is 10 days. The futures price therefore works out to Payoff * e-rT=33.04*exp (-0.15%*(10/365))=33.03.
Average price time-series
Once all the prices have been calculated we determine the average price time series by taking a simple average of the prices at each future date across all the simulated runs.
Now that we have the derivatives average price series we will determine the return series by taking the natural logarithm of successive prices. This is illustrated for a subset of the futures, call option and put option contracts below:
The average prices of a call on Date 1 and 2 are 12.31 and 12.65 respectively. The return on Date 2 will therefore be ln(12.65/12.31) =2.71%.
Next we have calculated the VaR measure using the techniques outline in our course Calculating Value at Risk, in particular we have used the Simple Moving Average (SMA) Variance Covariance (VCV) Approach and the Historical Simulation Approach.
For our illustration, the 10-day holding period VaR at different confidence levels, using the VCV approach has been calculated as follows:
A graphical representation of the results for futures is given below:
The 10-day holding period VaR at the 95% confidence level, using the Historical simulation approach is illustrated below:
If you need to calculate VaR for foreign exchange forward contracts there is a shorter alternate approach that combines the underlying currency pair VaR estimate with the delta estimate for the forward contract.
To factor in the impact of the interest rates differential between the foreign and domestic risk free rates, the forward exchange rates risk factor is considered. The VaR for the forward contract will approximately equal this factor’s VaR times the sensitivity of the forward’s price to fluctuations in the underlying factor. The sensitivity is measured as the forwards delta. In particular the VaR of the forward position will be:
VaR forward position = Delta*VaR forward exchange rates.
Where Delta = e-rfT
rf is the foreign risk free rate as of the report date
T is the days to maturity (DTM) (=midpoint of DTM bucket, see below), expressed in years
The steps for calculating VaR for forwards and swaps are given below.
Step 1: Identify the currencies (Foreign currency (FCY) & domestic currency (DCY)) for each forward deal. Treat the near and far legs of a swap deal as two separate forward deals.
Step 2: Identify the long and short positions for each forward deal.
Step 3: Calculate the Days to Maturity (DTM) for each position and allocate pre-specified standardized DTM buckets to each position. We have used the following DTM buckets with the midpoint for each bucket specified below. This midpoint will be used to select the relevant Forward Exchange Rate buckets to use:
|DTM Bucket||Midpoint (days)|
|1 -15 days||8|
|16 -30 days||23|
|greater than 1 year||366|
Step 4: Sum all the long positions by currency and DTM bucket. Sum all the short positions by currency and DTM bucket.
Step 5: Calculate the Gross position by currency and DTM bucket. This is the sum of the absolute value of long and absolute value of short positions.
Step 6: Calculate a Net position by currency and DTM bucket. This is the sum of the long and short positions for the bucket.
Step 7: Using the interpolated forward foreign exchange rate for the calculation date calculate the MTM of the position on a Gross and Net basis (MTM) (Gross), i.e.:
Step 8: Calculate the holding volatility & VaR% of for 1 unit of an FX forward exchange rates in the given currency:
Step 9: Multiply the holding VaR % with the MTM (Gross) & MTM (Net) amounts respectively to determine the Holding VaR (Gross) & Holding VaR (Net) amounts for each currency & DTM bucket.
Step 10: Calculate portfolio VaR (Total (Gross) & Total (Net)) across all instruments & currencies
 Understanding market, credit and operational risk – The value at risk approach –Linda Allen, et al.
 Interpolated based on the relevant midpoint of DTM bucket
What is the best way of evaluating portfolio performance allocation strategies? Should we just compare risk, return or risk adjusted…
6 mins read Introducing Project Plain speak. Currently a work in progress Plain speak focuses on bringing intelligent financial reporting…
9 mins read What can we learn about oil markets from the last ten years? The next decade. The final…
5 mins read What does the data say about future direction of crude oil markets. We look at OPEC spare…