Course Project for Economics of Derivatives 646
Johns Hopkins University
Project
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.
Students
may,
either individually or in groups of 2 or 3, work on any one of the
(mostly)
spreadsheet-based projects described below. Students should sign up by
email to
the course instructor (either as individuals or in groups) for one of
the
projects listed below on or before the end of the second week of
the
semester. Groups made up of one, two or three students will list each
of their
names together in this email to the instructor.
The project
for
this course can be described as involving two stages. The first stage
concerns
your simulation of a stochastic process moving forward in time. You
have some
choices here, as indicated in the list below this description. After
completing
the first stage of your project, generally referred to as your first
draft, you
can begin the second stage. Details of your second stage are not given
here but
will be assigned by the course instructor after you submit the output
of the
first stage of your project. This second stage will likely apply your
first
draft (stochastic process simulation) to an instrument, series of
instruments
or market that the course instructor will designate such as currencies
and/or
their derivatives, fixed income instruments and/or related derivatives,
CDOs, derivative
and underlying equity price series, etc. The stochastic process that
you
modeled will be applied to some input of interest such as exchange
rates,
interest rates, underlying security price volatility levels, underlying
security prices, etc. You will ultimately assemble these to prepare a
finished
product or deliverable that constitutes a useful tool applying
derivatives
analysis.
This
assignment is
to count for 25% of the overall course grade your assignment is
accepted by the
instructor. This 25% includes 5% for the first draft, due at the end of
Week 8,
5% for the second draft, due at the end of Week 12 and 15% for the
final
project, due at the end of the 15th week. Projects and
project
drafts can be submitted before deadline dates; in fact, I encourage
this so
that students can get earlier starts on the second drafts and final
versions of
their projects earlier. So, for example, I have no objection to a
student
submitting the first draft of their project well before its Week 8
deadline;
students will have much more time for the second and third stages of
their
projects by submitting the first stages early.
Students
must
inform the instructor by the end of the second week of the
semester of
their intent to complete given projects, whether they intend to do so
in a
group or individually, and if in a group, identifying their project
selection along
with that group member or members, if any, and subject to the
limitations
discussed above. Please inform the instructor as soon as possible if
you change
your mind about doing a given project or withdraw from a given group.
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 the last
day of
the semester as noted in the Course
Syllabus.
If
applicable,
students are expected to develop "user-friendly" and entirely
original spreadsheet files of professional quality capable of
performing one of the tasks listed below (or a satisfactory alternative
as
discussed with the instructor). The first draft will complete this
task. The submitted
file should be original and not have been used before in any other
class, and
not a file adapted from one found on the Internet or from another
project. The spreadsheet files should include appropriate
documentation
(often instructions within the spreadsheet will suffice),
User-Defined-Functions, VBA code and/or macros as is necessary to run
the file
in a very user-friendly setting.
Students
should feel
free to discuss their projects with the course instructor to obtain
direction
as needed. Students are encouraged to assist each other, to test each
other’s
programs and to "work out bugs" in each other’s
programs. The
spreadsheet files should be usable in Excel from MS Office 2007 or MS
Office/365
2022 to 24, etc. I emphasize that the package should be user-friendly
with
detailed on-screen instructions, macros and/or visual basic routines as
necessary to ensure this. The project should include adequate
documentation for
its use by anyone familiar with the relevant analytical techniques and
the
financial problem. It should be assumed that the user has no
familiarity
working with the group's original spreadsheet and will not remember any
verbal
instructions given by students.
After
reviewing the
first draft of student submissions, the course instructor will propose
direction for the project’s second stage. It is likely that the
instructor will
suggest continuing development of the submitted first draft to modeling
the
behavior of some financial price, rate or other model input over time,
then
applying this model to a given security type or market. The third stage
of the
project will, I hope, to be for simply addressing instructor comments
on the
second stage of the project.
As always,
do be
aware of and follow all AAP and JHU rules, policies and guidelines
concerning
all assignments. In all cases, students should carefully cite any work,
paper,
book, article, Internet site, electronic communication or software,
whether
published or unpublished, that was consulted or otherwise used as a
reference
for their own work. Any material that was copied or paraphrased
into a
student’s work must be appropriately footnoted (end-noted or
otherwise cited)
along with appropriate publication or other details. Sufficient
information
should be provided in the citation for the instructor or other readers
to
access the referenced material as easily as possible. Any
non-written
materials (e.g., oral communication, television, etc.) must be cited as
well.
Appropriate style manuals can be consulted for citation style. All
projects are to be considered to be independent projects, completed
without
assistance of others except for the course instructor, and members of
the
student's project group, though outsiders including other students may
be used
to test the project. Authors of any written material should take great
care in
ensuring that their papers are well-written and conform to appropriate
style
and Institute academic honesty guidelines. Students should not copy
code or
other material into their files from outside sources. Groups and their
members
should not collaborate or share work or information with other students
and
groups in the preparation of this project, though, of course, students
working
together in a group should collaborate with other members of their
group. And
again, students may use outsiders to test and comment on the usability
of their
projects.
The first
three
projects listed below are multi-stage projects. For their first drafts,
students and/or student groups will complete the first stage of their
projects
as defined below.
Specific
Projects
1.
Simulating
a Binomial Stochastic Environment
The
user of this Stage 1 package should be able to analyze a generic
standard
binomial process through time. Going into Stage 2, this binomial
process might
be used to simulate stochastic interest rates, non-constant variances,
underlying security price movements, etc. However, for Stage 1,
students should
concern themselves only with the process of simulating a generic
binomial
process for a random variable through time. The user of this
spreadsheet should
be able to input various parameters for the generic random process.
Among the
allowable user-inputs should be an initial or starting value for the
generic
random variable along with:
·
At
least one of or better yet some combination of a variance for the
process,
relevant potential proportional upjump/downjump increments for the
binomial
process.
·
A
number of nodes and/or time periods in the generic process. The modeled
number
of time periods would be user-input, but
the model must be able to accommodate any integer value of time periods
between
1 and 150, which implies that the model must be able to accommodate
between 2
and 2^150 nodes or potential final outcomes.
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.
2.
2. Simulating
a Continuous Time-Space Brownian Motion Environment
The
user of this Stage 1 package should be able to analyze a generic
generalized
(drift or mean-variance) Brownian motion process through time. Going
into Stage
2, this generalized Brownian motion process might be used to simulate
stochastic interest rates, non-constant variances, underlying security
price
movements, etc. However, for Stage 1, students should concern
themselves only
with the process of simulating a generic generalized Brownian motion
process
for a random variable through time. The user of this spreadsheet should
be able
to input various parameters for the generic random process. Among the
allowable
user-inputs should be an initial or starting value for the generic
random
variable along with a drift and a variance for the process, and the
number of
time periods for the process.
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. So, your
job here
is just to simulate a generic Brownian motion process with a known
drift and
variance. The first stage is intended to be generic and flexible enough
to
apply to many potential securities and markets.
3.
3. Simulating
a Mixed Jump-Diffusion Process Environment
One
of the big problems with the most basic popular options pricing models
is that
underlying security variances tend not to be constant over time. For
example,
many U.S. corporations are expected to make earnings announcements
quarterly,
on well-anticipated dates. It is clear that stock prices are more
volatile
about these earnings announcement dates than at other periods
throughout the
year. In addition, election cycles, hurricanes, earthquakes, etc. can
impact
variances.
The
user of this Stage 1 package should be able to analyze a generic mixed
jump-diffusion
process through time. This means that students might wish that the
process will
generally be of a Brownian motion type with drift, but include a
prospect for
drifts, either at designated times or at random intervals. There are
many
possibilities for how this jump process might be modeled. Going into
Stage 2,
this generalized Brownian motion process might be used to simulate
stochastic
interest rates, non-constant variances, underlying security price
movements,
etc. However, for Stage 1, students should concern themselves only with
the
process of simulating a mixed jump-diffusion process for a random
variable
through time. The user of this spreadsheet should be able to input
various
parameters for the generic random process. Among the allowable
user-inputs
should be an initial or starting value for the generic random variable
along
with a drift and a variance for the continuous part of the process, the
number
of time periods for the process, and parameters for the jumps.
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. 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 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.
You will
probably
notice that I already have made available to you on my personal website
for the
course and on Canvas spreadsheets that accomplish pretty much what I am
asking
of you here. The spreadsheets don’t necessarily accomplish
everything that I
have asked of you here, they are not of professional quality, and they
are not
easily adapted to the valuation of many types of derivative securities.
They
are intended to be pedagogical demonstrations of illustrative value,
something
suitable to prepare you to create much better works on your own.
4. Derivatives Trading
Project
Here’s an introduction to a very different type of project for
this course. 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 the end of the second week of the semester of
their intent to complete the project and whether they intend to do so
in a group along with that group member or members, if any, and subject
to the limitations discussed above. Please inform the instructor as
soon as possible if you change your mind about doing a given project.
Students should not submit projects that have been or will be submitted
in other courses. Students who wish to discuss customizing their
own projects may negotiate terms of this other project type with
the course instructor, who should approve it before work
commences. The final version of the project will be due on the
last day of the semester as noted in the Course Syllabus.
updated 08/28/2024