Course Project for Economics of Derivatives 646
 
Johns Hopkins University
Project Introduction

This assignment is to count for 25% of the overall course grade. There are two types of projects for this course, a derivatives trading project described here that is intended to be completed by a single student, or a 4-member spreadsheet-based project as described below. The "default option" project is the spreadsheet-based project described below on this page; if you prefer the individual trading project, request it from me by email by May 25. All students will be assigned to a group to work on a spreadsheet-based project as described below except for those who request on a timely basis to work on individual trading projects as described below and on a page that can be 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

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. After completing and submitting the first stage of your project, generally referred to as "Stage 1," you can begin the second stage. Details of your second stage are not given here but will be assigned by the course instructor for your group after you submit the output of the first stage of your project. This second stage will likely apply your first draft or stage (stochastic process simulation) to an instrument, series or portfolio of instruments or market that the course instructor will designate. Possibilities include currencies, real assets, path dependent securities 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 tools.

This assignment is to count for 25% of the overall course grade. This total of 25% includes 7% for the first draft or first stage, due by July 7 and 18% for the final project, due by August 6. The first stage will be your stochastic process simulation. Projects and project drafts can be submitted before deadline dates; in fact, I encourage this so that students can get earlier starts 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 July 7 deadline; students will have much more time for the second stage of their projects by submitting the first stage early.

Students must inform the instructor by May 25 of their intent to complete individual trading projects rather than group spreadsheet projects. Students should not submit projects that have been or will be submitted in other courses. The final version of the project, be it the spreadsheet project or the trading project, will be due on August 6 as noted in the Course Syllabus.

If applicable, students are expected to develop "user-friendly" and entirely original spreadsheet files of professional quality capable. The second stage of the project 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 (sometimes instructions and descriptions within the spreadsheet will suffice), User-Defined-Functions (as appropriate), VBA code and/or macros (as is necessary) to run the file in a very user-friendly setting. Not all groups will use all of these Excel features, though these features do have advantages, including ease of use. The documentation should explain exactly how and why the spreadsheet works and make it easy to use for a typical financial professional or student.

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 2025, etc. I emphasize that the package should be user-friendly with detailed on-screen instructions, separate word processed documentation, 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 (me) has no familiarity working with the group's original spreadsheet and will not remember any verbal instructions given by students. However, the group can assume (I hope) that the instructor does understand the nature of the stochastic process and securities/portfolios related to the assignment.

After reviewing the first draft of student submissions, the course instructor will assign direction for the project’s second stage. It is likely that the instructor will suggest continuing development of the submitted first draft (if necessary) 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.

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.


Project Details

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: 

Initial underlying security value: S0
Annual riskless return rate (Expected drift value per year): rf
Initial annual standard deviation: σ0
Annual standard deviation of standard deviation: σσ
Time of simulation in years or fractions thereof: T
Number of jumps over period: n

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.

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.


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
updated 05/18/2025