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

Big M method, I Want a answer for solving the big M method in the topic of ...

I Want a answer for solving the big M method in the topic of simplex method...

What does extern "c" int func(int *, A: This will turn o_ "name mangling" f...

A: This will turn o_ "name mangling" for func so that one can connect to code compiled by a C compiler.

Advanced, how to create a shopping cart

how to create a shopping cart

Area under curve, write a program to find the area under the curve y=f(x) b...

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 #include float start_point,

Program to calculate the average sales for each employee , There are 2...

There are 25 employees in a business. Each employee has 5 sales each day of the month (Assume there are 30 days in each month of the year). Draw a flowchart for a pr

Define character input and output with files, Define Character Input and Ou...

Define Character Input and Output with Files? This is done by using equivalents of putchar and getchar which are called putc and getc. Each one takes an extra argument which id

Palindrome, A palindrome is a string that reads the same from both the ends...

A palindrome is a string that reads the same from both the ends. Given a string S convert it to a palindrome by doing character replacement. Your task is to convert S to palindrome

Implementation of the definition class - c++ program, Implementation of the...

Implementation of the Definition class: void Definition::put_word(char *s) {    word = new char[strlen(s)+1];    strcpy(word,s);    nmeanings = 0; }   voi

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