Bond & Yield Curves, Portfolio Analysis, FX Processes, and Option Pricing
Assignment Brief
Group Project
Each group can have maximum of 2 students. The project is due on the last day of the class during the first 10 minutes of the class time. A hardcopy of the project report and a CD/USB, which includes the data and codes, and all calculations, should be submitted. If the submission is delayed by 24 hours, 25% the project marks will be deducted. If the submission is delayed by 48 hours, 50% will be deducted. If the submission is delayed by 72 hours 100% will be deducted. No excuses will be accepted.
Note: You should not have the same data as the other groups have. Please communicate via “discussion” on D2L to make sure your data is not the same as the one that the other groups have. All your data should start from year 2020. Any plagiarism (e.g., copy from other group, copy of the computer code from other group or Internet) on this project will yield you a failing grade in this course. Hardcopy of the report will be submitted on the last day of the class. Softcopy of the report, all the calculations, codes, and data will be submitted via D2L. Please email the group information to the TAs by Feb. 21, 2020.
Bond and Yield curve
Each group should collect daily information on bonds issued by the Government of Canada from a source such as database Datastream, center for research in security prices, newspaper for two weeks. Calculate the yield curve for each day using bootstrap method. The yield curves should present for the next 20 years, using at least 5 bonds. If necessary, you can also round the day counting to nearest month. Code or source file, detailed explanation, and calculation for the construction of, at least, ONE yield curve have to be presented in the report in order to get full marks. The behavior of each curve should be explained clearly. Similarly, you pick a company and its published bond information to calculate the yield curve for that company. Follow the same procedure as you did for the Government of Canada bond.
Portfolio
Collect daily share price data for four companies for a year and calculate daily return. Present the daily return data using a distribution. Assume market is determined by S&P 500. Calculate
- of each company using different methods that you learnt in this course, and discuss about the values that you obtained for
- Establish the efficient frontier for the portfolio of the four companies and determine the efficient portfolio.
Fitting geometric Brownian motion and mean-reverting process
Each group need to collect daily foreign exchange rates between Canada and another country (each group should have different exchange rates) for at least 2 years. Fit the exchange data into geometric Brownian motion and mean-reverting processes. Justify the results you obtained. 2 Code or source file, detailed explanation, and calculation for the processes should be provided.
Option pricing
Collect daily price of a stock for year 2019 and fit the data into a geometric Brownian motion (GMB). Then, using Mote Carlo simulation for 1000 sample paths, calculate at the money European call and put options. Repeat the process with 2000, 4000, 6000, 8000, 10000, and 12,000 sample paths. Plot the call and put options prices against the number of sample paths. Now, determine the values of the call and put options applying the Black-Scholes model. Compare and explain the results you obtained.
Sample Answer
Bond & Yield Curves, Portfolio Analysis, FX Processes, and Option Pricing — Group Project
Abstract
This project constructs Government of Canada and corporate yield curves by bootstrapping across ten trading days, analyses a four-stock portfolio against the S&P 500 benchmark, fits geometric Brownian motion and a mean-reverting process to a two-year FX series, and prices at-the-money European options using Monte Carlo simulation with comparison to the Black–Scholes model. Methods are demonstrated on example data and are then applied to unique datasets starting from 2020. All code and calculations are provided.
Bond and Yield Curve
Data
I collect daily clean prices, coupons, maturities, payment frequency, and day-count conventions for at least five Government of Canada bonds over two weeks (ten trading days). I ensure my bonds span short, medium, and long maturities up to around 20 years, so that the curve is well identified. I also gather the same fields for at least five bonds of one corporate issuer. Data sources are named precisely and dated to satisfy the originality requirement.
Method: Bootstrapping Zero-Coupon Curve
For each day, I sort bonds by maturity and recover discount factors sequentially. Shortest-maturity bonds determine early discount factors directly. Longer maturities are solved by subtracting present values of earlier coupon cash flows, leaving the final discount factor implied by price. I convert discount factors into zero rates and provide a daily zero curve up to 20 years for the government bonds, and a similar curve for the corporate issuer
Continued...