Call/WhatsApp/Text: +44 20 3289 5183

Question: Use binomial lattices to find the premium on a pay later option on a stock with a current price of $50, a strike price of $53, and a volatility of 30%. Assume a risk-free rate of 5%. Assume the option is European style and the payoff is: ๐‘“(๐‘†ย ,๐‘ƒ)ย =ย ย ๐‘† ย โˆ’ ๐พ โˆ’ ๐‘ƒ, ๐‘† ย โ‰ฅ ๐พ ๐‘œ๐‘กโ„Ž๐‘’๐‘Ÿ๐‘ค๐‘–๐‘ ๐‘’

11 Oct 2022,8:19 PM

 

1. [17 points] Use binomial lattices to find the premium on a pay later option on a stock with a current price of $50, a strike price of $53, and a volatility of 30%. Assume a risk-free rate of 5%. Assume the option is European style and the payoff is:

๐‘“(๐‘† ,๐‘ƒ) =  ๐‘†   ๐พ ๐‘ƒ,

๐‘†   ๐พ ๐‘œ๐‘กโ„Ž๐‘’๐‘Ÿ๐‘ค๐‘–๐‘ ๐‘’

 

where, ST is the stock price at maturity, K is the strike price, and P is the option premium (for which you are solving).

 

Note: A pay later option can be described as follows:

 

an option in which no premium is paid up front when the contract is entered. If the option is in the money at expiration, the option must be exercised and a premium is paid to the writer. Otherwise, the option expires worthless and no premium is due. Note that the net payoff for the option holder can be negative, when the option is not deeply in the money, so that the payoff is smaller than the premium; therefore by no arbitrage arguments, if the net payoff were always non-negative, we could not have a contract with zero value at time t = 0.”

 

HINT: You will need to use a method to solve for a nonlinear equation such as the Bisection method to solve this problem. Essentially you want to guess at premium values to set the initial value of the option to zero. (I have populated the R vignette with a bisection code that will work).

 

 

2. [17 points] Risk managers frequently use the duration and convexity of bonds to manage interest rate risk. Using the bonds listed below, find a portfolio of bonds that maximizes the total portfolio yield subject to the following constraints. That is, your objective is to maximize

the expected yield of the portfolio:

 

 

 

max ๐‘ค ๐‘ฆ ,

   

 

where wi is the weight invested in bond i and yi is the yield to maturity of bond i.

 

 

Subject to the following constraints:

 

i.)          You are not allowed to short any bonds

๐‘ค   0,๐‘“๐‘œ๐‘Ÿ ๐‘Ž๐‘™๐‘™ ๐‘– ii.) You must invest all your wealth

 

๐‘ค  = 1

   

iii.)        The duration of the portfolio must be equal to 7.5 years

 

๐‘ค ๐‘‘  = 7.5,

   

Where wi is the weight invested in bond i, di is the duration of bond i, and the

portfolio duration (7.5) is equal to the weighted average of the individual bond durations.

 

iv.)        The convexity of the portfolio must be equal to 80.5

 

๐‘ค ๐‘  = 80.5,

   

Where wi is the weight invested in bond i, ci is the convexity of bond i, and the

portfolio convexity (80.5) is equal to the weighted average of the individual bond convexities.

 

Use constrOptim.nl() to solve for the set of weights to optimize the above problem. Report your optimal portfolio weights in the last column of `df.2`.

 

Bond

Years to Maturity

Coupon (%)

Face Value ($)

YTM (%)

Duration

Convexity

Weight

1

13

8.00

300

10.0293

7.41

78.67

 

2

11

7.00

1,000

12.3212

6.54

60.17

 

3

18

6.00

200

11.1518

8.60

114.34

 

4

13

5.00

100

9.0955

8.38

94.68

 

5

8

5.00

100

11.6153

5.79

43.38

 

 

Save your results in the last column of `df.2`

 

 

3. [17 points] Imagine that you have $50,000 in student loan debt with an interest rate of 5.875% APR with monthly compounding. Your lender has agreed to allow to you pay off your debt over 10 years on a monthly basis such that you make 120 equal monthly payments of $551.97 starting one month from today over the next 10 years. However, you are considering making higher monthly payments to pay off your debt sooner. In particular, you are considering making the following payments:

 

PAYMENT NUMBER OF MONTHS TO LAST MONTH PAYMENT REPAY

 

$600.00

 

 

