Implement a binomial tree class, C/C++ Programming

Assignment Help:

a) Implement a binomial tree class with a method that calculates the value of an option passed in to the class. The binomial tree should not rely on specific features of the different types of options. That is, the binomial tree should be shielded from specific knowledge of the options it is pricing. You may, e.g., have a method, valueOption() that handles any type of equity option passed to it.

Tip: The vector template class is useful in implementing the binomial tree solver.  
 
Tip: You may find it useful to implement a getPayout(S,t) method for your option classes that return exercise payout (if any) for stock spot value S and time t.

b) Find the tree depth (i.e., the number of steps in the tree) needed to value an (at-the-money) European call with strike and spot of $90, sigma of 25%, risk-free rate of 9% and time to maturity of 6 months to within one penny of the BlackScholes() price.

c) Compare the values of European and American puts by varying the strike price from $80 to $110 in increments of $1 for a spot of $100, sigma of 0.3, risk-free rate of 8% and T = 2 years. 

Write the European and American put values to a comma-separated value (csv) file.  Each line should contain Strike, European price and American price. When is the difference in value between the two options the largest?  Challenge question: *Can you figure out why?

d) When analyzing an asset, we are often interested in a security's sensitivities. That is, how the value of a security changes when the value of something else changes.  For equity options, we speak in terms of the so-called "Greeks" which define sensitivities to the underlying stock price, volatility, interest rates and so on.  The most important Greek is Delta, the option's sensitivity (first derivative) to changes in the underlying stock price.


Related Discussions:- Implement a binomial tree class

C language, WHAT IS A C LANGUAGE? C IS A PROGRAMMING?

WHAT IS A C LANGUAGE? C IS A PROGRAMMING?

Cpp, At a shop of marbles, packs of marbles are prepared. Packets are named...

At a shop of marbles, packs of marbles are prepared. Packets are named A, B, C, D, E …….. All packets are kept in a VERTICAL SHELF in random order. Any numbers of packets with thes

How do you access the values within an array, How do you access the values ...

How do you access the values within an array? - Arrays comprise a number of elements, which depends on the size you assigned it during variable declaration. - Every element

Answer, Write a program to find the area under the curve y = f(x) between x...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b.

AlgorithmS, Algorithm to find the value of the powers raised by integer

Algorithm to find the value of the powers raised by integer

Minimum shelf, At a shop of marbles, packs of marbles are prepared. Packets...

At a shop of marbles, packs of marbles are prepared. Packets are named A, B, C, D, E …….. All packets are kept in a VERTICAL SHELF in random order. Any numbers of packets with thes

What is difference between require_once () and require(), What is differenc...

What is difference between require_once (), require(), include()? require() includes and evaluates a specific file, if file isn't found then it shows a Fatal Error. require_

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd