Question 1

Consider the following options portfolio. You write an April call option on IBM with exercise price $85. You write an April IBM put option with exercise price $80. The price of the call option is $0.95 and the price of the put is $2.45.

a. (10 points)

Graph the payoff this portfolio at option expiration as a function of IBM’s stock price at that time.

Solution:

b. (10 points)

What will be the profit/loss on this position if IBM is selling at $83 on the option maturity date. What if IBM is selling at $90?

Solution:

If IBM is selling at $83 on the maturity date, then neither the call option nor the put option are in the money so the profit is $0.95 + $2.45 = $3.40. If IBM is selling for $90 instead, then the call option is in the money. In this case, profit is $3.40 + ($85 - $90) = -$1.60

c. (10 points)

At what two stock prices will you just break even on your investment?

Solution:

We will break even when either option is in the money by an amount equal to $3.40. For the call option, this price is $85 + $3.40 = $88.40. For the put option, this price is $80 - $3.40 = $76.60.

d. (5 points)

What kind of bet is this investor making; that is, what must this investor believe about IBM’s stock price to justify this position?

Solution:

The investor believes that IBM’s stock price will have low volatility (in both directions) from now until option maturity.

Question 2

On May 16th, 2018, the closing price of Target stock was $75.83. A put option with strike price \(X=70.00\) and maturity date June 15th, 2018 costs $0.78. Assume a continuously-compounded risk-free rate of 0.0176 (1.76%) per annum. Further, assume that the options are European and that the stock does not pay dividends.

a. (10 points)

If put-call parity holds, what should the price of the call option be?

Solution:

According to put-call parity, \[\begin{align} c + Ke^{-rT} = p + S_{0}. \end{align}\] Solving for call option price yields, \[\begin{align} c &= p + S_{0} - Ke^{-rT}, \\ &= 0.78 + 75.83 - 70e^{-0.0176\times 0.08333}, \\ &=6.713. \end{align}\]

where \(T = 0.08333 = \frac{21}{252}\) by counting 21 trading days between May 16th and Jun 15th and assuming 252 trading days in a year.

b. (5 points)

Briefly explain why put-call parity tends to hold?

Solution:

The payoff of a protective put and that of a call option and risk-free bond with the same strike are identical. Thus, if the cost of each strategy is different, traders would exploit the arbitrage opportunity until prices adjust such that the costs are the same.

Question 3 (25 points)

Consider a binomial tree problem for an American option.

A stock price is currently $50. Over each of the next two 3-month periods it is expected to go up by 7% or down by 6%. The risk-free interest rate is 5% per annum with continuous compounding. What is the value of a 6-month American put option with a strike price of $51?

Solution:

t = 1/4
u = 1.07
d = 0.94
s = 50
X = 51
r = 0.05
s_u = s*u
s_d = s*d
s_uu = s*u^2
s_ud = s*u*d
s_dd = s*d^2
p = (exp(r*t)-d)/(u-d)
f_uu = X - s_uu
if (f_uu < 0){
f_uu =0}
f_ud = X - s_ud
if (f_ud < 0){
f_ud =0}
f_dd = X - s_dd 
if (f_dd < 0){
f_dd =0}
f_u = exp(-r*t)*(p*f_uu + (1-p)*f_ud)
f_d = exp(-r*t)*(p*f_ud + (1-p)*f_dd)
f = exp(-r*t)*(p*max(f_u,X-s_u) + (1-p)*max(f_d,X-s_d))
The value of put option at the end nodes, \(f_{uu}\), \(f_{ud}\), \(f_{dd}\) are 0, 0.71, 6.82 respectively. The value of \(p\) is \[\begin{align} p = \frac{e^{0.05*\frac{1}{4}}-0.94}{1.07-0.94} = 0.56. \end{align}\] Thus, the values of the option at the intermediate nodes are \[\begin{align} f_{u} &= e^{-0.05\frac{1}{4}}(0.56\times 0+0.44\times 0.71)=0.31, \\ f_{d} &= e^{-0.05\frac{1}{4}}(0.56\times 0.71+0.44\times 6.82)=3.37. \end{align}\] At node \(f_{d}\), the buyer has an incentive to excercise the option because the payoff from exercising the option is 4 (=51-47) instead of the present value of 3.37. Therefore, the value of the American option is \[\begin{align} f = e^{-0.05\frac{1}{4}}(0.56\times 0.31+0.44\times 4) = 1.92. \end{align}\]

Question 4

One May 17th, 2018, the stock price of Boston Beer Company Inc. (ticker SAM) was $240.85.

a. (5 points)

Use 5 years of historical data to estimate appropriate values for \(u\) and \(d\) to use in a binomial option pricing model with a time period of 1 day.

Solution:

In general, we should set \(u = e^{\sigma_{daily}}\) and \(d = e^{-\sigma_{daily}}\). We can estimate daily volatility using 5 years of historical data:

library(quantmod)
## Loading required package: xts
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## Loading required package: TTR
## Version 0.4-0 included new data defaults. See ?getSymbols.
getSymbols('SAM',from='2013-05-19',to='2018-05-18')
## 'getSymbols' currently uses auto.assign=TRUE by default, but will
## use auto.assign=FALSE in 0.5-0. You will still be able to use
## 'loadSymbols' to automatically load data. getOption("getSymbols.env")
## and getOption("getSymbols.auto.assign") will still be checked for
## alternate defaults.
## 
## This message is shown once per session and may be disabled by setting 
## options("getSymbols.warning4.0"=FALSE). See ?getSymbols for details.
## 
## WARNING: There have been significant changes to Yahoo Finance data.
## Please see the Warning section of '?getSymbols.yahoo' for details.
## 
## This message is shown once per session and may be disabled by setting
## options("getSymbols.yahoo.warning"=FALSE).
## [1] "SAM"
samVol = sd(dailyReturn(Cl(SAM)))
u = exp(samVol/2)
d = exp(-samVol/2)
print(c(samVol,u,d))
## [1] 0.01961453 1.00985551 0.99024067

Thus, our estimates are \(\sigma_{daily} = 0.0196\), \(u \approx 1.02\) and \(d \approx 0.98\). That is, we estimate the daily standard deviation of SAM returns to be 2%. This means that we model the stock price as either increasing or decreasing by 2% each day.

b. (20 points)

Estimate the price of a call option on SAM stock with a strike price of $250.00 and a maturity of June 15th, 2018. Assume that the continuously-compounded risk-free rate is 1.76% per annum and note that options on SAM stock are American.

Solution:

S0 = 240.85
X = 250
rate = 0.0176
deltaT = 1/252
nDaysToMaturity = 21
p = (exp(rate*deltaT)-d)/(u-d)

# final call payoffs
callPayoffsAhead = NULL
for(nDown in 0:nDaysToMaturity){
  nUp = nDaysToMaturity-nDown
  ST = S0*(u^nUp)*(d^nDown)
  fT = max(ST-X,0)
  callPayoffsAhead = c(callPayoffsAhead,fT)
}

for(period in (nDaysToMaturity-1):0){
  nStatesAhead = length(callPayoffsAhead)
  callPayoffs = NULL
  for(nDown in 0:period){
    nUp = period-nDown
    S = S0*(u^nUp)*(d^nDown)
    fUp = callPayoffsAhead[nDown+1]
    fDown = callPayoffsAhead[nDown+2]
    f = exp(-rate*deltaT)*(p*fUp + (1-p)*fDown)
    callPayoffs = c(callPayoffs,max(f,0))
  }
  callPayoffsAhead = callPayoffs
}