Final Exam FE621

Posted May 10, 2019, Due May 17, 2019 at 23:55


Please note: for the problems using data we are not interested in all the minor steps performed when analyzing the data. However, you should explain your broad reasoning and hand in a nal report.

Do not include any failed attempts at modeling just to give volume to the nal report.

You need to argument with graphs or selected numerical results all the conclusions you draw. Put important plots and tables within the report and relegate any non essential ones to an appendix at the end of the document.

Please add supporting arguments (e.g., output) in the appendix. The whole report should be constructed as a regular journal article.

The nal write-up (excluding the appendix) should not be more than 10-15 pages.

Communication with other students either physical or virtual is strictly forbidden.

For instructor’s use only

Problem Points Score




Bonus 20

Total 300


Problem A: Asian Option Pricing using Monte Carlo Control Variate.

The payo of an arithmetic Asian call option is:
N + 1 Sti K! :
1 N


Its value may be computed using straight Monte Carlo simulations. However, in order to obtain a small standard error, the number of simulations must be very high. To solve this computationally extensive problem, we will use the payo of a geometric Asian call option as the control variate:






The idea is to use the known analytic price of the geometric Asian and the distance between MC simulations to obtain an approximate for the analytical formula for the arithmetic Asian price.

In this problem we consider r = 3%; = 0:3; S0 = 100, and assume the goal is to price an arithmetic Asian call option with strike K = 100 and maturity

T= 5.

We also assume the asset follows the standard log-normal/geometric Brow-nian motion model:
S( t) = S(0)e((   22 )  t+( p t) )

(a)The price of a geometric Asian option in the Black-Scholes model is given by:

where: Pg = e rT  S0e T N(d1)  KN(d2)
= 2 r 2  2 + ^2
1 1


^ :=

2N + 1

6(N + 1)

such that ^ is adjusted sigma and N is the total number of trading days (T 252).
d1 := pT ^ ln K +   + 2 ^2 T
1 S0 1

				ln	K		+	2 ^2	T	

d2 := pT ^
1 S0 1

Use the above formula to price this geometric Asian call option.

(b)Implement a Monte Carlo scheme to price an arithmetic Asian call option (Pasim). Use M = 1; 000; 000 simulations. Record the answer, a con dence interval and the time it takes to obtain the result.

(c)Implement a Monte Carlo scheme to price a geometric Asian Call option

(d)Using M = 10; 000 simulations and the same exact random variables create:

numbers Xi which are M replications for the arithmetic Asian Option price

numbers Yi which are M replication for the geometric Asian Option price

Finally calculate b  such that:

b  = PMi=1(Xi X)(Yi Y )

PMi=1(Xi X)2

Note that b is actually the slope of a regression line Y = a+ bX + “. Please also record the price of the arithmetic Pasim and the geometric Pgsim.

(e)Calculate the error of pricing for the geometric Asian: Eg = Pg   Pgsim

(f)Calculate the modi ed arithmetic option price (Pa ) as:

Pa = Pasim b Eg

Compare with the results in (b). Comment. Vary the value of M in part (d). What do you observe.

Bonus For this problem apply the Asian option pricing in practice. Download from the Bloomberg terminal Asian option data for an equity at your choice. Consider ve di erent maturities and ve strike prices. Construct a table and repeat the parts (a) to (f) using your data. In order to access Asian options for your equity, follow the instruction below. For example, if you want to access Asian options on IBM Us Equity:

Enter IBM EQUITY OMON. OMON function stands for Option Mon-itor.

On the OMON page, type OVME. OVME function (Option Valuation) is Bloomberg main pricing application for options on equity, indexes, funds, bonds, bond futures and short term interest rate futures.

On the top of the screen, you will nd “Product” tab. Under this tab, click on the “show all styles”. You will nd all types of options.

Click on number 17 which is Asian option.

You can click on the “Matrix” subtab to see your data as a matrix. You can modify this matrix by checking/unchecking variables at the right side of the screen. For this speci c question, you can check strike prices and maturities.

Problem B: A portfolio construction problem. In this question, you need to create a portfolio which replicates the behavior of a speci c select sec-tor SPDR ETF. The goal of this question is to gain a deep understanding in multivariate Monte-Carlo simulation and option pricing.

1.Please identify and select a speci c sector’s SPDR ETF, for example XLF, XLE, etc. This site presents details about the tick-ers in each sector. In the sector you choose download

Problem B: A portfolio construction problem. In this question, you need to create a portfolio which replicates the behavior of a speci c select sec-tor SPDR ETF. The goal of this question is to gain a deep understanding in multivariate Monte-Carlo simulation and option pricing.

1. Please identify and select a speci c sector’s SPDR ETF, for example XLF, XLE, etc. This site presents details about the tick-ers in each sector. In the sector you choose download 4 equity prices since 2012. Please only select equities that trade at $5 or above. Try picking equities at random among the ones that have this criteria. Using the same equities is a sure method to create suspicions.

2. For the 4 equities that you chose, we will use the geometric BM:

dSt =  1Stdt + 2StdWt

Using the data you downloaded, please estimate the parameter values ( 1; 2) for each equity. Please report these values.

3. Estimate the correlation matrix for the 4 stocks based on historical data.

4. Using the correlation matrix in the part 3 and the parameters you esti-mated in part 2 generate Monte-Carlo paths for the 4 stocks. Use this ma-

