$30
MA 374 Financial Engineering Lab Lab 01
General Instructions for MA 374 (Applicable for all lab assignments)
• Your program should be written in such a way that there is only one program for each question and all the outputs for each
question should be displayed by running the program once only.
• Put down all your observations and outputs of the questions asked in a single Word/LaTeX document. Finally create a pdf
file from the Word/LaTeX file.
• The file names should be your roll numeber and name seprated by “ ”. If your roll number is 100 and your name is xyz then
file names should be 100 xyz for output files (in pdf) and 100 xyz q1 and 100 xyz q2 etc for programs. Write your full name
and roll number at the top of the output file.
• All your programs (executable) and output files (in pdf format) must be submitted as Microsoft Teams assignment.
• Each question carries 10 marks.
Write a program, using the binomial pricing algorithm, to determine the price of an European call and an European
put option (in the binomial model framework) with the following data :
S(0) = 100; K = 105; T = 5; r = 0.05; σ = 0.3.
Take u = e
σ
√
∆t+(r− 1
2
σ
2
)∆t
and d = e
−σ
√
∆t+(r− 1
2
σ
2
)∆t
, where ∆t =
T
M , with M being the number of subintervals
in the time interval [0, T]. Use the continuous compounding convention in your calculations (i.e., both in p˜ and in the
pricing formula).
1. Run your program for M = 1, 5, 10, 20, 50, 100, 200, 400 to get the initial option prices and tabulate them.
2. How do the values of options at time t = 0 compare for various values of M? Compute and plot graphs (of the
initial option prices) varying M in steps of 1 and in steps of 5. What do you observe about the convergence of
option prices?
3. Tabulate the values of the options at t = 0, 0.50, 1, 1.50, 3, 4.5 for the case M = 20.
Note that your program should check for the no-arbitrage condition of the model before proceeding to compute the
prices.