This course focuses on computational methods in option and interest rate, product’s pricing and model calibration. The first module will introduce different types of options in the market, followed by an in-depth discussion into numerical techniques helpful in pricing them, e.g. Fourier Transform (FT) and Fast Fourier Transform (FFT) methods. We will explain models like Black-Merton-Scholes (BMS), Heston, Variance Gamma (VG), which are central to understanding stock price evolution, through case studies and Python codes. The second module introduces concepts like bid-ask prices, implied volatility, and option surfaces, followed by a demonstration of model calibration for fitting market option prices using optimization routines like brute-force search, Nelder-Mead algorithm, and BFGS algorithm. The third module introduces interest rates and the financial products built around these instruments. We will bring in fundamental concepts like forward rates, spot rates, swap rates, and the term structure of interest rates, extending it further for creating, calibrating, and analyzing LIBOR and swap curves. We will also demonstrate the pricing of bonds, swaps, and other interest rate products through Python codes. The final module focuses on real-world model calibration techniques used by practitioners to estimate interest rate processes and derive prices of different financial products. We will illustrate several regression techniques used for interest rate model calibration and end the module by covering the Vasicek and CIR model for pricing fixed income instruments.
Option Pricing and Numerical Approach
In this week, we will study option pricing via a numerical approach. In many cases, analytical (explicit) solution of option prices is not obtainable, which requires numerical solutions. For example, if we switch the stock dynamics from geometric Brownian motion to another model, or switch the option from vanilla style to exotic style, explicit pricing formula will become unrealistic. Firstly, we start from introduction to options, where you can learn different types of options and different perspectives of option market participants. Then we will talk about option pricing via numerical integration both in general and in details. In particular, we will focus on Fourier transform and fast Fourier transform (FFT). We also provide Python codes for you to learn how to apply these techniques in practice. In the end of this week, you will be exposed to several cases studies, from time cost comparison to different models. There are lots of models which estimates the stock price evolution. Among these models, we will mainly focus on Black-Merton-Scholes (BMS), Heston, and Variance Gamma (VG) model, where you will learn the motivation and characteristic of each model. Afterwards, you will have an assignment about option pricing, where you can utilize all the theoretical knowledge and Python codes to price different options under different stock dynamics.
In this week, we will study model calibration, which follows the topics in last week. You have been exposed to many models, but you have no information about how to choose the model and parameters. Fortunately, you will learn how to solve this problem in this week from different approaches. Firstly, we start from an introduction to bid and ask prices and option surface. Then we will talk about the model calibration in regards with fitting the market option price, also with pictorial demonstration about implied volatility. Next, you will learn the calibration recipe, involving objective functions and initial parameter set. You will also learn how to do calibration in practice, which is an optimization problem. We will introduce three routines: brute-force search, Nelder-Mead algorithm, and BFGS algorithm. Except from learning these routines theoretically, you will also learn how to apply them in the optimization problem from Python codes. Followingly, you can apply what you learn about calibration in the assignment.
Interest Rates and Interest Rate Instruments Part I
We will start learning interest rates and interest rate instruments from this week. Interest rates play a very important role in measuring the future and present value of financial products. People also use market interest rates to analyze the economic situation. At the very beginning, we will introduce fundamental interest rate concepts, including forward rates, spot rates, swap rates and term structures of interest rates. Then we will apply data-driven analysis to calibrate LIBOR and swap curves and cross-correlations between these rates. Using the term structure of these interest rates, we should be able to price market value of bonds, swaps and other interest rate products. We also provide you with Python codes in order to show how to obtain the LIBOR curve and how to use it to price bonds. After learning this module, you will have a brief overview of interest rates and their applications in bond and swap pricing. We will talk about complex stochastic models and calibrate interest curves with these models next week.
Interest Rates and Interest Rate Instruments Part II
This week we will use different models to estimate interest rate processes and implement regression analysis to calibrate the processes. The models in this week are very important in practice. For instance, market makers need good models to help them interpolate or extrapolate market prices of illiquid interest-rate products, while speculators need models to help them understand the prices of fixed income securities so that they can bet on interest rates, etc. So in this module, we will first provide different regression techniques used to fit data in the market. Then we will introduce Vasicek model and CIR model for bond pricing. We also show how to use regression to fit data with our models. We provide all codes needed and also go through the codes to help you know how to apply them. At the end of the lecture, you will be asked to practice interest rate models by fitting LIBOR rates in the assignment.