trix to generate correlated increments for your Monte Carlo paths. Please use the Euler-Milstein scheme for generation. Use T = 1 year, t = 2551 and n = 1000 paths in your simulation. Once it is done, you only need to keep the nal value ST for each stock. You should have 4 vectors in total each with n replications. Please report basic statistics (mean, standard deviation, skewness, and kurtosis) for each stock.

5. Download daily data for the main ETF for the same exact period as before. We will t a geometric Brownian motion to it:

dSt =  Stdt +  StdW t

Get the values for and in a similar way with what you did in part 2.

6. Run a multivariate regression using the historical data. The response is the ETF return and the predictors are the 4 stocks you chose earlier.

Please record the regression coe cients. These are going to be the weights wi for i 2 f1; 2; 3; 4g for the basket option we will price next.

7. We will price a nonstandard contract next. The contract buyer has the

option to exchange 1 ETF share with a weighted average of the 4 stocks. Speci cally, denote with ST the ETF value and with S1(T ); : : : ; S4(T ) the stock value for the 4 equities. The option payo is:




wiSi(T ) ST

i=1 +


use T = 1 year. Calculate the option price today (premium). What if the buyer has the option to exchange the weighted average for the ETF.



wiSi(T )!




Calculate the premium for this option.

Problem C. Local volatility. We shall consider in this problem two volatility models: implied and local volatility, and compare them from the perspective of pricing, numerical e ciency, and stability. Please nd the attached le SPX.xls, containing option prices for the S&P 500 index for di erent maturities and strikes, with the following structure: on the rst row you are given (in this order) today’s date, today’s price, and the interest rate in percents, assumed constant. The dividend yield is assumed 0. Starting with row 2, a four column table is given, containing the expiry date, time to maturity (calculated from the expiry date), the strike price and the European call option price. Please note that the dates are given in a number format, and the di erence between any two cells represent the number of days. Use this le to answer the rest of this problem.

(a) Compute the implied volatilities from the Black{Scholes model, using the given le. For this purpose, implement any e cient root{ nding method

to compute the roots (or zeroes) of your function. You should also produce a plot of the points fKi; Tj; ijg, with i = 1; : : : ; 20; j = 1; : : : ; 4 in 3{ dimensions, in the space (K; T; ).

(b) Compute and plot the implied volatility surface. For this purpose, you should interpolate the points fKi; Tj; ijg, with i = 1; : : : ; 20; j = 1; : : : ; 4. Hint. Consider a cubic spline interpolation in 2 dimensions. You may use any package or toolbox that computes the interpolation.

(c) For the points on the surface you just calculated is the non{arbitrage con-dition holding?

(d) A conceptually di erent volatility model, the so{called local volatility, in-troduced by Dupire in [1], gives the volatility in terms of (K; T ) in a non-parametric way, and is model independent.

Assuming that we are given European option prices C = C(K; T ), Dupire’s local volatility is given by:


21 K2




+ (r  q)K


+ qC

(K; T ) =






where r 0 is the risk{free interest rate and q 0 is the dividend yield. Further, by noting that the implied volatility is a function of strike and expiry, i.e., = (K; T ), the partial derivatives in (1) can be obtained with respect to , i.e. the local volatility function can be expressed as a function of implied volatility rather than of option prices:

(K; T ) = v












t) +  2 + 2 (r




pT   t

1 + Kd1 @K

pT   t  + K (T   t)   @K2

d1  @K










+ (r  q +


2)(T   t)



d1 =




T   t

Calculate Dupire’s local volatility fKi; Tj; ijg, with  i = 1; : : : ; 20; j =

1; : : : ; 4 using both formulations. Compute and plot the local volatility surface in the space (K; T; ) using a cubic spline interpolation. Compare with the implied volatility surface from part (b).

Hint. Use the interpolated implied volatility surface from part (b) and use nite di erences to compute the partial derivatives of the implied volatility with respect to strike, maturity, and second partial derivative with respect to strikes. Then use the formula (2) to compute the local variance 2(K; T ). Two issues remain to be addressed: how to get rid of negative values in the local variance (one can use linear interpolation) and 3D interpolation of the LV surface.

(e) Calculate the price of an European option C(t; S; T; K), with the volatility equal to (K; T ) instead of . Can you calculate the price of this option? How? Calculate the option prices in the le using the local vol. Compare with the market prices you downloaded. What can you observe?

(f) Combine and present the results in a table with the following columns: time to maturity, strike price, option market price, implied volatility, local

volatility, price obtained using Dupire’s local volatility. You should consider only the outputs corresponding to the pairs (Ki; Tj), not the interpolated values. Comment on your ndings. Also, produce a new le, SPXvolatil-ity.xls, that would add the following columns to the existing ones: implied volatility, local volatility, Black{Scholes price, and the prices obtained using Dupire’s local volatility.

(g) Download using the Bloomberg terminal option data for an equity of your choice. You should consider at least 5 di erent maturities and 20 strike prices. Construct an Excel le with the same structure as SPX.xls. Repeat the parts (a){(f) using your le. Note that you need to proper implement all the parts above, to make sure that your code will work with the new le. Also, the code that you submit will be tested with our le having the same structure as SPX.xls, for which the results are known. To get full credit in this questions, your results should match with the correct ones.

Bonus The bonus isn’t required by most students. However if your situation de-mands it for this bonus problem please read the article at: http://www. Then implement the methodology using general smoothing splines. The same package used in the paper also exists in R gss”. Then apply the methodology to the same data as in the problem 3. Write a few sentences comparing the results obtained here with the surface obtained in problem 3.


Dupire, Bruno. Pricing with a smile. Risk Magazine, January 1994, Incisive Media.