$625.00

 

 

$650.00

 

 

$675.00

 

 

$700.00

 

 

$725.00

 

 

$750.00

 

 

 

 

Note the following:

 

๏‚ท     An interest rate of 5.875% APR with monthly compounding means that the monthly interest rate charged is 5.875%/12.

๏‚ท     The following equation is used by banks to compute loan payments:

 

                    

๐‘ƒ๐‘‰ =    1 (   )  ,

 

where, PV is the present value of the loan ($50,000 in this example), C is the monthly payment (first column of the above table), r is the monthly interest rate (see the above bullet point), and n is the number of monthly payments. As an example, you can confirm that C will be equal to $551.97 in the above example with r = 5.875%/12, n = 120, and PV = $50,000.

๏‚ท     This question is asking you to use the above equation to solve for n. However, since you are choosing a monthly payment and solving for n, there will be n-1 equal payments and the last month’s payment will be smaller.

 

Use the bisection method to solve for the number of months to maturity and then back out the last month’s payment. Save your results in the last two columns of `df.3`. [HINT: the present value of n-1 payments plus the last month’s payment should be exactly equal to the present value of the loan – i.e., $50,000].

 

Save your results in the last two columns of `df.3.`

 

 

4. [17 points] Write a function to compute the annualized mean and volatility of a given stock’s daily returns over the past n trading days. The function should take the following in as inputs:

๏‚ท     Stock ticker (AAPL, SPY, BAC, etc.)

๏‚ท     Number of days returns to compute the volatility (60 days, 250, days, etc.)

๏‚ท     Minimum number of observations (e.g., a minimum of 10 days returns must be used to compute volatility, otherwise return an error message)

The function should output the following: ๏‚ท The annualized n-day volatility

๏‚ท     The annualized n-day mean

๏‚ท     The number of valid returns used to compute the mean and volatility

 

Your function should utilize the quantmod package we have used in class to automate the data download.

 

(I will test the function for BAC, SPY and AAPL for various values of n).

 

Fill in the function question4 <- function(tic,n,min.n){}

 

 

5. [17 points] Write a function to compute the internal rate of return (IRR) of a generic series of cash flows. Your function should take a vector of cash flows and a vector of the timing of the cash flows as inputs, and return the internal rate of return (IRR) as the output. The IRR is the discount rate which sets the discounted sum of the cash flows equal to the present value of the series of cash flows. Formally, let r represent the IRR and define the problem as follows:

 

 

๐ถ

 ,

 

 

 

 

๐‘ƒ๐‘‰ =  (1 + ๐‘Ÿ)

 

where, Ci,t is cash flow i at time t; PV is the present value of the sum of cash flows (which you set equal to zero to solve); n is the number of cash flows; and r is the internal rate of return (IRR).

 

You may use any method for solving nonlinear equations but you must write your own function (e.g., you could use the bisection or Newton’s method).

 

I will test that your function works by trying a few examples.

 

Fill in the function question5 <- function(c,t){}

 

 

6. [20 points] Answer the following questions using the data defined in question 6 of the Midterm_2022.R file. The data includes the risk-free rate (rf), market risk premium (RP), a vector of stock betas (beta), and the covariance matrix (sigma). All data is annualized.

 

a. Find the expected returns of each stock using the CAPM:

 

 

         

๐‘…  = ๐‘Ÿ + ๐›ฝ ๐‘…๐‘ƒ

 

 

 

where, Ri is the return on stock i, rf is the risk-free rate, ๐›ฝ is the beta of stock i, and RP is the risk premium. Note that you can use the provided data to calculate the expected returns.

 

b. Find the portfolio of stocks that maximizes the expected utility of your portfolio, where your utility is quadratic and defined as follows:

u(x) = E[Rpf]- ๏ฌ/2*๏ณpf2

 

where,

Rpf is the expected return on the portfolio ๏ณpf is the expected volatility of the portfolio ๏ฌ is a constant risk aversion level

 

c. What would the risk aversion parameter have to be for you to allocate 100% of your funds to the risky asset (your stock portfolio) in the previous question? What would the risk aversion parameter have to be for you to allocate 50% of your funds to the risky asset?

 

Save your expected returns and portfolio weights in the last 4 columns of `df.6`.

 

 

Expert answer

Stuck Looking For A Model Original Answer To This Or Any Other
Question?


Related Questions

What Clients Say About Us

WhatsApp us