MATH 408/508, Winter 2020, Assignment 3
Please submit your solutions on eClass before 3pm on Tuesday, March 10,
in the format described on pages 15–18 of the lecture notes.
Use rng(’default’) before each question part with pseudo-random numbers. The total is 40 points: 20 points for Q1 and 20 points for Q2.
1. A rainbow option is an option which depends on two or more assets. In this question, we consider a rainbow option with payoff max{ST − K1, XT − K2, 0}, where K1 ≥ 0, K2 ≥ 0 are constants, and ST and XT are the prices of asset 1 and asset 2 at time T. We assume a Black-Scholes model for both assets and a risk-free interest rate of zero throughout all questions. Under risk-neutral probabilities, we have
2 √ ̃ 2 √ ST=S0exp −σT/2+σ TN, XT=X0exp −αT/2+α Tn ̃,
where N ̃ and n ̃ are standard normally distributed random variables.
(a) [4 points] Under the assumption that N ̃ and n ̃ are independent, write a MATLAB function PriceRainbow1(sigma,alpha,T,S0,X0,K1,K2,k) which calculates the rainbow option price and the endpoints of a 95 %-confidence interval using Monte Carlo simulation with a sample of k numbers for each of N ̃ and n ̃.
Hint: Take a k-dimensional sample for each of ST and XT , and use max{ST −K1,XT −K2,0}=maxmax{ST −K1,XT −K2},0.
(b) [3 points] Consider the following call options (in USD):
underlying NASDAQ 100 Dow Jones
current index S0 = 9,624
strike K1 = 10,000
option price time to maturity
197
3.5 months
X0 = 29,398 K2 = 30,000
Using the implied volatilities for σ and α, calculate the price of the rainbow option by applying the function from 1(a) with k = 10,000.
(c) [3 points] If ST and XT are not independent, then one has 2√ ̃
633
3.5 months
ST =S0exp −σT/2+σ TN1 ,
2 √ ̃2 ̃
XT =X0exp −αT/2+α T(ρN1+ 1−ρN2),
where ρ is the correlation parameter and N ̃1 and N ̃2 are independent standard normally distributed random variables. Change your function from 1(a) to a function PriceRainbow2(sigma,alpha,T,S0,X0,K1,K2,k,rho) taking the cor- relation into account. Apply it to the same values as in 1(b) with rho = 0.7.
(d) [3 points] Explain why the option value in 1(b) is higher than that in 1(c).
(e) [3 points] Write a function PriceRainbow3(sigma,alpha,T,S0,X0,K1,K2,k,rho)
that makes use of antithetic sampling to reduce the variance.
(f) [4 points] Apply PriceRainbow3 to the same parameters as in (c) and compare the length of the confidence interval with that in (c). In this setting, is the length of the confidence interval guaranteed to shrink by some factor thanks to antithetic sampling? If so, by what factor? If not, why not?
2. The holder of an American option can choose the time at which the option is exer- cised. In an N-step binomial model, one can calculate the value of an American put recursively. In period n, it is optimal to exercise the option if max {K − Sn, 0} exceeds the discounted risk-neutral expectation of holding the put option. The value of the put option at time n < N is thus given by Pn,N = maxmax {K − Sn, 0} , 1 EQ[Pn+1,N |Sn], (∗) 1+r where EQ[Pn+1,N |Sn] is the risk-neutral expectation of holding the put option, namely, the expectation of the future value Pn+1,N under the risk-neutral probability Q con- ditional on the current stock price Sn. (a) [2 points] What is the value of the American put when n = N? (b) [3 points] Write a MATLAB function AmericanPut(Sn,u,d,r,K,m) that returns the value of an American put option when the remaining time to maturity is m = N − n. Use (∗) in a recursive function call of AmericanPut with remaining time to maturity m-1 and use the terminal condition from 2(a) when m = 0. Consider a continuous-time risk-free interest rate of 1% and an American put on Citigroup with strike price $75 and 7 months time to maturity. On February 14, 2020, the price of a Citigroup stock was $78.79 with annualized historical drift μ = 11.91% and volatility σ = 23.89%. We approximate the stock price dynamics by a binomial model with parameters σ2T √T σ2T √T T uN =eμ−2 N+σ N, dN =eμ−2 N−σ N, rN =ρN. (c) [3 points] Using 1 time step per month, calculate the price of above option. (d) [3 points] If you were to calculate the price of a European put option on Citigroup with the same strike price and the same time to maturity, how would its price compare to the corresponding price of the American option? Explain. (e) [4 points] Using the same approach as in Question 1(e) of the practice midterm, write function AmericanPut2(Sn,u,d,r,K,m). What is the price of the American put option using 1,500 time steps? (f) [2 points] Why is it desirable to have more than 1 time step per month? (g) [3 points] Why is the function AmericanPut2(Sn,u,d,r,K,m) in 2(e) computa- tionally more efficient than AmericanPut(Sn,u,d,r,K,m) in 2(b)? When there are m time steps, compare the number of function calls in 2(b) with the number of matrix entries computed in 2(e).