linked
to from this page. Any student not requesting and being assigned by the
instructor by May
25 the individual trading project
will be assigned to a 4-member group spreadsheet-based project before
the end of the second week of class. Students interested in the
derivatives trading project should request this assignment via email
to the course instructor (jteall1@jhu.edu)
before the end of the first week of the term (May
25).
Spreadsheet Project Motivation
In
the reading materials and video lectures for this course, we will
emphasize derivatives pricing models that have well-known and useful
qualities. For example, the expectations models for futures and the
Black-Scholes and Binomial pricing models for options have
easy-to-obtain inputs, straight-forward mathematical derivations and
easy-to-interpret outputs. These models work impressively well in
fairly stable environments, but really only with simple underlying
instruments and inputs. For example, the Black-Scholes model provides
prices for plain vanilla options on publicly-traded stocks so well
that professional traders normally maintain highly leveraged and
carefully hedged portfolios so as to exploit pricing opportunities
amounting to pennies per share. Given equity prices, basic equity
options pricing models value options far more accurately than any
known equity evaluation model can price shares of stock. That is,
these equity options pricing models work really well. Not only are
these basic pricing models accurate given underlying equity prices,
they are easy to use. Futures pricing models based on parity
conditions and options pricing models such as Black-Scholes and the
binomial framework are easy to format into spreadsheets and even into
handheld calculators such as the HP-12C. This means that the typical
professional options trader will know basic options pricing models
"forwards and backwards" as well as all of the various flaws and
shortcomings of the models. This means that anyone trading options
without knowing these basic models are at a serious competitive
disadvantage, but also needs some ability to perform analysis beyond
these simple models. In addition, finance professionals, including
CFAs, brokerage firm registered representatives, SEC, CFTC regulators
should all have some familiarity with these models as they can easily
be applied elsewhere.
However,
there are serious limitations to these basic models. As the model
assumptions differ more widely from actual trading conditions, their
applicability can be limited. There are many types of derivative
securities, including numerous types of exotic options in which the
simple plain vanilla options models just won't work. This is where
simulation models come in handy. With simulations, we can develop
algorithm-based procedures to value and analyze derivative securities
and portfolios even when closed-form or analytical solutions are not
available or known. Usually, the first step in setting up simulations
is to define and simulate the relevant underlying stochastic process.
Because
we manage securities in an uncertain environment, we need to
understand the nature of the stochastic processes that underlie our
securities pricing, risk management efforts and portfolio selection.
Uncertainty has major effects on all of the inputs needed for
derivatives analysis, including underlying security price evolution(s)
over time, volatility estimates, interest rate shifts, etc. Stochastic
processes used to model this uncertainty can take on discrete or
continuous forms over time and state space or even some combination of
the two. The purpose of this assignment is to enable students to
develop some level of comfort and expertise modeling derivative
securities in stochastic environment and to apply their skills to
pricing, analyzing volatility parameters, hedging and managing risk in
such environments.
Project Format
Simulating
a Binomial Process with a Stochastic Variance
First
Stage:
The user of Stage 1 of this app should be able to simulate a variation of a discrete-time binomial process through time, a user-input value between 2 and 100 periods. However, this process will have a catch. Instead of preparing an app for a standard binomial process, the volatility or variance/standard deviation of the process should be allowed to vary through time. That is, the variance/standard deviation at any point t+1 will have a time-varying expected value σt+1 so that the variance/standard deviation will drift up or down over time based on the prior period variance/standard deviation σt. The standard deviation of the standard deviation σσ will be a user-input constant. The initial annual standard deviation σ0 is to be input by users of the app as is the standard deviation of the standard deviation σσ. Thus, the underlying security return standard deviation might well drift upwards and/or downwards over time. If the "standard deviation of the standard deviation" were to be set equal to zero, the user would be working with a standard binomial process, which should be easy to set up on a spreadsheet as a start for the project. Using my notation from the course, the user inputs for the first stage of this app might be:
The
second stage of this project will be provided to students after the
first stage is submitted and reviewed. This second stage will involve
valuation/hedging of some type of option, again, as defined by the
instructor later in the course and using the stochastic process
simulation provided by the student for the first stage of the project.
So ultimately, the user seeking to price the relevant option should be able to input an underlying asset price, call and/or put striking prices, option expiration dates, riskless interest rate and expected variance/standard deviation, just as in a standard binomial model. However, this simulation structure should go a step further. The volatility itself (and/or the multiplicative up and down movements) should be allowed to vary through time, requiring the user to input a "standard deviation of the standard deviation." Multiplicative upward and downward movements can be estimated from some combination of the underlying security volatility, the "volatility of the volatility" and riskless return rate, somewhat analogous to the process for the standard binomial model.
Second Stage:
The Stage 2 part of the project will be assigned after you have submitted the Stage 1 part of the project. Hypothetically, going into Stage 2, this stochastic volatility binomial process might be used to simulate stochastic interest rates, non-constant equity return variances, underlying security price movements, etc. However, for Stage 1, students should concern themselves only with the process of simulating a generic stochastic volatility binomial process for a random variable through time. The user of this spreadsheet should be able to input various parameters for the random process. Among the allowable user-inputs should be an initial or starting value for the generic random variable along with:
It is useful to appreciate that many financial models make certain assumptions that allow for a specific relationship between process variance and proportional upjump/downjump increments, e.g., σ = f(u, d). For example, most binomial option pricing models that you will see online will specify relationships among underlying security variances, multiplicative upward and downward price jumps. You may assume that this draft will be developed in the second stage to work with calendar time inputs and "number of days" (e.g., T and td). However, for the first stage, you do not know what random variables will be modeled in the second stage or what securities you will use for your model. The first stage is intended to be generic and flexible enough to apply to many potential securities and markets.
However, for the first stage of the project, you do not know what random variables will be modeled in the second stage or what securities you will use for your model. So, your job here is just to simulate a mixed jump-diffusion process with a known drift and variance for the diffusion part of the process. The first stage is intended to be generic and flexible enough to apply to many potential securities and markets.
General
Notes
Make
certain that you and your groupmates are at least marginally competent
to use spreadsheets, and User Defined Functions and/or VBA can be
helpful as well. These latter parts can be remarkably simple to
accomplish. If you are clueless now, have a look at the Introduction
to VBA on the course web site or one of the many such introductions
online. You might be able to create your own fundamental VBA programs
to do something useful within a half hour. There are plenty of web
sites that will answer your questions about VBA and user-defined
functions when you have them. If you are clueless now, have a look at
the Introduction to VBA page on the course web site. There are plenty
of web sites that will answer your questions when you have them. Feel
free to reach out to me and to post questions and comments onto
relevant Canvas discussion pages.
Derivatives Trading Project Introduction
Here’s
a brief introduction to a very different type of project for this
course, also worth 25%, but no "first stage draft" is required.
Students who wish to engage in paper or virtual trading of derivatives
can make a project of it for this course. The first step is to find a
suitable trading simulator or paper trading platform for this purpose,
as JHU AAP does not subscribe to academic trading simulators such as
FTS, Rotman or Trader-X. But there are a number of online
alternatives. The details for this project are a bit more lengthy, so
link
here to a detailed description of this trading project.
Students must inform the instructor by May 25 of their intent to complete the project. Of course, students should not submit projects that have been or will be submitted in other courses. The final version of the project will be due on August 6 as noted in the Course Syllabus.
Top | 440.646 | Home |