Exploiting Earnings Volatility - Johnson, Brian
Exploiting Earnings Volatility - Johnson, Brian
Brian Johnson
Copyright 2015 Trading Insights, LLC
All rights reserved. Except as permitted under the U.S. Copyright Act of
1976, no part of this publication may be reproduced, distributed, or
transmitted in any form or by any means, without the prior written permission
of the publisher. This e-book is licensed for your personal use only. This e-
book may not be resold or transferred.
The ability to examine the graphs and tables in this book is essential to
understanding the material. Depending on the screen size of your E-reader, it
may be difficult to see all of the detail on the images. Many of the images
have a landscape orientation, but most users prefer to use the portrait
orientation when reading. As a result, many of the images will be compressed
to fit the narrower width of the screen.
The larger images all appear at the top of a new page. The easiest way to
enlarge these images is to simply rotate your E-reader 90 degrees from
portrait to landscape orientation. However, the screen orientation on your E-
reader must first be unlocked.
If you would like to examine the graphs and tables in even greater detail,
first select the image (for example, tap twice on the image with the Kindle
Fire). This would bring up the graphic on a separate screen. You would then
be able to zoom in on the graph or table. Close the image screen when you
are finished and continue reading.
1 - Volatility Review
Call and put options have asymmetrical payoff functions. This sounds
complicated, but is actually relatively straightforward. A call option gives the
owner or buyer the right, but not the obligation, to purchase the underlying
asset at the strike price on or before the expiration date. For now, let’s keep
things simple and ignore the fact that many options can be exercised prior to
expiration. This will allow us to focus our attention on what happens at
option expiration.
The following example (depicted in Figure 1.1 below) should help
illustrate the concept of asymmetry. If we purchased a one-year call option on
IBM with a strike price of $100, we would only choose to exercise the call
option if the price of IBM was above the $100 strike price (in the money) on
the expiration date.
If the price of IBM was $110 on the expiration date, the payoff would be
$10. The payoff is also called the intrinsic value and represents the value of
exercising an in-the-money option at expiration. In this case, we could
purchase IBM for the $100 strike price and immediately sell it at the market
price of $110 for a payoff of $10. If the market price of IBM was $120 on the
expiration date, the payoff would be $20. For every dollar the price of IBM
rose above the strike price of $100, the payoff of the call option would
increase by $1. As a result, the slope of the payoff function above the strike
price is positive 1.0 (one dollar increase in payoff for every one dollar
increase in the price of IBM).
If the price of IBM was below the $100 strike price (out of the money) on
the expiration date, we would choose not to exercise the option and it would
expire worthless. In that scenario, the payoff would be zero – although we
would incur a loss on the trade.
It is important not to confuse payoffs and profits. Payoff functions (not
profit and loss functions) should be used to determine the value of options. It
would not matter how much the price of IBM dropped below $100; the call
option would expire worthless and the payoff would still be zero. All options
that are out of the money on the expiration date expire worthless and
therefore have an intrinsic value and payoff of zero. As a result, the slope of
the payoff function below the strike price is zero (zero change in the payoff
function for a one dollar increase in the price of the underlying security).
Figure 1.1: Call Option Payoff Diagram
Note the discrete change in the slope of the payoff function that occurs at
the strike price. The slope of the yellow payoff function is zero when the
price of the underlying stock (IBM) is below the strike price ($100) and the
slope of the payoff function line is plus 1.0 when the price of the stock is
above the strike price. This payoff function is asymmetric and this
asymmetry creates value for the call option.
Just because volatility is expressed in annual terms does not mean that it
cannot be used to calculate expected price changes for other periods.
Volatility is a function of the square root of time. The following formula can
be used to calculate the expected future price of an underlying security under
the simplifying assumptions of a 0% risk-free rate and a 0% dividend yield:
ST = S0 x EXP(N * σ * (TD/252)^0.5)
You will note that the number of trade days (TD) was used in the above
formula, instead of the number of calendar days. All of the formulas in this
book use trade days, as do all of the spreadsheets. The improved precision of
trade days is required to accurately quantify the impact of earnings volatility.
Now let’s use the above formula to forecast a hypothetical negative one
standard deviation price for a $100 stock, 42 trading days in the future,
assuming an annual volatility of 25%.
ST = S0 x EXP(N * σ * (TD/252)^0.5)
ST = 100 x EXP(-1 * 0.25 * (42/252)^0.5)
ST = 100 x EXP(-1 * 0.25 * (0.408248))
ST = 100 x EXP(-0.102062) = 90.29
The resulting price of $90.29 represents a 9.71% decline from the initial
stock price of $100. If we repeat this calculation for a range of time periods
(measured in trade days), we can construct the graph in Figure 1.3, which
depicts the positive and negative one standard deviation percentage price
changes as a function of the number of trading days. The initial price of the
non-dividend paying stock was $100; the assumed risk free interest rate was
0.00% and the annual standard deviation was 25%.
The number of trading days is shown on the independent x-axis and the
percentage price change is shown on the dependent y-axis. The negative one
SD percentage price changes are represented by the dashed red line and the
positive one SD percentage price changes are depicted by the solid green line.
The red circle on the dashed red line represents the percentage price change
for the hypothetical negative one SD move over 42 trade days (approximately
two months).
The ability to forecast expected price changes for a given level of
annualized volatility is a critical element of option trading and is especially
crucial for option earning strategies. It should be one of the main tools in
your option trading toolbox. I use this formula on a daily basis.
Historical Volatility
Realized volatility
As you can see from this example, it does not matter whether we are
talking about volatility or earnings volatility. For every volatility concept,
there is a corresponding earnings volatility counterpart.
However, to exploit anomalies in earnings volatility, we first need the
tools to calculate implied, historical, and realized earnings volatility. The
following chapter will explain the mathematical relationship between implied
volatility, normal volatility, and earnings volatility. This intuitive formula
will lay the groundwork for innovative new spreadsheet tools that will offer
unparalleled insights into option earnings strategies that can be optimized to
provide the highest level of expected returns per unit of risk.
2 – The Aggregate IV Formula
For many years, I avoided trading options on individual stocks and focused
almost exclusively on index and futures options. There were two principal
reasons for my reluctance to trade stock options: 1) I did not feel that I had
any advantage in implementing option strategies on individual stocks and 2) I
did not have the requisite tools to accurately evaluate and model stock option
strategies around earnings announcements.
It frustrated me to know that I was missing out on the profit opportunities
from an entire class of options, so several years ago I researched the subject
further and eventually derived the mathematical formula that precisely
quantifies the behavior of implied volatility (IV) before and after earnings
announcements. This breakthrough provided the market edge that I was
lacking in individual stocks and formed the foundation for the toolset needed
to calculate option pricing and true-risk metrics for stock options that
incorporated earnings effects.
I first introduced the formula in my June 2011 Active Trader article titled
“Modeling Implied Volatility.” The article explained that implied volatility
on individual stocks can be broken down into two components: earnings
volatility and “normal” or non-earnings volatility. The aggregate implied
volatility formula provides a means of correctly combining both components
into a single, precise aggregate implied volatility value that can be used in
conventional option valuation models. Unfortunately, while the aggregate
implied volatility formulas are accurate, the approach I outlined in the Active
Trader article for modeling “normal” volatility was not precise enough to use
for strategy construction purposes.
Over the past few years, I designed a new comprehensive volatility model
that can be used in conjunction with the aggregate implied volatility formula
to simultaneously model both normal and earnings volatility for every option
in a matrix. The comprehensive volatility model and attendant strategy
optimization and analysis tools are included in the Integrated spreadsheet that
accompanies this book.
The aggregate implied volatility formula will be explained fully in this
chapter using hypothetical examples. In addition, several graphs will be used
to help you visualize the mathematical relationships and to provide a more
intuitive understanding of the behavior or implied volatility around earnings
announcements. The remainder of the book will explain how to apply the
formula in practice using real-world strategies with actual market data.
The aggregate implied volatility formula that appears in this chapter is
mathematically equivalent to the original aggregate implied volatility formula
that appeared in the 2011 Active Trader article, but I rearranged a few of the
terms to make the formula more intuitive. In this chapter, I will present three
algebraically equivalent versions of the formula that solve for aggregate
implied volatility, earnings volatility, and normal volatility, respectively.
Finally, I will include numerical examples, for those of you who would like
to verify that you are applying the formula correctly.
For this example, we will assume that the annualized earnings volatility
equals 180% and the annualized normal volatility equals 30%. Why the huge
disparity between earnings volatility and normal volatility? As I explained
earlier, the BSOPM assumes that price changes are continuous, which
implies that the distribution of information that affects stock prices is also
released continuously. This is obviously not the case and one of the most
glaring exceptions is periodic earnings announcements.
Public companies report earnings quarterly. When reporting earnings,
senior corporate executives also conduct conference calls where they disclose
new information about the future prospects of the company in the form of
forward guidance. The release of new financial data and the new insights
gained from forward guidance immediately alter investors’ expectations
regarding future earnings, growth rates, and ultimately value, which can
create large discrete changes in the price of the stock.
In the following calculation examples, we will also assume there is
exactly one (1) earnings trading day and eleven (11) normal trading days
remaining until expiration of the option. Therefore, the option would have a
total of twelve (12) trading days remaining until expiration. We will use the
first and most intuitive version of the formula to solve for the aggregate
implied volatility.
I use the term aggregate implied volatility because it aggregates earnings
volatility and normal volatility into a single implied volatility value.
Aggregate implied volatility is synonymous with implied volatility, which
means that it is directly comparable to the implied volatility calculated by
your broker or research platform and it can be used in conventional option
pricing and risk models, including the BSOPM.
Intuitively, the formula simply asserts that the aggregate implied volatility
is a weighted average of earnings and normal volatility and the respective
weights are proportional to the number of earnings and normal trading days
remaining until expiration of the option. If we know any two of the three
volatility terms, we can solve for the third.
The first section of the formula below calculates the weights and the
second section uses those weights to solve for the aggregate implied
volatility.
IV = ((WE*(VE^2))+(WN)*(VN^2))^0.5
IV = ((8.3333%*(180%^2))+(91.6667%)*(30%^2))^0.5
IV = (35.25%)^0.5
IV = 59.37%
VE = (((IV^2)-(WN*(VN^2)))/WE)^0.5
VE = (((59.37%^2)-(91.6667%*(30%^2)))/8.3333%)^0.5
VE = (324%)^0.5
VE = 180%
VN = (((IV^2)-(WE*(VE^2)))/WN)^0.5
VN = (((59.37%^2)-(8.3333%*(180%^2)))/91.6667%)^0.5
VN = (9%)^0.5
VN = 30%
IV = ((WE*(VE^2))+(WN)*(VN^2))^0.5
The aggregate implied volatility formula was used with the earnings
weights from Figure 2.3 to calculate the aggregate implied volatilities for the
same options from our earlier example (1, 2, 7, 12, 17, 21, 42, 126, 252, and
504 trading days). The results are shown in tabular format in Figure 2.6 and
in graphical format in Figure 2.7. The weights used in the implied volatility
calculations assume one earnings trading day for all options, regardless of the
time remaining until expiration.
In Figure 2.7, the independent x-axis represents the number of trading
days before earnings. The dependent y-axis depicts the aggregate implied
volatilities. The implied volatilities for each option are illustrated by a
different line. The implied volatility lines appear in the same order as the
legend on the right-side of the graph.
It should be no surprise that we see the same pattern in implied volatility
that we observed in the earnings volatility weights approaching the earnings
announcement. The implied volatility of the option with one trading day
remaining after earnings increases from 61.3% ten trading days before
earnings to 180% on the announcement date (Figure 2.6). The increase in
implied volatility can be completely explained by the relative increase in the
earnings volatility weight relative to the normal volatility weight. Why does
the IV equal 180% on the earnings announcement date? Because the earnings
volatility equals 180% and the earnings volatility weight equals 100%. On
the earnings date, there is only one trading day remaining and it is an
earnings trading day by definition. Therefore the implied volatility must be
equal to the earnings volatility for that option.
The implied volatility of the option with two trading days remaining after
earnings increases from 59.4% ten trading days before earnings to 129.0% on
the earnings announcement date. The corresponding implied volatilities for
an option with seven trading days remaining after earnings are only 52.5%%
and 73.5%. The increase in implied volatility over the same ten days is much
more muted for longer-term options. The implied volatility for a two-month
(42 trading days) option increases by only 1.8% (40.6% - 38.8%).
Given the assumption of one earnings trading day for all options, the
earnings volatility weight for all options drops to 0% one day after earnings,
which has a predictable crushing effect on implied volatility. The implied
volatility of the option with two trading days remaining until expiration drops
from 129% on the earnings date to 30% one day later. Why 30%? Because
normal volatility equals 30% and the normal volatility weight equals 100%.
As we discovered with earnings volatility weights, the effect of earnings
volatility on the implied volatility of short-term options is much greater than
the effect on long-term options.
You might find the graph of the implied volatilities in Figure 2.7 even
more intuitive than the table in Figure 2.6. If you are an experienced option
trader, you will recognize this pattern of implied volatility that we see
repeated before and after every quarterly earnings announcement.
The aggregate implied volatility formula can calculate the aggregate
implied volatility of any option, on any underlying security, regardless of the
number of trading days remaining until expiration. It is an extremely
powerful and versatile framework, but we need interactive tools to implement
this approach in practice.
3 – The Basic Spreadsheet
It is now time to move from theory to practice. This chapter provides a step-
by-step explanation of how to use the first of two spreadsheets that
accompany this book: the Basic spreadsheet. I designed the Basic spreadsheet
to be accessible by a wide range of users. To minimize potential
compatibility issues, I did not use macros in this spreadsheet. In addition, the
Basic spreadsheet uses some simplifying assumptions to reduce the amount
of input data required from the user, but still estimates historical and implied
earnings volatility and uses those estimates to forecast future levels of
implied volatility around earnings announcements.
Please be aware that both spreadsheet tools have important limitations.
Unlike $1000 per year option analytical platforms that control and supply all
input data, the user is responsible for entering and verifying all of the input
data in both spreadsheets. While I included some data-validation rules to
prevent obvious input errors, the algorithms in these spreadsheets are
complex and highly sensitive to erroneous data. As a result, inaccurate or
invalid input data will generate misleading volatility estimates and possible
spreadsheet errors.
To eliminate any additional costs for the reader, I designed both
spreadsheets to use the free version of Solver that is included with Microsoft
Excel. Unfortunately, the free version of Solver has significant size and speed
limitations and its solution algorithms are not as sophisticated as those in
commercial optimization packages. I set up the spreadsheet optimization
problems to work as well as practicable with the free version of Solver, but
you may still experience varying degrees of success with Solver on certain
problems. However, you may be able to improve upon your initial results by
rerunning Solver and/or by slightly modifying Solver’s solution parameters.
The purpose of this chapter is to explain how to use the Basic spreadsheet,
not how to construct the Basic spreadsheet or how to perform every
intermediate calculation. If you have an interest in the intermediate
calculations, please review the formulas in the spreadsheet cells. Any
formulas or simplifying assumptions that materially affect volatility estimates
or prospective investment decisions will be explained in detail.
The Basic spreadsheet contains several individual tabs. The tabs will be
referenced by name. References to a cell or groups of cells on a given tab will
use the following column-row format: (A1:A20), which indicates the cells in
Column A from row 1 to row 20, inclusive.
There will be two tabs in the Basic spreadsheet that are very
straightforward and will not be discussed in detail. The first is the “Holidays”
tab, where you will enter the dates of exchange holidays (B3:B24) that will
be used by the day-count algorithms to calculate the number of trading days
throughout the Basic spreadsheet. The other tab that will not be discussed
extensively is the “Saved” tab. It is not used directly in any calculations;
instead, it is provided as a convenient location to copy and paste data from
other tabs that you might want to use again in the future.
As you proceed through this chapter, keep in mind that our goal in using
the Basic spreadsheet is to estimate historical and implied earnings volatility
and to use those estimates to forecast future levels of implied and realized
earnings volatility.
File => Options => Add-Ins => Manage Excel Add-ins => Go
This will bring up the following screen (Figure 3.5), which you can use to
use to enable the Solver Add-in. You may need to browse to find the Solver
Add-in. Please refer to your Excel documentation for further instructions on
managing Add-ins.
The exact button sequence to run Solver may also depend on your version
of Excel. In MS Office 2010, the following sequence will bring up the Solver
problem description associated with the current spreadsheet tab.
VN = (((IV^2)-(WE*(VE^2)))/WN)^0.5
VN = (((105.0%^2)-(50%*(143%^2)))/50%)^0.5
VN = (16.04%)^0.5
VN = 40.05% (I5)
VN = (((IV^2)-(WE*(VE^2)))/WN)^0.5
VN = (((55.4%^2)-(11.1111%*(137.3808%^2)))/88.8889%)^0.5
VN = (10.9362%)^0.5
VN = 33.07% (I6)
All of the tabs in the Basic spreadsheet rely on the simplifying assumption
that all options have only one earnings trading day. The Basic spreadsheet
could be modified to calculate the actual number of earnings days, but I
wanted to keep this spreadsheet as simple as possible. The “EVvsTime” tab
of the Basic spreadsheet uses the aggregate implied volatility formula and
Solver to solve for the implied earnings volatility that minimizes the average
deviation between calculated normal ATM IVs and the average normal ATM
IV. Without knowing the precise shape of the horizontal normal volatility
skew, this is an effective technique for estimating the implied IEV.
The Integrated spreadsheet does calculate the actual number of earnings
days and simultaneously estimates the vertical skew, the horizontal skew, and
the implied earnings volatility. This will eliminate all simplifying
assumptions, which will improve the accuracy of the estimates and greatly
expand our ability to design and optimize strategies. However, this
functionality will come at a cost. The Integrated spreadsheet is significantly
more complex and requires more input data. That is why I provided both the
Basic and Integrated spreadsheets with this book, to ensure the analytical
framework is as accessible and practicable as possible for readers with
varying backgrounds and experience levels.
To summarize, we entered the analysis dates, the earnings date, the
expiration dates, and the at-the-money implied volatilities. Solver did the rest,
solving for the implied earnings volatility on the analysis date, which allowed
us to calculate the implied normal volatilities for each ATM option.
The resulting IEV estimate of 137.4% (C4) represents the market’s
forecast of the UA earnings volatility on the next earnings date (July 23,
2014). In other words, 137.4% was the expected level of implied earnings
volatility embedded in UA’s ATM option prices on July 14, 2014.
We now know the implied normal volatilities for each ATM option and
the implied earnings volatility, which applies to all of the ATM options that
expire after earnings. If we assume that the earnings and normal volatilities
remain constant, we can use the aggregate IV formula to forecast the implied
volatilities for all of the ATM options as they approach the earnings
announcement. To forecast the implied volatilities, the only remaining values
that we need to calculate are the daily volatility weights, which are solely
determined by the number of normal and earnings trading days remaining on
each date. These calculations were explained in detail in Chapter 2.
In the section above, we calculated the volatility weights and the implied
normal volatility (33.07%) for the ATM UA option expiring on 7/26/2014,
which had nine trading days remaining on the analysis date of July 14, 2014.
As calculated earlier, the initial earnings volatility weight was 11.1111% and
the normal volatility weight was 88.8889%. At the close of the last trading
day before the earnings release on July 23, 2014, the earnings and normal
volatility weights were both 50%. On that date, there was exactly one normal
and one earnings day remaining until expiration. As a result, the forecasted
implied volatility was 99.92% (see calculation below).
IV = ((WE*(VE^2))+(WN)*(VN^2))^0.5
IV = ((50%*(137.3808%^2))+(50%)*(33.07%^2))^0.5
IV = (99.8355%)^0.5
IV = 99.92%
We can repeat these calculations for every one of the ATM options, on
every trading day leading up to the earnings announcement. The resulting
implied volatilities for all of the UA ATM options are shown in Figure 3.9.
The independent x-axis shows the analysis date.
Analysis date “1” represents the initial analysis date of July 14, 2014.
Analysis date “8” represents the last trading day before the earnings release:
July 23, 2014. The dependent y-axis corresponds to the annualized implied
volatility. The daily forecasted implied volatilities are shown with separate
lines for all nine ATM UA options. The lines are shown in order of the
shortest-term option to the longest-term option (top to bottom).
As explained previously, the earnings volatility will have the greatest
effect on options that expire shortly after the earnings date. This is due to the
greater weight of the earnings volatility relative to the normal volatility,
which magnifies the impact of the outsized earnings volatility on implied
volatility. If you attempt to replicate the implied volatility calculations,
always remember that the volatility weights are multiplied by the squared
annualized volatilities, not the actual annualized volatilities.
Experienced option traders will immediately recognize the shape of the
implied volatility curves in Figure 3.9. We have all seen the familiar pattern
of implied volatility spikes and crashes that occur like clockwork every
quarter, but we can now forecast those quarterly implied volatility changes in
advance. But how accurate are those forecasts?
The Basic spreadsheet uses some simplifying assumptions and is a crude
tool, but it is still very effective at forecasting the future pattern of implied
volatilities. Figure 3.10 includes a table with the forecasted ATM IVs, the
actual ATM IVs, and the forecast errors for the nine ATM UA options from
the previous example. The ATM UA IV forecasts in the table are for the
close on the last trading day before the release of earnings: July 23, 2014.
The ATM IV forecasts were made using the ATM IV data on the analysis
date (July 14, 2014), seven trading days before the earnings announcement.
Let’s look at an example. The IV forecast for the ATM UA option
expiring on 7/26/14 was 99.9% and the actual ATM IV was 97.6%. The
resulting forecast error was only 2.3%. Given that this forecast was made
seven trading days earlier, when the ATM IV was only 55.4%, this is
remarkably accurate. In fact, this was the largest of the forecast errors. The
next largest error was 1.4%. The root-mean-squared-error (RMSE) was 1.1%,
and the average error was only 0.8%.
The above example was not “cherry-picked” to identify an unusually
accurate forecast. As I explained earlier, the aggregate IV formula is not an
approximation. While the implied earnings volatility and the implied normal
volatilities can obviously change from day to day, the aggregate implied
volatility formula is consistent with option pricing theory and will always
accurately aggregate the two sources of volatility into the correct value of
implied volatility.
Conclusion
The Basic spreadsheet introduced in the last chapter helps us understand and
quantify the effects of earnings volatility more accurately than ever before,
but the Integrated spreadsheet goes much further. The Integrated spreadsheet
includes a comprehensive volatility model that simultaneously integrates and
quantifies every component of real-world volatility, including earnings
volatility. That is what will allow us to calculate the True Greeks.
The Black Scholes Option Pricing Model (BSOPM) was revolutionary
when it was introduced and it is still a remarkable tool, but every one of its
underlying assumptions is violated in practice. To mention a few, price
changes are not continuous, returns are not distributed log-normally, and
volatility is not constant. Furthermore, the formulas for the traditional Greeks
(Delta, Gamma, Vega, Theta, and Rho), which were developed using
stochastic calculus, are derivatives of the BSOPM formula. As a result, the
traditional values of Delta, Gamma, Vega, Theta, and Rho rely on the same
invalid assumptions as the BSOPM, which means that values calculated with
the conventional Greek formulas are biased and are inconsistent with the
actual price behavior of options.
In addition, the conventional Greeks assume that when one variable (like
the price of the underlying stock) changes, all of the other variables (such as
implied volatility) remain constant. That is definitely not the case. Every
change in the price of an underlying security results in a corresponding
change in implied volatility, and that change in implied volatility can be
modeled and predicted with a reasonable degree of accuracy.
The comprehensive volatility model in the Integrated spreadsheet captures
each component of real-world volatility and simultaneously estimates every
volatility parameter required to model the volatility structure of the entire
option matrix. It then uses the aggregate IV formula to accurately combine all
volatility components into a single implied volatility value, which is used to
model and simulate the true behavior of option prices in real-world market
environments. This functionality allows us to discard all of the unrealistic and
limiting BSOPM assumptions and to calculate True Greeks that reflect the
actual behavior of option prices.
For readers who devote the time to understanding and mastering the
Integrated spreadsheet, the payoffs will be significant. The Integrated
spreadsheet will allow you to calculate the relative value of every option in a
matrix and to quantify every component of volatility, including earnings
volatility. The Integrated spreadsheet will combine this information with your
specific volatility and price forecasts to simulate accurate scenario values and
to identify the optimal options earnings strategy. Finally, the Integrated
spreadsheet will provide the True Greeks and expected profit distribution for
your strategy and display the results graphically.
We will begin to explore how to use the Integrated spreadsheet in Chapter
6, but we need to examine the True Greeks now, because we will use them to
evaluate our first option earnings strategy example in the next chapter.
Before we investigate the True Greeks in detail, let’s take a brief step
back and look at the Greeks in general. What are the Greeks and how are they
used? The calculations and derivations of traditional Greeks are based on
stochastic calculus, which is a specialized field of mathematics that is beyond
the grasp of most traders. The resulting Greek formulas are complex and are
not very intuitive, which explains why many option traders have never
attained a working knowledge of the Greeks.
While the traditional Greek formulas and their derivations are complex,
calculation of the True Greeks is much more intuitive. Furthermore,
reviewing the True Greek formulas and the logic behind them should help
many traders better understand how to apply the Greeks in practice.
Interpreting the Greeks and the True Greeks is quite straightforward.
Greeks are nothing more than price sensitivities. The odd names intimidate
many option traders, but the Greeks simply measure the change in one
variable (typically the price of an option), resulting from a specified change
in one of the explanatory variables (such as the price of the underlying
security). Using this working definition, Delta would represent the change in
the price of an option for a one dollar increase in the price of the underlying
security, holding all of the other explanatory variables constant.
So what is an explanatory variable? It is a variable that has a direct causal
effect on the price or value of an option, which means that it must be one of
the input variables in the BSOPM: stock price, strike price, time to
expiration, annualized volatility, and the level of interest rates (if we ignore
the dividend yield).
While the strike price of an option is one of the input variables to the
BSOPM, there are no Greeks associated with a change in the strike price.
Why? Because, the strike price of an existing option does not change.
However, the remaining input variables do change and will affect the value of
an option.
By calculating how much the value of an option will change in response
to a change in each of the input variables, we can systematically quantify the
sources and magnitudes of potential returns, which are also the sources of
risk. This is not a coincidence. Risk and return are always connected; you
cannot have one without the other - except very briefly in rare examples of
pure arbitrage.
The remainder of this chapter is divided into six sections, one dedicated to
each of the following True Greeks: True Delta, True Gamma, True Earnings
Vega, True Normal Vega, True Theta, and True Rho. You will notice that the
traditional Greek Vega has been split into True Earnings Vega and True
Normal Vega. For the first time, the aggregate implied volatility formula
introduced in this book makes it feasible to calculate these new True Greek
values, giving us much more insight into volatility exposure.
Each section in this chapter will briefly define the specific Greek metric
and will explain how and why the True Greek values are calculated? If you
would like a more detailed description of the traditional Greeks (including
graphical examples), please review Chapter 2 of my first book: Option
Strategy Risk / Return Ratios.
True Delta
DT = True Delta
ΔPO+ = Change in Price of Option for + $1 change in Price of Stock
ΔPO- = Change in Price of Option for - $1 change in Price of Stock
ΔPS+ = Positive Change in Price of Stock (+1)
ΔPS- = Negative Change in Price of Stock (-1)
True Gamma
GT = True Gamma
ΔDT+ = Change in True Delta for + $1 change in Price of Stock
(0.6274 - 0.5558)
ΔDT- = Change in True Delta for - $1 change in Price of Stock
(0.4813 – 0.5558)
ΔPS+ = Positive Change in Price of Stock (+1)
ΔPS- = Negative Change in Price of Stock (-1)
Because of cancelling terms, we could also use the actual values of True
Delta in the formula instead of the changes in True Delta. The Integrated
spreadsheet does all of these calculations for you, but I will include the
alternative version of the formula for readers who would like to experiment
further.
The numerator and denominator of the True Greek formulas can all be
modified to use the actual values instead of changes in the actual values. Note
that the values of the numerator and denominator in the alternative version of
the formula did not change, nor did the value of True Gamma.
GT = True Gamma
DT+ = True Delta $1 Above Current Stock Price (0.6274)
DT- = True Delta $1 Below Current Stock Price (0.4813)
PS+ = Stock Price $1 Above Current Stock Price (61.63)
PS- = Stock Price $1 Below Current Stock Price (59.63)
GT = (0.6274 - 0.4813)/(61.63 - 59.63)
GT = (0.1461)/( 2) = 0.0730
The resulting calculation of True Gamma reflects the option price
behavior we observe in actual market environments. The realistic option price
performance is captured by True Delta, which reflects every component of
volatility, including the interaction of volatility with the price of the
underlying security.
In the previous section, we used the True Greek discrete slope calculation
framework in conjunction with the aggregate implied volatility formula to
calculate the True Earnings Vega. We can use the same approach to calculate
the True Normal 30 Vega. I have stated that implied volatility is a function of
earnings and normal volatility, which is true, but it is a slight
oversimplification. Even if we separate out earnings volatility, normal (non-
earnings) volatility is not constant across options in the matrix.
Due to the technical nature of the subject, I will not discuss volatility
modeling in detail here. For those of you who would like more information
on the comprehensive volatility model used in the Integrated spreadsheet, we
will review the volatility model more fully in Chapter 7.
Briefly, normal volatility is a function of the vertical and horizontal skews
and it also responds to changes in the price of the underlying stock. The
vertical skew captures the relationship between normal implied volatility and
option strike prices, which were typically listed vertically in financial
newspapers.
The horizontal skew captures the relationship between normal implied
volatility and option expiration dates, which were typically listed horizontally
in financial newspapers. The cause and effect relationship between the price
of the underlying security and the at-the-money (ATM) normal implied
volatility is also important and must be included in any volatility model.
The comprehensive volatility model in the Integrated spreadsheet uses the
entire option matrix to estimate all of the required volatility parameters and
applies them when calculating the True Greeks. The volatility model is
particularly important to the calculation of the True Normal 30 Vega.
Why is it called the True Normal 30 Vega (TN30 Vega)? At this point,
“True,” “Normal,” and “Vega” may be self-explanatory. It is a “True” Greek
because it quantifies the actual price behavior of options and is not limited by
the artificial BSOPM assumptions. “Normal Vega” means that it calculates
the sensitivity to a 1% change in normal implied volatility.
So what does the number 30 signify? The number 30 represents thirty
days or one month until expiration. The BSOPM assumes that changes in
implied volatility are constant across all options. We already know that this is
not true because of earnings volatility, but it is not even true for normal
volatility.
In practice, normal volatilities are mean-reverting. In other words,
extremely low and extremely high levels of normal volatility eventually
revert to a more typical or average level of normal volatility. This is true for
practically all securities across all markets. Due to mean reversion, the
normal implied volatilities of short-term options change more than the
normal implied volatilities of longer-term options. This is true regardless of
the initial shape of the horizontal skew curve: positively sloped, flat, or
inverted.
As a result, instead of being constrained by the limitations of traditional
Vega, we do not need to assume that all normal implied volatilities change by
the same amount when calculating the True Normal 30 Vega. Instead, we can
assume a 1% change in the normal implied volatility for a one-month option,
and model the estimated changes in implied volatility for all other options as
a function of their time remaining until expiration.
I created such a model using daily implied volatility data for a range of
expiration dates, across a broad spectrum of diverse securities. The
underlying securities included stocks, ETFs, commodities, currencies, bonds,
and indices. The results from the model are depicted in Figure 4.5.
Figure 4.5 graphically depicts the normal at-the-money (ATM) implied
volatility (IV) multiplier versus the time remaining until option expiration.
The independent x-axis represents the time remaining until option expiration
(in years) and the dependent y-axis shows the ATM IV multiplier. The green
square, purple diamond, red triangle, and blue circle highlight the x and y
coordinates for option expirations of one week, one month, six months, and
one year, respectively. The blue line depicts the continuous, non-linear ATM
IV function for expiration dates ranging from one week to two years.
The key reference point in the diagram is the one-month option expiration
(0.0833. 1.0000). The 0.0833 represents 1/12th of a year and the 1.0 signifies
an ATM IV multiplier of 1.0. The multiplier tells us how much the ATM IV
of the option will change for a 1% change in the ATM IV of a 30 day or one-
month option. In that context, the multiplier for a one-month option must be
1.0 by definition.
The one-week option is represented by the green square with a time to
expiration of 0.0198 years (5 trading days/252 trading days). The multiplier
of 1.5697 indicates that for a 1% change in the ATM IV of the 30-day option,
the ATM IV of the one-week option will change by 1.5697%. As stated
earlier, the implied volatilities of short-term options are much more volatile
than the implied volatilities of longer-term options and that is evidenced by
the large ATM IV multiplier for a one-week option.
Based on that premise, we should expect the ATM IV multipliers of
options with expiration dates longer than one month to be less than 1.0 and
that is exactly the case. The ATM IV multipliers for the six-month and one-
year options are 0.2406 and 0.2194, respectively. For a 1% change in the
ATM IV of a 30-day option, the ATM IV of the six-month and one-year
option will only change by 0.2406% and 0.2194%, respectively.
The formula for the ATM IV multiplier is provided below in Excel
format.
Multiplier = 1.0+(-0.780854818)*(1-EXP(-8.629216*(TTE-1/12)))
True Theta
TT = True Theta
PO0 = Original Price of Option
PO- = Price of Option for one trading day decrease in time to
expiration
ΔPO- = Change in Price of Option for one trading day decrease in
time to expiration
True Rho
RT = True R
RF = Risk Free Interest Rate
ΔPO+ = Change in Price of Option for + 0.1% change in RF
ΔPO- = Change in Price of Option for – 0.1% change in RF
%ΔRF+ = Positive Percentage Change in IEV (+0.1)
%ΔRF- = Negative Percentage Change in IEV (-0.1)
The value True Rho for the UA call option in our example is $0.008726
per share, or $0.8726 per contract. The value of True Rho is very small due to
the short time to expiration for the UA call option. The impact of a 1%
change in the annual risk-free interest rate would have a minimal impact on
an at-the-money option with only eight trading days remaining until
expiration. As is the case for all of the True Greeks, the True Rho calculation
incorporates the aggregate IV formula and the comprehensive volatility
model.
Conclusion
Even under normal conditions, the traditional BSOPM Greek values are
biased and are inconsistent with actual option price behavior. Earnings
announcements magnify these systematic biases and demonstrate the
importance of using the aggregate IV formula and the True Greeks to manage
risk and to design option strategies.
5 – UA Earnings Strategy
In this chapter, we will look at the potential payoff from using the tools from
this book to identify the option earnings strategy that offers the highest
expected return per unit of risk. We will use actual market data for Under
Armor (UA) on July 23, 2014 to ensure the trade example is as realistic as
possible.
The UA strategy example will display results from both the Basic and
Integrated spreadsheets. We covered the Basic spreadsheet in Chapter 3 and
we will explore the Integrated spreadsheet in the next few chapters. As a
result, our discussion of the Integrated spreadsheet tools in this chapter will
be limited to explanations of the screenshots used to illustrate the UA trade.
Trading Edge
Screening Tools
UA Directional Confirmation
We have established that UA’s IEV was understated on July 23, 2014 and
that there had been a persistent positive or bullish directional bias over the
previous three years of earnings events. Before we design an option earnings
strategy for UA, let’s attempt to independently confirm the bullish directional
forecast for the July 24, 2014 UA earnings announcement.
Analyzing the 1-day returns from past earnings announcements is the
most direct approach to quantifying directional bias, but we can also evaluate
earnings per share (EPS) and revenue forecasts. Stocks that beat their
consensus EPS and revenue forecasts are more likely to increase in price. If
we determine that UA was likely to beat its earnings and revenue
expectations on July 24, 2014, then that would support our case for a bullish
UA directional forecast.
Consensus revenue and EPS forecasts are widely available, but these
forecasts will not help us identify candidates that are likely to beat the
consensus. We need another data source that offers insights that go beyond
the consensus forecasts.
Estimize.com is a free (as I write this) online crowd-sourced platform that
aggregates EPS and revenue forecasts from investment professionals,
research analysts, statisticians, professors, individual traders, and even
finance students. If you are not familiar with the research on the “wisdom of
crowds,” then you would probably be surprised that aggregate estimates from
such a wide range of individuals could offer predictive value over Wall
Street’s consensus forecasts, but that is exactly the case.
Research studies have demonstrated that aggregate EPS and revenue
forecasts from the Estimize community are more accurate than those from
sell-side analysts and that it is possible to exploit these differences to generate
excess returns.
Estimize enhances their aggregate estimates by weighting each
community member’s forecast based on the analyst’s demonstrated accuracy
for that specific company. It is also possible to review the forecast for each
analyst and to rank the forecasts in order of the analyst’s historical accuracy.
Given this data, you could even develop your own EPS and revenue
aggregation model. The Estimize EPS and revenue forecasts are exactly what
we need to independently confirm our directional forecast.
The Estimize UA EPS and Revenue table from fiscal Q4 2012 through
fiscal Q2 2014 is provided in Figure 5.7 (with permission from Estimize). We
are interested in the fiscal Q2 2014 earnings data, which is located in the
column on the far right side of the table. Estimize does not offer
OptionSlam’s backtesting feature, so I have whited-out the actual EPS and
revenue data for the quarter.
As you can see from the table, the UA Estimize EPS estimate of $0.09 per
share exceeds the Wall Street consensus estimate of $0.08 per share. The
difference is not large, but the direction is consistent with the bullish
historical earnings return bias.
The difference between the UA Estimize revenue estimate and the Wall
Street revenue forecast is more significant. The Estimize aggregate estimate
of $595.40 million exceeds the Wall Street revenue forecast of $572.54
million by almost 4%. The Estimize EPS and revenue estimates both add
support for our bullish directional return forecast.
The ability to evaluate the actual numerical values for EPS and revenue in
a table is critical, but it is often easier to identify patterns in data visually.
Figure 5.8 is a graph of the UA EPS data from fiscal Q4 2012 through fiscal
Q4 2014. I apologize if the chart is difficult to read, but it is a screen-capture
and I had limited control over the image. Fortunately, it is easy to read online,
but less so when reproduced. The solid green line represents the actual EPS
data, the light-blue dashed line illustrates the EPS estimate, and the dark-gray
dashed line depicts the Wall Street EPS estimate. The fiscal Q2 2014
observation is third from the right.
We are interested in evaluating fiscal Q2 2014 for UA, but in this case, I
did not white-out the most recent data. We already know from the table in
Figure 5.7 that the EPS and revenue estimates for Estimize supported our
bullish UA directional forecast for Q2 2014. This is more difficult to see in
the chart due to the small difference between the Estimize and Wall Street
EPS estimates.
The reason that I included the entire EPS history in the chart is because
there is a very prominent pattern in the data. Do you see it? Take a minute to
study the UA EPS chart in Figure 5.8.
Do you see the cyclical pattern in the data? UA is a retailer and retail is a
very seasonal business. The fiscal Q3 and Q4 EPS data is consistently higher
than the fiscal Q1 and Q2 data. This is not a random event. I emphasize this
point because it illustrates the potential for creating more sophisticated
directional earnings return forecasts that incorporate seasonal patterns.
Building a multi-variable directional earnings forecasting model is beyond
the scope of this book, but it is an exciting future research avenue that could
further expand your trading edge.
You can see from the EPS chart in Figure 5.8 that prior to fiscal Q2 2014,
UA had regularly beaten both Wall Street’s and Estimize’s EPS estimates. In
addition, Estimize’s estimates had been consistently more accurate than Wall
Street’s consensus forecasts.
Figure 5.9 is a graph of the UA revenue data from fiscal Q4 2012 through
fiscal Q4 2014. The solid green line represents the actual EPS data, the light-
blue dashed line illustrates the EPS estimate, and the dark-gray dashed line
depicts the Wall Street EPS estimate. The fiscal Q2 2014 observation is third
from the right.
You will notice the same seasonal pattern in revenue that we saw in EPS.
In addition, note that in late 2013 and early 2014, UA’s actual revenues were
significantly higher than consensus revenue forecasts. Estimize’s revenue
forecast for fiscal Q2 2014 was significantly higher than the Wall Street
consensus and analysts had been consistently underestimating UA’s revenues
for several consecutive quarters. Both of these factors further strengthened
the bullish case for UA’s earnings announcement on July 24, 2014.
Scenario Assumptions
You will recall that the volatility model is used to identify the relative
overvaluation or undervaluation of every option in the matrix. The optimizer
will attempt to implement a strategy that exploits our volatility and
directional forecasts by buying undervalued options and selling overvalued
options. The “Percent UV/OV Correction” (C17) represents the amount of
undervaluation or overvaluation correction that occurs during the simulation
period.
For example, if an option is undervalued (cheap) by $0.20 and the
specified UV/OV correction was 100%, then the same option would be fairly
priced at the end of the simulation period. In other words, 100% of the initial
undervaluation would be realized. Similarly, if the specified UV/OV
correction was only 25%, then the same option would be undervalued by
$0.15 at the end of the simulation period; 25% of the undervaluation would
be realized ((0.20-0.15)/0.20).
This input variable gives the user a tremendous amount of control over
the simulation and optimization. When the holding period includes an
earnings event, a higher “Percent UV/OV Correction” would be justified. I
used 100% in the UA strategy example (C17).
Earnings volatility is arguably the greatest contributor to option pricing
anomalies. In addition, large price changes often occur following earnings
events, which forces market participants to take a fresh look at option values
across the entire matrix. As a result, assuming that 100% of the pre-earnings
option pricing anomalies are eliminated after earnings is not unreasonable. If
you prefer a more conservative assumption, I would suggest a value between
50% and 100%.
Conversely, if the holding period does not include an earnings event, then
the “Percent OV/UV Correction” should be much smaller, especially if the
holding period is short. When the holding period does not include an earnings
event, a value of 0% - 25% would be more appropriate.
Volatility Assumptions
Input cell (C16) represents the change in the 30-day at-the-money (ATM)
normal implied volatility (IV) of UA options in response to a 1% increase in
the price of the UA stock. The input value of negative 0.15 indicates that the
ATM IV will decrease by 0.15% per 1% increase in the price of the UA. For
example, if the UA ATM IV was 48% and the UA stock increased by 1%, the
UA ATM IV would decline to 47.85%. When scenario inputs are required,
the Integrated spreadsheet typically provides reference values to assist in the
development of the scenario forecast. In this case, the historical ATM
IV/price sensitivity was -0.26% (D16). This value is calculated elsewhere in
the spreadsheet. I reduced the magnitude of the forecast to -0.15% due to a
recent divergence from the historical value (not shown). We will explore this
concept more fully in the next few chapters.
The scenario assumptions also allow the user to specify a change in the
normal implied volatility for 30-day ATM options (F16). We do not have any
justification to forecast a change in the UA normal ATM IV for 30-day
options, but if we did, we would enter it here. The volatility model would use
the vertical and horizontal skew and the aggregate IV formula to calculate the
resulting IV changes for each option in the matrix.
Now it is time to enter our earnings volatility forecasts. The Integrated
spreadsheet calculated the historical earnings volatility of 136.76% (F19)
over the twelve previous earnings events, which was also calculated in the
Basic spreadsheet (Figure 5.4). Earlier in this chapter, we noted the dramatic
increase in historical earnings volatility from 136.76% over twelve events, to
168.18% over six events, to 200.98% over four events. Given the recent trend
in earnings volatility, I entered 152% (C19) as a conservative estimate of the
realized annualized earnings volatility, which was between the twelve quarter
earnings volatility (136.76%) and the six quarter earnings volatility
(168.18%).
The integrated spreadsheet also calculated an implied earnings volatility
of 137.2% (E19) using the comprehensive volatility model, which was
estimated using every option in the UA matrix. In addition to entering the
realized earnings volatility above, the Integrated spreadsheet also allows the
user to enter a new value for the implied earnings volatility (D19).
The realized earnings volatility affects the variability of the UA scenario
price changes over our one-day holding period, which will include the effects
of the earnings announcement. A user-specified change in implied earnings
volatility would affect the valuation of options that include multiple earnings
events (those with expiration dates beyond three months). The July 23, 2014
IEV of 137.2% was consistent with historical IEV values, so I used the value
of 137.2% in the scenario analysis.
Directional Assumptions
Transaction Costs
Let’s ignore Row 21 of the Integrated spreadsheet for now and turn to
transaction costs, which have a major impact on the performance of all option
strategies. The Integrated spreadsheet allows the user to enter two variables
for transaction costs. The first value titled “Spread Slippage” represents the
difference between the purchase and sales prices relative to the mid-price of a
spread.
What is a spread? A spread is the simultaneous purchase and sale of two
options of the same type. In other words, a call spread involves buying one
call option and selling a second call option with a different expiration date,
strike price, or both. The optimization solutions will include some
combination of call spreads, put spreads, and straddles or strangles.
I have specified a Spread Slippage of negative $0.10 per spread, per
share, per contract (C25). If the mid-point of the spread was $1.25, a spread
slippage of negative $0.10 means that we would purchase the spread for
$1.35 and sell the spread for $1.15, which would result in a round-trip
transaction cost of negative $0.20 per spread. The resulting round trip
transaction cost of negative $0.20 would be multiplied by the number of
spread contracts and by the number of shares per contract.
For example, our optimal UA strategy will require 62 spread contracts. To
find the transaction costs resulting from slippage, we would multiply 62
spread contracts by 100 shares per contract, by negative $0.20. The total
round-trip transaction cost due to slippage would be negative $1,240.
Please note that the negative $0.10 spread slippage does not reflect the
quoted bid and ask prices for UA options, which would probably be much
wider than plus or minus $0.10 from the mid-price. As a rule, options should
never be sold at the quoted bid price or purchased at the quoted ask price.
Instead, limit orders should be used to execute option transactions near the
mid-point between the bid and ask prices.
In addition to spread slippage, the Integrated spreadsheet allows the user
to specify a second type of transaction cost: a per contract brokerage
commission. I have assumed a per contract commission of negative $0.75
(D25) per contract. The transaction cost calculation assumes that the negative
$0.75 per contract cost applies to both purchases and sales on every contract,
not on every spread.
The 62 spreads would include a total of 124 contracts. If we incurred a
transaction cost of negative $0.75 per contract purchased and negative $0.75
per contract sold, the total commission cost on 124 contracts (62 spreads)
would equal negative $186.00. When combined with the spread slippage
calculated above, the total round-trip transaction cost for the optimal UA
strategy would be negative $1,426.
For a strategy that only requires approximately $10,000 in total capital, a
round-trip transaction cost of negative $1,426 has a major impact on the
performance of the strategy. That is why it is expressly included in the
scenario analysis and optimization process.
Optimal UA Solution
P&L Graph
Even for an experienced option trader, the ability to fully appreciate the
nature of a strategy by mentally combining the three spreads would be very
difficult. That is why we use profit and loss diagrams, which are common to
all option analytical platforms. Figure 5.12 is a profit and loss (P&L) diagram
for the optimal strategy described in Figure 5.11. You are probably familiar
with P&L functions, but the P&L function in figure 5.12 is quite different.
The scenario values accurately incorporate the effects of earnings volatility
and normal volatility for every option in the matrix, as do the True Greeks.
The independent x-axis represents the UA stock price in dollars. The
dependent y-axis on the left side of the diagram denotes the profit and loss of
the optimal strategy for three different dates.
The solid green upper “P&L 0” represents the P&L at time zero, or the
instantaneous profit and loss of the strategy. The solid purple lower “P&L U”
line represents the P&L on the future date specified by the User, which is the
date used to optimize the strategy. In this example, the User date was one
trading day into the future, or July 24, 2014. The solid black lower “P&L X”
line represents the P&L on a second future date specified by the User, which
is intended to be the expiration date of the option with the shortest-term
option.
In this example, the “X” date was two trading days into the future, or July
25, 2014. Given that the “U” and “X” dates are only separated by one day,
the lower lines overlap and only appear as a single solid (lower) black line in
Figure 5.12.
The “U” and “X” probabilities are shown by the faded dashed lines and
correspond to the values on the dependent y-axis on the right side of the
diagram.
In addition to the P&L graph, I have included summary statistics for the
optimal strategy at the top of the diagram.
Let’s examine Figure 5.12 and see what we can learn about the strategy.
The optimizer always uses the User date, so let’s initially focus our attention
on the lower P&L line. My first observation was that virtually the entire P&L
line was above the break-even or zero profit line. The price of UA before
earnings on July 23, 2014 was $60.63.
The optimal strategy would have only underperformed over a very small
range of UA prices, centered slightly below the current price. Given that the
P&L line included round-trip transaction costs of negative $1,426, the
strategy performance was remarkable. This demonstrates the potential power
of selling overvalued options and buying undervalued options.
The shape of the P&L function was convex or curved upwards, indicating
the strategy would have performed well for large moves up or down in the
price of UA. You will recall that Gamma measures the curvature of the
option price function, so based on the shape of the diagram, we would expect
the optimal strategy to have positive Gamma and it does. The True Gamma
was +132.3 and the traditional Black-Scholes (BS) Gamma was +97.2.
The probability function was centered above the UA price of $60.63,
which reflects our bullish expected return of 2% (Figure 5.10, cell C21). The
width or dispersion of the probability curves is a function of the UA normal
and earnings volatility.
What explains the difference between the upper “P&L 0” line and the
lower “P&L U” and “P&L X” lines? The difference is quite large, especially
near the current UA price. The positive value of Gamma means that the
strategy must have had a negative Theta. The True Theta was negative
$1,415.5, which fully reflected the volatility crush due to passing the UA
earnings date. It is interesting to note that the Black-Scholes (BS) Theta was
only negative $74.70, which grossly understated the true cost of the strategy
due to the passage of time.
The True Delta was +$24.8 which reflected a small bullish bias, but the
BS Delta was actually negative (-$53.6), again misrepresenting the true risk
of the strategy. The strategy had a positive True Normal 30 Vega (+$ 19.10)
and a positive True Earnings Vega (+$19.3), which is consistent with our
forecast of a higher than expected level of earnings volatility.
As stated above, the total transaction costs were negative $1,426. The
expected profit (net of transaction costs) was $1,482 and the maximum loss
(net of transaction costs) was negative $137. The objective function, which is
what the optimizer was attempting to maximize, was the expected profit
($1,482) divided by the absolute value of the maximum loss ($137).
The resulting value of the objective function for the optimal strategy was
an astounding 10.78, which means the probability-weighted expected profit
from the strategy was 10.78 times the maximum loss. The objective function
value of 10.78 represents the expected profit per unit or dollar of risk. In this
case, risk was defined as the maximum loss (net of transaction costs) of the
strategy in any of the discrete scenarios ($137).
So does that mean that the optimal strategy could not have lost more than
$137 over the one-day holding period? No, unfortunately the strategy could
have lost more than $137. It is important to remember that the profits and
losses for each of the 100 probability-weighted scenarios were based on our
input assumptions.
For example, we assumed that 100% of the undervaluation or
overvaluation would correct or be eliminated during the one-day holding
period. We also assumed that normal implied volatility and implied earnings
volatility values would not change.
All of our input assumptions will affect the profits and losses of each of
the discrete scenarios. Fortunately, we have complete control over these input
values and we can use the Integrated spreadsheet interactively to examine the
sensitivity of the solution to each input assumption. The more you use the
spreadsheets, the more you will learn about your strategies.
Confirmation
This is the first of three chapters that will provide step-by-step instructions on
how to use the second of two spreadsheets that accompany this book: the
Integrated spreadsheet. Unlike the Basic Spreadsheet, the Integrated
spreadsheet uses macros and requires a more recent version of Microsoft
Excel to function properly. As was the case with the Basic spreadsheet, the
Integrated spreadsheet is populated with data for Under Armor (UA) as of
July 23, 2014.
The purpose of the next three chapters is to explain how to use the
Integrated spreadsheet, not how to construct the Integrated spreadsheet or
how to perform every intermediate calculation. If you have an interest in the
intermediate calculations, please review the formulas in the spreadsheet cells.
There are two tabs that are used in both the Integrated and Basic
spreadsheets that are very straightforward and will not be discussed in detail.
The first is the “Holidays” tab (not shown), where you will enter the dates of
exchange holidays (B3:B24) that will be used by the day-count algorithms to
calculate the number of trading days throughout the Integrated spreadsheet.
The other self-explanatory tab that will not be discussed is the “Saved”
tab (not shown). It is not used directly in any calculations; instead, it is
provided as a convenient location to copy and paste data from other tabs that
you might want to use again in the future. This will save you a great deal of
time if you continue to evaluate the same stocks quarter after quarter.
There is a third tab that is included in both the Basic and Integrated
spreadsheets (the “HistoricalEV” tab), but it was already discussed
extensively in Chapter 3. As a result, we will not repeat that explanation in
this chapter. However, please be aware that the row and column numbers in
the “HistoricalEV” tab are slightly different in the two spreadsheets, but the
functionality is the same.
As you read the next three chapters, keep in mind that the goal of the
Integrated spreadsheet is to provide a practical tool that will help you exploit
volatility, directional, and relative value anomalies to develop, optimize, and
evaluate option earnings strategies in real-world environments. Before we
delve into the minutia of the Integrated spreadsheet, I would like to provide
an overview that should help you put the individual steps in the proper
context.
Overview
After clearing the data, the next step is to copy and paste the daily
historical price and volatility data from your data source into the appropriate
cells of the “IVPrice” tab. Your broker may be able to supply this data and it
is available from a number of third-party data vendors, including OptionVue.
Figure 6.2 only shows the first few rows of price and IV data from the IV
price tab, but thousands of rows are available to store many years of
historical data. As is the case throughout the Basic and Integrated
spreadsheets, the blue shaded backgrounds with white text indicate input
cells. The input data begins in row three. The historical pricing dates are
entered in Column O and the adjusted closing prices for UA are entered in
Column P.
What are adjusted prices? Proportional adjustments should always be
made when analyzing historical prices, which will eliminate discrete price
changes due to dividends and splits. These large discrete price jumps would
create large undesirable and unrealistic changes in the ATM IV/price
sensitivities. In addition, please ensure that you correct any data errors and
missing data points. The spreadsheet will not do this for you.
The historical IV dates are entered in Column R and the 30-day ATM
normal IVs for UA are entered in Column S. If you do not have access to
normal IVs, then use implied volatilities. However, the IV values should
always be derived from one-month at-the-money (ATM) options. The
volatility model will automatically calculate the resulting normal IV changes
for all of the options in the matrix based on the estimated horizontal and
vertical skew parameters.
The price and IV dates do not need to line up in the spreadsheet. As
described above, Excel’s lookup function will align the data correctly.
There are two additional user inputs required (Figure 6.3) to calculate the
ATM IV/price sensitivities. The first value (D1) represents the number of
trading days used to calculate the change in IV and the change in price. The
second input value (G1) represents the number of observations used to
calculate the ATM IV/price sensitivity or slope. I recommend using 22 for
both values, regardless of your holding period.
Calculating price and IV changes over 22 trading days (roughly one
calendar month) results in significant changes, which is useful when
estimating an ATM IV/price sensitivity that will be applied to pricing
scenarios that span a wide range of prices. Using 22 observations to calculate
the slope eliminates some of the day-to-day variability that would result from
using fewer observations.
Many of the cells in Figure 6.3 are intermediate calculations and therefore
do not require further explanation. However, there are a few values that are
relevant. The most important is the average slope of -0.263% (I1), which
represents the average slope calculation for UA over the entire price and IV
history. We saw this value earlier when we designed the option earnings
strategy for UA in Chapter 5. You will recall that this value was provided on
the “Specs” tab (Figure 5.10 cell D16) to give us a reference point when
entering our own ATM IV/price sensitivity assumption.
In addition to the average ATM IV/price sensitivity -0.263% (I1), the
ATM IV/price sensitivity is also calculated for every pricing date in the
spreadsheet and the daily values are provided in Column G. The ATM
IV/price sensitivity for UA on our analysis date of July 23, 2014 was
+0.214% (not shown), which was quite different from the historical average
of -0.263%. I entered an assumed ATM IV/price sensitivity of -0.15%
(Figure 5.1 cell C16) when we designed the UA strategy in Chapter 5. The
value of -0.15% was closer to the historical average of -0.263%, but shaded
slightly higher to acknowledge the ATM IV/price sensitivity of +0.214% on
July 23, 2014.
There are two more relevant values in Figure 6.3. The minimum (A1) and
maximum (B1) UA returns over any 22-day (D1) period are also provided on
the “IVPrice tab” and again on the “Specs” tab (Figure 5.10 Cells E23:F23).
These values will be useful when setting the range of return values where the
ATM IV/price sensitivity will apply (Figure 5.10 Cells C23:D23). To avoid
unusual implied volatility forecasts (or negative IV values), I always ensure
that my specified range is well inside the historical return values. For the UA
analysis, I entered a return range of plus and minus 30% (Figure 5.10 Cells
C23:D23). We will revisit these assumptions again in the next chapter.
Dates
The next step in using the Integrated spreadsheet is to enter the required
dates. All of these dates are entered in the “Specs” tab (Figure 6.4). The first
is the “Analysis Date” of July 23, 2014 (H2), which is also the pricing date.
The spreadsheet assumes closing prices and does not calculate fractional
days, although this is something that could be implemented in the future and
would be particularly beneficial when evaluating short-term options.
The “1st User Date” is the date used for optimization purposes. For UA, I
specified a User date of July 24, 2014 (H4). As was the case above, closing
prices are assumed, which means the holding period for the UA optimization
was one trading day.
The “2nd User Date” was designed to represent the date of the earliest
option expiration. It is important to note that the optimizer will not buy or sell
any options that expire before the first or second “User Dates.” Since we do
not yet know which options will be included in the optimal strategy, I
recommend entering a “2nd User Date” equal to the “1st User Date” or equal
to the first option expiration after that date.
In the UA example, the “2nd User Date” was July 25, 2014 (H5), which
corresponds to the expiration date of the first weekly option series. After
solving for the optimal strategy, you could always return to the “Specs” tab
and enter a different “2nd User Date.” As long as the “2nd User Date” falls on
or after the option expiration date of the nearest-term option used in the
optimal strategy, changing the date will not affect the optimization result.
Both “User Dates” should obviously occur after the “Analysis Date.”
In addition to the “Analysis Date” and “User Dates” on the “Specs” tab,
we also need to enter the date of the first earnings announcement (July 23,
2014 in Cell H7) and the first dividend date (August 7, 2014 – H16) that fall
after the “Analysis Date.” It is extremely important to note that the earnings
announcement date must correspond to the date of the close immediately
preceding the next earnings announcement, not the date of the actual
earnings announcement. In this case, the UA earnings were scheduled to be
released before the open on July 24, 2014. However, if you entered an
earnings date of July 24, 2014, the Integrated spreadsheet would assume the
earnings announcement occurs after the close on July 24, 2014. As a result,
you must always enter the date of the close immediately preceding the next
earnings announcement.
As of July 23, 2014, UA did not pay dividends, so the first ex-dividend
date of August 7, 2014 (H16) was arbitrary and has no effect on the analysis.
The next earnings date (H7) and next dividend date (H16) are entered on the
“Specs” tab.
The Integrated spreadsheet assumes that earnings will be announced
quarterly and will automatically populate the subsequent seven quarterly
earnings announcement dates. The Integrated spreadsheet will use these dates
to determine the number of earnings trading days for each option in the
matrix. Unlike the Basic spreadsheet, the Integrated spreadsheet calculates
the actual number of earnings trading days for every option.
The Integrated spreadsheet also populates the dates for the subsequent
seven ex-dividend dates. These dates are calculated based on the number of
dividend payments per year (4), as specified in Cell D2 of the “Specs” tab,
which is the first of the General Specs we will discuss (Figure 6.6).
General Specs
Another General Spec is the annual dividend yield (0%), which is entered
in Cell F2. As mentioned above, UA did not pay dividends, so the annual
dividend yield was 0%. If a company does pay dividends, those future
dividends will affect the value of the company’s options. When a stock
passes its ex-dividend date, the price of the stock declines and this effect
must be included when modeling option prices and implied volatilities.
Three additional General Specs are included in Figure 6.6: the annual
risk-free interest rate, the option multiplier, and the American option flag.
The risk free interest rate (0.25%) is entered in Cell C3 and is used in option
valuation and risk analysis. The option multiplier (100) is entered in Cell C5
and is important in the calculation of the True Greeks and scenario values. In
the case of UA, the American flag (Y) is entered in Cell E5, which signifies
that (Yes) UA options may be exercised prior to expiration. A discrete
binomial lattice that models optimal exercise at each node is required to
accurately value American options.
Due to the use of Normal and Earnings volatility, which are not constant,
the resulting binomial lattice will not recombine, which makes this solution
method impractical. The number of nodes in a non-recombining binomial
lattice increases exponentially. However, the American flag does impose
some crude boundary conditions during the option valuation process.
Please note that many of the user input values in Figure 6.6 will not
change when you evaluate different stocks. Most companies pay dividends
quarterly, the risk free interest rate is not company specific, the standard
option multiplier is 100, and most stock options are American. All of the
remaining values in the table will be calculated automatically.
Estimation Filter Specs
We are almost ready to import the file, but we still need to specify two
sets of filters (Figure 6.7). The minimum and maximum values for the first
set of filters (C7:D14) will determine which options will be included when
solving for the volatility parameters.
The maximum number of trading days until expiration is the only user
input required in the second set of filters (F9). The minimum number of
trading days remaining until expiration will also be used as a candidate filter,
but this value will be determined by the second “User Date” we entered
earlier (Figure 6.4 Cell H5). As I mentioned at that time, the optimizer will
only consider options that expire on or after the “User Dates.”
The two sets of filters serve two very different purposes. The objective in
specifying the filters that will determine the options used in volatility
modeling is to be as inclusive as possible, while preemptively avoiding
potential pricing errors that could compromise the integrity of the volatility
model. By definition, any options excluded from the volatility estimation
would not be available as strategy candidates either.
Let’s review the filters used in the UA analysis on July 23, 2014 (Figure
6.7). Columns C and D represent the minimum and maximum acceptable
filter values for the volatility estimation. I have specified a minimum option
price of $0.20 (C7). Low priced options are typically either very short-term,
out of the money, or both. In such cases, large changes in implied volatility
are required to affect the option values. If these options were mispriced, even
by seemingly insignificant amounts, the resulting implied volatility errors
would be very large, which would compromise the accuracy of our volatility
model parameters.
Notice that the maximum filter for the option price is grayed out (D7),
which means that it is not applicable and should not be used during the
filtering process. This will be true for several of the filter rules. Remember
that user input cells are always shown with a blue shaded background with
white text.
I have entered two days as the minimum number of trading days (C8) and
504 as the maximum number of trading days (D9) remaining until expiration
for the estimation filters. To ensure an accurate volatility model, leaps should
be included. I probably could have excluded the maximum number of trading
days filter entirely. Unless long-term options are systematically and
dramatically mispriced, they should be included in the volatility estimation.
I included liquidity filters for minimum volume (C10) and minimum open
interest (C11), but both have zero values and I typically do not recommend
filtering on volume or open interest. Even options with zero open interest or
volume can be quite liquid. Liquidity is more a function of the total option
volume and total open interest than a function of the volume or open interest
of an individual option in the matrix. Obviously it would not make sense to
apply maximum volume and open interest filters and these values are grayed
out.
I entered the minimum and maximum Call Delta (per contract) filters of
+4.0 (C12) and +96.0 (D12) respectively. The rationale for these filters is
similar to the argument used for the minimum option price. Given an option
multiplier of 100, the minimum and maximum possible Call Deltas (per
contract) are zero and 100.
By excluding call options with very high or very low Deltas, we eliminate
options that are extremely in or out of the money, both of which are impacted
little by changes in implied volatility. As a result, if these options were
mispriced, the resulting implied volatility errors would be very large, which
would compromise the accuracy of our volatility model parameters.
The same argument applies to extreme Put Deltas. Put Deltas are
obviously negative and I have filtered out put options with (per contract)
Deltas lower than -96.0 (C13) or higher than -4.0 (D13). Finally, I have
limited the maximum estimation skew (the vertical skew coefficient) to a
value of 1.0 (D14). I will not explore this value here, other than to state that
capping the maximum vertical skew coefficient avoids extreme and unusual
volatility skew solutions and this value should not be modified. The vertical
skew coefficient will be explained further in Chapter 7.
Scenario Filter Specs
I created a convenient import function (button macro) that will pull in all
of the required matrix data, apply filters and error checking, and then sort and
copy the resulting data to all of the analytical tabs of the Integrated
spreadsheet. Before we can use that function, we need to specify the location
of the import file and define the file specifications.
It should be no surprise that we will enter the file specifications on the
“Specs” tab (Figure 6.8). To open and import the file, the import macro
requires a file path and name, which is defined by the following user fields:
symbol (UA), file path (C:\Users\Brian2012\Desktop\OVFiles\), pricing date
(20140723), pricing time (1600), file type (.CSV). These user inputs are
entered in Cells B29:B33. The Integrated spreadsheet then aggregates the
input fields to create a filename (B28) and a complete file path & file name
(B27), which is used by the macro.
Your file path will obviously be different, but I suggest placing all of your
import files in the same directory to make it easier to use the import function.
Since each file is time and date specific, you can even have multiple files for
the same symbol in the same directory. The import function reads comma-
separated-value or CSV files.
Import File Format
Before we can use the import macro, we must ensure the file is in the
proper format and the data fields are in the correct order. I am a paying
customer of OptionVue and I use their option platform to export CSV files,
which I import directly into the Integrated spreadsheet using the import
function (button macro). Trading Insights also has an affiliate relationship
with OptionVue; please refer to the Resources section at the end of this book
for additional information on OptionVue’s discount offer.
Figure 6.9 is a screenshot of OptionVue’s ASCII Export dialog box (with
permission from OptionVue). Note the selected asset is UA and the
OptionVue export file path and name exactly matches the import file path
and name in Figure 6.8 of the Integrated spreadsheet. If you decide to use
OptionVue to generate your import files, please use the settings from Figure
6.8.
The good news is that it is quite easy to use the OptionVue file export
function in conjunction with the import function in the Integrated
spreadsheet. The bad news is that we also need to define the precise format of
the OptionVue export file, to ensure that it will work correctly with the
import function in the Integrated spreadsheet. Fortunately, this only needs to
be done once.
To define the OptionVue export file format, click on the “Line Format”
button in Figure 6.9. That will bring up OptionVue’s Line Format screen
(Figure 6.10). The right hand side (RHS) of the screen provides a list of all
available parameters. The left had side (LHS) of the screen includes the list of
parameters included in the export file, in the order listed.
Simply use the buttons to move the desired fields from the RHS to the
LHS and move the parameters up and down until they match the order
required by the import function. The actual OptionVue parameters (in the
correct order) required by the Integrated import function are provided in
Figure 6.11.
Once you create your desired export file format in OptionVue, all of your
export files will automatically be created in this format. You will not need to
use the “Line Format” button every time you export a file.
Data Field Formats
If you are using OptionVue to generate these files, you can proceed to the
import functions. However, if you are using another vendor or your broker to
create these files, then we need to discuss the format further.
Figure 6.12 is a screenshot of the left-hand-side (LHS) of the first 26 lines
of the “IMPORT” tab of the Integrated spreadsheet (after importing the UA
file). Figure 6.13 is a screenshot of the right-hand-side (RHS) of the first 26
lines of the “IMPORT” tab of the Integrated spreadsheet. The number of
fields (columns) made it impossible to include all of the “IMPORT” data
fields in a single screenshot. Please refer to the screenshots of the “IMPORT”
tab as I review the format requirements for each import field in the CSV file.
The CSV file begins with a header row, with one title for each of the
fields or columns. The first row of actual data must always be for the
underlying stock. If not, then the import function will not work properly.
The first column (existing position) is not imported into the spreadsheet,
but must be present in the import file. The next two columns are symbol
(Column B) and description (Column C), which should not require a specific
format. The analysis date field (Column D) is very important and it must use
the YYMMDD format. The accompanying time field (Column E) does not
require a specific format.
The strike price field (Column F) is next and should include a decimal
place when needed. The next field (Column G) is used to designate a Call (C)
or Put (P) option; note the use of capital letters. The expiration date field
(Column H) is also very important and must also use the YYMMDD format.
The MID IV field (Column I) represents the implied volatility at the mid-
price between the bid and ask prices. Decimals must be included and a value
of 0.895 would represent an annualized implied volatility of 89.5%.
The next three fields are Theoretical Price (Column J), Bid Price (Column
K), and Ask Price (Column L), all of which should include decimals when
necessary. The values in these columns represent option prices per share, not
per contract. All of the above fields are shown in Figure 6.12.
The remaining fields are shown in Figure 6.13. The Percent O/U field
(Column M) represents the percent overvalued or undervalued. The next two
fields are Volume (Column N) and Open Interest (Column O). The next five
columns represent the Greeks: Delta (Column P), Gamma (Column Q), Vega
(Column R), Theta (Column S), and Rho (Column T). All of the Greek
values are per contract, not per share. In other words, the per contract Greeks
equal the per share Greeks multiplied by the option multiplier. The next field
(Column U) is the probability of finishing in the money (ITM) and the last
field (Column V) is the last transaction price.
Given that the Integrated spreadsheet calculates the True Greeks, it might
seem strange to import Greek values from an outside source, but we have a
chicken and an egg problem. It is beneficial to use Delta to filter the data
before estimating the volatility model, but we can’t calculate the value of
True Delta before estimating the volatility model. That is why we need to
import this data. The same reasoning applies to the Mid IV data.
In addition, some of the import data is not used by the Integrated
spreadsheet. I use the same OptionVue export file format for different option
research projects and all of the data in the Export file is not required by the
Integrated spreadsheet. However, the column format and order is important,
because the Integrated spreadsheet retrieves the required data from specific
columns.
The most important data fields are all date fields, all price fields, strike
price, call/put, MID IV, Delta, Vega, and volume and open interest (if you
plan to filter on those fields). The description and symbol fields are important
for identification purposes, but not for analytical purposes.
Import Functions
Now that we have an import file in the proper format, we can run the
import function. Actually, there are several Import functions (button macros),
all of which are located on the LHS of the “IMPORT” tab (Figure 6.12). The
good news is that you should only need to use the last import function titled
“IMPORT Combo,” which performs all of the import functions in the proper
sequence.
When I created the spreadsheet, I wrote all of the import-related macros
individually. The top five buttons on the LHS of the “IMPORT” tab
correspond to the five individual macro functions performed by the
“IMPORT Combo” macro discussed above. All of the functions must be
performed in the proper sequence before beginning the analytical process.
Even though you should not need to use the individual macros, I left the
individual macro buttons in the spreadsheet to allow me to identify the source
of any errors that might occur during the import process.
Here is a brief explanation of the individual macro functions. The
“IMPORT CSV” macro does exactly what its name implies; it imports all of
the matrix data from a correctly formatted CSV file into the appropriate
columns of the “IMPORT” tab.
The “User Filter” macro function applies the filter settings from Figure
6.7 to the option matrix, eliminating any options that do not meet the user-
specified filter criteria.
The “Error Filter” macro applies some basic error-checking procedures to
the remaining options and removes any options that are flagged during the
process. For example, in order to apply the volatility model, an implied
volatility must be calculated for each option. If a large pricing error prevented
the option model for solving for implied volatility (due to an option price
below the intrinsic value for example), then that option would be excluded.
Keep in mind that these error filters can only identify glaring pricing errors
and that the user is responsible for ensuring the integrity and accuracy of the
data. Inaccurate or incorrectly formatted data will result in errors, invalid
results, or both.
The “OPT Sort” function performs a multi-layered sort on all of the
options in the matrix that satisfy all of the filters and pass the error-checking
process. The options are sorted first by type with calls at the top and puts at
the bottom. Within the calls and puts, the options are sorted in ascending
order of trading days remaining until expiration (shortest to longest). The
final layer sorts the options in descending order of strike price.
All of the analytical tabs in the Integrated spreadsheet require a common
dataset. “Copy IMPORT” is the final import-related function, which copies
the filtered, error-checked, sorted option matrix from the “IMPORT” tab to
each of the analytical tabs of the Integrated spreadsheet.
All of the import-related macro functions (including the sort) must be
performed before beginning the analytical processes. To reduce potential
problems with the analytical functions or the optimizer, I suggest that you
always run the “IMPORT Combo” macro function and ignore the individual
import macro functions. The “IMPORT Combo” macro function runs the
individual import-macro functions in the proper order and prepares the
Integrated spreadsheet to perform all of the analytical calculations.
Summary
File => Options => Add-Ins => Manage Excel Add-ins => Go
Let’s continue with the normal horizontal skew function for at-the-money
UA put options on July 23, 2014. An actual UA put option with time to
expiration of 0.08730 years (~1-month) will be used in the calculation
example below.
VSC = LN(K/S)/(T^0.5)
VSC = LN(56.00/60.63)/(0.08730^0.5)
VSC = LN(0.923635)/(0.295466)
VSC = -0.079438/(0.295466)
VSC = -0.269
Now that we have the calculated the value of the vertical slope coefficient
(VSC), we can use the formula below to calculate the normal implied
volatility for the one-month (0.08730 years) UA put option with the strike
price of $56. In fact, after we calculate the VSC, we have all of the
information necessary to calculate the normal implied volatility for any
option in the UA matrix. The following example is a continuation of the one-
month (0.08730 years) UA put option for which we calculated the ATM NIV
earlier in the horizontal skew section.
Unfortunately, we cannot solve for the NIV until we calculate the vertical
skew slope and vertical skew curvature values. Just as the ATM NIV varies
as a function of the amount of time remaining until expiration (horizontal
skew), the vertical skew is not constant across the term structure of
volatilities either. In other words, the shape of the vertical skew curve is
different for options with different expiration dates. As a result, the values of
the vertical skew slope (bVS) and the vertical skew curvature (cVS) are both
unique to options with 0.08730 years remaining until expiration.
However, it would not be practical or desirable to estimate independent
vertical skew slope and curvature values independently for every option
expiration date. We are ultimately interested in calculating the normal
implied volatility for any option in the matrix on the initial pricing date and
at our choice of several projected dates in the future. As a result, we need to
model the vertical skew slope and curvature as a continuous function of the
time remaining until expiration.
The vertical skew slope and curvature functions were depicted earlier in
Figure 7.7 estimation results. The dotted and dashed lines in Figure 7.7
illustrate the curve and slope coefficients for the UA vertical skew model
respectively. Both the vertical skew slope and vertical skew curve functions
are linear, which means that both functions can be explained by slope and
intercept coefficients, which are estimated simultaneously with all of the
other volatility model parameters.
Below are the formulas used to calculate the vertical skew slope and
vertical skew curve coefficients, both of which are expressed as a function of
time remaining until expiration. The formulas below are a continuation of our
earlier example, which used the one-month UA put option with a $56 strike
price.
bVS = A + B*(T)
bVS = 2.556% + -5.742%*(0.08730)
bVS = 2.556% + -0.501%
bVS = 2.055%
bVS = A + B*(T)
bVS = 21.192% + -10.136%*(0.08730)
bVS = 21.192% + -0.501%
bVS = 20.307%
Before we continue, let’s take a step back and review the preceding
volatility model calculations intuitively. The volatility model simultaneously
estimates eleven different volatility model parameters: the annualized implied
earnings volatility (S4), three horizontal skew coefficients for call options
(S6:S8), three horizontal skew coefficients for put options (T6:T8), two
vertical skew slope coefficients (U6, U8) and two vertical skew curve
coefficients (V6, V8).
After estimating the volatility parameters, the next step is to use the three
horizontal skew coefficients to solve for the at-the-money normal implied
volatility (IV). Unfortunately, normal implied volatility also varies as a
function of the strike price in relation to the current price of the underlying
security. As a result, we must calculate the vertical skew coefficient (VSC) to
quantify the strike price relationship.
The vertical skew also varies as a function of the time remaining until
expiration, so we also need to calculate the vertical skew slope and curvature
coefficients for each option. Finally, we can use all of these values to
calculate the vertical skew, which can be combined with the ATM NIV to
determine the normal implied volatility for each option.
Figure 7.8 shows the normal implied volatility (dependent y-axis) as a
function of the vertical skew coefficient (independent x-axis) for expiration
dates ranging from one week to two years (RHS legend).
Aggregate Implied Volatility Revisited
IV = ((WE*(VE^2))+(WN)*(VN^2))^0.5
IV = ((4.5455%*(137.20%^2))+(95.4545%)*(31.70%^2))^0.5
IV = ((8.5564%)+(9.5921%))^0.5
IV = (18.1485%)^0.5
IV = 42.60%
The volatility model estimated that the annualized implied volatility of the
one-month (8/23/2014) UA $56 put option was 42.60% at the close on July
24, 2014. The actual annualized implied volatility of the 8/23/2014 UA $56
put option was 42.23%.
Solver Volatility Model Constraints
The volatility model Solver solution was shown in Figure 7.2 and again in
Figure 7.6. We initially focused on the Solver solution statistics and then on
the volatility model parameters. In both cases, we ignored the input Cells
with the blue shaded background (U4:W4) which we use to constrain the
Solver solution. Now that we have reviewed all of the volatility model
parameters, we can revisit the Solver constraint cells.
I specified a minimum implied earnings volatility (IEV) of 1.10% (U4),
which is only applied to decision variable cell S4. I also set a minimum
intercept value of 1.10% (V4), which applies to all four intercept decision
variables (S8:V8). Finally, I set a minimum and maximum range of negative
600% to positive 600% (W4) for all of the decision variable cells (S6:V6),
which excludes the implied earnings volatility (S4). These values should
work well for many Solver problems, but you may modify these values if you
would like more control over the Solver solution. If you find the shape or
curvature of the functions too extreme, I suggest reducing the maximum
parameter range from plus or minus 600% to plus or minus 300%, or even
lower.
The “TZero” tab represents the current pricing date (zero time elapsed).
On the “TZero” tab, you can use the following button macros: “T-Greeks,”
“SIM ALL,” and “SIM 0” (Figure 7.11). The values for the instantaneous
price simulation (July 23, 2014) are stored on the “TZero” tab.
The “CHGTU” tab represents the pricing simulation results for the first
user simulation date (July 24, 2014) which are used for optimization
purposes. On the “CHGTU” tab, you can use the following button macros:
“T-Greeks,” “SIM ALL,” and “SIM U” (Figure 7.12). The values for the
price simulation on the first user date are stored on the “CHGTU” tab.
The “CHGTX” tab represents the pricing simulation results for the second
user simulation date (July 25, 2014), which was intended to represent the
expiration date of the nearest-term option considered in the optimization
process. On the “CHGTX” tab, you can use the following button macros: “T-
Greeks,” “SIM ALL,” and “SIM X” (Figure 7.12). The values for the price
simulation on the second user date are stored on the “CHGTX” tab.
Summary
There is a lot going on behind the scenes in the Ingegrated spreadsheet,
especially with respect to the volatility model and simulation calculations.
Fortunately, all of these functions are automated and are very easy to use.
First push the “Randomize Volatility Parms” and “Estimate Volatility
Model” macro buttons on the “SolveIV2” tab to estimate the volatility model.
If your data is accurate and you use the appropriate filter settings, it is
unlikely that you will need to customize the Solver solution parameters or
constraints on a regular basis.
After reviewing the volatility model results, push the “T-Greeks” and
“SIM ALL” buttons on any of the following tabs: “Greeks,” “TZero,”
“CHGTU,” or “CHGTX.” This will generate and save all of the Greek and
simulation results for every option in the matrix.
Except in special cases, that’s all you will need to do: push four buttons in
the proper sequence. That will prepare the spreadsheet for the final steps:
optimization and graphical analysis.
8 – Integrated: Optimization & Analysis
Introduction to Optimization
When I wrote this book, I wanted to make the material and spreadsheet
tools as accessible and practicable as possible, so forcing the reader to
purchase expensive optimization software just to experiment with strategy
optimization seemed unreasonable. As a result, I designed the optimization
problem to use the free version of Solver that is included with recent versions
of Microsoft Excel.
Unfortunately, the free version of Solver is artificially restricted to work
with a limited number of decision variables and constraints. In addition, the
solution algorithms in the free version of Solver are purposely inefficient and
relatively slow. These deliberate deficiencies are intended to induce Solver
users to upgrade to one of the premium versions of Solver. While I am an
ardent proponent of capitalism and this is an effective marketing technique, it
necessitated some compromises and creativity when designing the strategy
optimization framework.
Normally, when designing a strategy optimization, I would assign one (or
more) decision variables to each investment candidate. In the simplest case,
each candidate would have its own decision variable, which would represent
the number of contracts purchased or sold for that option. This is a very
efficient and intuitive approach, but it requires a large number of decision
variables.
Unfortunately, even after using filters to reduce the number of option
candidates from the matrix, our UA example had almost 350 candidates,
which would have far exceeded free Solver’s 200 decision variable limit. As
a result, my usual approach would not work with the free version of Solver.
Objective Function
So what do I mean by expected profit per unit of risk? The expected profit
is easy to understand. Expected profit equals the probability-weighted profit
across 100 discrete pricing scenarios. The prices and probabilities were
derived from a binomial lattice that was generated from the expected normal
volatility, the expected earnings volatility, and the holding period used in the
optimization.
To calculate the expected profit per unit of risk, we also need to specify a
risk measure. I included three different risk measures, one of which must be
selected from a drop-down list in Cell A1 of the “Opt” tab of the Integrated
spreadsheet (not shown). The first risk measure is sigma, which represents
the standard deviation of the expected profit. This measure is used by many
traders, which is why I included the risk measure in the spreadsheet.
However, I did not use this risk measure in the examples from this book. The
reason is that standard deviation or variation in expected profits is only a
problem on the loss side. Scenarios with large gains also increase sigma,
which would lower the objective function, making those solutions look
worse.
As a result, I used the second risk measure (maximum loss) to calculate
the objective function for all of the examples in the book. In other words, the
resulting objective function would equal the expected or probability-weighted
profit divided by the absolute value of the maximum loss. We use the
absolute value because the maximum loss is negative and we want to
maximize the objective function.
Finally, I included a third risk measure with a value of one (1.0). Using a
constant value of 1.0 probably seems strange as well, but if we divide the
expected profit by 1.0, the result equals the expected profit. In other words,
by including a risk measure of 1.0, this allows users to maximize the
expected profit if they desire, with no consideration of risk.
Before running Solver, the Integrated spreadsheet must translate the user
or pre-set strategy descriptions into row numbers, which are used to describe
the three spreads. The row numbers are also used to calculate the objective
function and various strategy summary statistics. The user and pre-set
strategy descriptions both use the section of the “Opt” tab illustrated in
Figure 8.1 to translate trading days until expiration and Delta into the row
numbers for the corresponding options from the matrix that most closely
approximate the desired values.
For now, let’s focus on how we use this section of the spreadsheet to
enter the user-defined strategy that will serve as the starting point for Solver.
You will recall that cells with a blue-shaded background and white text
represent input cells. The most important of the user input cells indicate
whether the three spreads (Call, Put, Straddle/Strangle) will be included in
the solution (Q18:S18). A value of one indicates the spread will be included
and a value of zero directs the spreadsheet to exclude the spread. The only
acceptable values for these three cells are one and zero.
Next, we will need to enter the desired number of trading days until
expiration for each of the six options used in the three spreads (K16:P16).
The desired number of trading days for the call sale and purchase are entered
in Cells K16 and L16. The desired number of trading days for the put sale
and purchase are entered in Cells M16 and N16. Finally, we enter the trading
days for the call and put components of the straddle/strangle in Cells O16 and
P16. In this example, 22 days is approximately equivalent to one month.
Even if a spread is excluded from the initial strategy, as is the case for
both the call and put spread in Figure 8.1 (Q18:R18), we still need to enter a
plausible number of trading days that is consistent with the range of option
candidates used in the optimization.
It is also important to note that the number of trading days entered in
Cells K16:P16 will be used for all strategies. This includes user-defined
strategies as well as the ten pre-set strategies. It would have been too
cumbersome to specify a different set of values for every strategy.
In addition to trading days until expiration, we also need to enter the
desired Delta for each of the six options used to construct the three spreads
(K18:P18). Obviously the calls will have positive Deltas and the Puts will
have negative Deltas. The Deltas are expressed per contract, not per share. In
the case of UA, the call Deltas will range from zero to 100 and the put Deltas
will range from zero to negative 100.
The spreadsheet uses Excel’s Match function to find option candidates
that closely match the desired number of trading days until expiration and the
desired Delta. The row numbers for the resulting options are stored
temporarily in the solution Cells (K20:P20).
In addition, the Integrated spreadsheet also calculates the number of
contracts for each spread (Q20:S20) to be consistent with the user-specified
amount of required capital. In all of the strategy examples in the book, I
specified a required capital range of $9,000 to $11,000 (not shown), to give
the optimizer some flexibility in finding an integer solution. This flexibility is
very important.
The spreadsheet calculations of required capital look at each spread
individually and are relatively simplistic. In reality, every broker uses their
own margin calculation algorithms, which are based on FINRA margin
requirements and on their proprietary portfolio margin risk models.
Let’s look at the options selected by the spreadsheet for the initial
solution. The call and put spreads are excluded, so we will focus on the
straddle. The nearest call option candidate was found in row 106 (O20) and
the closest put option was located in row 281 (P20). For both the call and put
purchase, we specified 22 trading days until expiration (O16:P16). The call
and put options found by the spreadsheet for the initial strategy exactly
matched our desired number of trading days (O17:P17).
We specified Deltas of 60 (O18) for the call option and negative 40 (P18)
for the put option. The call and put options found by the spreadsheet had
Deltas of 60.7 (O19) and negative 39.4 (P19) respectively. In addition, the
spreadsheet reports the option type (K15:P15), option price (K21:P21), and
strike price (K22:P22) for each of the options identified by the spreadsheet.
Once we are satisfied with the initial solution, we can use the user macros
to evaluate or optimize the initial strategy. To calculate the objective function
value (and other summary statistics) for the initial strategy, use the “Copy
User” button macro shown at the right-side of Figure 8.1. The Copy User
macro will copy the initial solution from Cells K20:S20 to the calculation
region of the spreadsheet shown in Figure 8.2 (C3:K3).
Figure 8.2 shows the initial user-strategy before optimization. The value
of the objective function (before the strategy is optimized) equals +0.25 (L3),
which is not bad, especially for a (non-optimized) starting point. The
objective function value of +0.25 represents the expected profit after
transaction costs, divided by the absolute value of the maximum loss.
If you are curious, the $1,212 in Cell L2 represents the expected profit
before transaction costs and the value of 0.17 in Cell L4 represents an
alternative objective function value, which in this case equals the expected
profit divided by sigma. The optimizer will always attempt to maximize the
value shown in Cell L3. The other values are shown for informational
purposes only.
The “MaxLoss” shown in Cell A1 indicates that the objective function
(L3) equals the expected profit divided by the absolute value of the maximum
loss. The solution (C3:K3) is also used to calculate a number of other
summary statistics, which we will review later in this chapter. For now, we
will continue to focus on optimization procedures.
If you are satisfied with the initial objective function value (L3), use the
“Opt User” push-button macro (Figure 8.1) to optimize the user-defined
strategy. The optimized strategy results are shown in Figure 8.3. The
objective function value increased from 0.25 (Figure 8.2 cell L3) to 0.63
(Figure 8.3 cell L3), which is a very good solution. You will also notice that
the expected profit excluding transaction costs (L2) and the expected profit
divided by sigma also increased.
If we look a little closer, there is another very interesting observation: the
optimized solution includes a 14-contract put spread (J3), which was not even
part of the initial solution. The initial solution only used a straddle.
This was the best solution found by Solver based on the initial user
solution. If we ran Solver again, it might even improve upon this value.
When we use the ten pre-set solutions later in this chapter, Solver will be able
to find a strategy solution with a much larger expected profit per unit of risk.
As a result, we will delay our discussion of the optimal solution until then.
Before we explore the pre-set optimization macros, let’s take another look
at the Solver settings (Figure 8.4). The Solver settings used by the strategy
optimizer are located in the Cells V10:V20 on the “Opt” tab. As was the case
when using Solver to identify the optimal volatility model parameters, you
should review the Solver documentation before modifying these values.
However, modifying these settings might improve Solver’s performance.
Before continuing, I want to explain a few of the Solver settings in Figure
8.4. The “MaxTime” value of 300 (V10) indicates that Solver will run for a
maximum of 300 seconds (five minutes) per optimization run. Obviously
increasing this value will give Solver more time to explore the solution space,
but keep in mind that the Solver macro uses both the genetic algorithm and
the GRG algorithm.
The “MaxTimeNoImp” value of 60 (V20) instructs Solver to stop an
optimization if the objective function value has not improved in the past 60
seconds. This setting will prevent Solver from wasting additional time when
its search algorithm is ineffective.
The “PopulationSize” of 1000 (V16) is a relatively large initial
population, which will diversify the “gene pool” and help Solver explore the
entire solution space. However, increasing the population will also increase
the run-time.
I mentioned the mutation rate before. The initial “MutationRate” of 0.25
(V19) will allow Solver to consider solutions that were not represented in the
initial population, but should not compromise Solver’s ability to converge on
a solution. Varying this setting could improve or degrade Solver’s
performance.
Finally, the “RandomSeed” of zero (V17) instructs Solver to generate a
different population every time it runs the analysis. This allows you to re-run
Solver in an attempt to improve upon your initial solutions. Solver only
retains improved solutions, so re-running Solver cannot reduce your objective
function.
Pre-Set Strategy Optimization
As explained earlier, the “Opt” tab includes ten pre-set strategies to use as
starting points in the optimization: bull call spread, bear put spread, neutral
condor, neutral butterfly, bullish butterfly, bearish butterfly, neutral strangle,
neutral straddle, bullish strangle, and bearish strangle. The strategies shown
in Figure 8.5 represent the ten pre-set solutions, which are centered in
different regions of the solution landscape.
The strategy descriptions use the same framework we used earlier to enter
the user strategy. The number of trading days entered in Cells K16:P16
(Figure 8.1) are used for all strategies, so we do not need to enter these
values again. However, the pre-set strategy descriptions do include the
desired Delta values (Figure 8.5 Cells AA25:AF34) as well as the
include/exclude values (Figure 8.5 Cells AG25:AI34) for each spread. The
values in the last row of Figure 8.5 (AA35:AI35) are automatically populated
with the user settings from Figure 8.1 (K18:S18). The user strategy is not
used by the pre-set strategy optimization macros.
The easiest, most exhaustive (and most time consuming) way to search
for the optimal strategy is to use the “Opt All” push-button macro (Figure
8.6).
The “Opt All” macro copies the Delta and include/exclude spread values
for the first pre-set strategy (AA25:AI25) to the Delta row of the user matrix
described earlier (Figure 8.1 K18:S18). The user matrix finds the appropriate
row numbers for each option (Figure 8.1 K20:S20) and the macro then copies
these values to the calculation region of the “Opt” tab (C3:K3). The macro
then uses these values as the starting point to run the Solver optimization.
The results for the first pre-set strategy are then copied to the first row of the
strategy results section of the “Opt” tab (Figures 8.7 & 8.8, Cells K25:Y25).
The “Opt All” macro then repeats the same procedure for the remaining
nine pre-set strategies. The optimized results for all of the pre-set UA
strategies are shown in Cells K25:Y34 of Figures 8.7 & 8.8. The results were
split into Figures 8.7 & 8.8 due to the width of the region. This macro
requires twenty different optimization runs, which takes a lot of time.
If you are not satisfied with the results, you could use the “Re-Opt All”
push button macro (Figure 8.6) to re-optimize all of the strategies. However,
instead of starting from the pre-set strategy definitions, Solver would start
with the results from the previous optimization runs (K25:S25). The “Re-Opt
All” macro would then copy the results from the re-optimization to Cells
K25:Y34, replacing the original optimization results. This macro also
requires twenty different optimization runs and will probably take nearly as
much time as the “Opt All” macro.
The “Calc All” push-button macro in Figure 8.6 follows the exact same
procedure as the “Opt All” macro, except it does not optimize the initial
strategies. Instead, it calculates the objective function and summary statistics
for each pre-set strategy (before optimization) and copies the non-optimized
results to Cells K25:Y34. Why would we want to do this? Because the “Calc
All” macro is very fast and we might not have enough time to run 20
different optimization runs.
Instead, we could run the “Calc All” macro and then use the “Opt (Nth)”
push-button macro in Figure 8.7 to optimize the single pre-set strategy with
the highest (pre-optimization) objective function value. Simply enter the
desired solution number (1-11) in input Cell J24 and push the “Opt (Nth)”
button. The optimized results will replace the initial solution values in the
appropriate row in Figure 8.7 & 8.8.
In addition to the “Opt (Nth)” macro, there are three additional macros
that only use one user-specified pre-set solution at a time. The “Re-Opt
(Nth)” push-button macro uses the original optimization results for the pre-
set strategy of our choice to re-optimize the strategy. It then copies the results
to the corresponding row of Figures 8.7 & 8.8.
The “Calc (Nth)” macro calculates the (pre-optimization) objective
function and summary statistics for the pre-set strategy of our choice and
copies the results to the appropriate row of the results section of the “Opt”
tab.
Finally, the “Copy (Nth)” push-button macro copies the solution of our
choice back to the calculation region of the “Opt” tab (C3:K3), which
recalculates the objective function and all of the summary statistics. The
solution in the calculation region of the “Opt” tab is also used to generate the
values for the graphical analysis, which will be discussed later in this chapter.
The row numbers for each option and the number of contracts for each
spread are shown in Figure 8.7, as are the four macros that run one of the pre-
set strategies at a time.
Figure 8.8 is a continuation of Figure 8.7. Each row in Figure 8.8
corresponds to the same strategy from the same row in Figure 8.7. Figure 8.8
shows the objective function (T), average profit after transaction costs (U),
standard deviation of the profit (V), maximum loss (W), the required capital
(X), and the Solver result (Y).
As you can see in Figure 8.8, the ten pre-set strategies produced a wide
range of optimal solutions, which illustrates the advantage of using the “Opt
All” macro whenever possible. The first pre-set strategy generated the
optimal solution with the highest objective function value, a remarkable
10.78 (T25). The expected profit for the optimal solution derived from the
first pre-set strategy was 10.78 times the absolute value of the maximum loss.
Both the expected profit and maximum loss were calculated net of assumed
transaction costs. This was an unusually large objective function value and
was only possible due to the optimizer’s ability to exploit large systematic
pricing anomalies in the UA matrix.
Solver Strategy Optimization Problem
After examining the nine candidates, I selected Cree, Inc. (CREE) and
chose to implement the option earnings strategy on September 26, 2014,
several weeks before the next scheduled CREE earnings announcement on
October 21, 2014.
Why attempt to initiate an option earnings strategy several weeks before
an earnings announcement? Option traders know that short-term options
decay faster than long-term options. They also know from experience that the
implied volatility of options expiring after earnings announcements will
increase as time passes and the earnings date nears.
Many traders presume that we could sell short-term options that expire
before the earnings announcement and buy options that expire after the
earnings announcement and profit from the rapid decay of the short-term
options and from the increasing implied volatility of the long-term options.
This strategy is called an earnings calendar spread.
If this hypothesis is true, then we should be able to use our tools to
identify a candidate with an unusually low level of implied earnings volatility
(IEV), which would further enhance the returns of this strategy. The ideal
candidate’s current IEV would be lower than both previous levels of implied
earnings volatility and historical earnings volatility. This would increase the
probability that the IEV would rise approaching the date of the earnings
announcement, which would enhance the value of our long option position.
Let’s test this hypothesis. To do so, we will need to evaluate CREE’s
implied earnings volatility and historical earnings volatility. The short option
positions would expire before the earnings announcement, so we could not
own the calendar spread strategy past the earnings date, but we might want to
modify the earnings calendar strategy before the earnings announcement or
even employ a different strategy. As a result, to ensure that we are fully
prepared to design strategies for any holding period, we will research both
CREE’s historical earnings volatility and directional bias.
I executed the “Opt All” macro, which ran twenty different optimization
runs, from twenty different starting points, and used two different solution
algorithms. The results for each of the pre-set starting points are shown in
Figure 9.11. Figure 9.11 shows the objective function (T), average profit after
transaction costs (U), standard deviation of the profit (V), maximum loss
(W), the required capital (X), and the Solver result (Y).
The objective function represents the expected return divided by the
absolute value of the largest loss incurred in any of the discrete holding
period scenarios. The largest objective function value was 0.01 (T26 & T29)
and the largest expected profit (net of transaction costs) was $125 (U29). The
standard deviation of profits (Column V) and the maximum losses (Column
W) incurred were all significant. The required capital amounts for all
solutions (Column X) were within the specified range of $9,000 to $11,000
and the Solver solutions were all feasible (Column Y).
The Solver solutions were clearly not as impressive as the UA optimal
solution. So what do we do now? Nothing!
This is probably the single most important observation in the book and it
is not limited to option strategies: when we do not have a trading edge, we
should not trade. There are no exceptions to this rule. If we trade without a
demonstrated probabilistic edge, it would be gambling and we would be
destined to lose money as the odds played out against us over time.
What have we learned from this exercise? This was only one example, but
we assumed that implied earnings volatility would increase as the earnings
date approached and we also had the supposed advantages of accelerating
time decay on short option positions expiring before earnings and increasing
implied volatility of long option positions expiring after earnings. Even with
those supposed advantages, Solver could not construct a single option
earnings strategy that was able to cover transaction costs, even by buying
overvalued options and selling undervalued options.
This should cause us to seriously question the hypothesis that earnings
calendar spreads inherently offer positive expected returns. Our example does
not imply that earnings calendar spreads will never offer attractive risk-
adjusted returns, but the above analysis does suggest that those opportunities
will probably be case-specific, not systematic.
So what do we do now? We invested all of our time and effort into
researching CREE and we have nothing to show for it. Well, that is not
exactly true. We analyzed CREE on September 26, 2014, but we still have
several weeks before the CREE earnings announcement on October 21, 2014.
The historical actual and implied earnings volatility data for CREE will
not change, so neither should our directional and earnings volatility forecasts.
In fact, very few of the user specifications in the spreadsheet will change.
Simply save a copy of the spreadsheet in a CREE directory and re-run the
analysis as often as time permits.
The Integrated spreadsheet provides an automated macro that makes it
quick and easy to import CSV files from the CREE matrix at any time before
the next earnings event. The “Estimate Volatility Model” macro is also
automated, as are the strategy optimization macros. Option prices are not
constant and neither are option pricing anomalies, especially approaching
earnings.
As our OptionSlam.com historical scan indicated, CREE has experienced
a high degree of earnings volatility and a bearish directional bias in the past
and our ability to precisely calculate CREE’s implied earnings volatility gives
us an advantage when evaluating and constructing option earnings strategies,
especially when holding a strategy over an earnings event. We only have to
wait for an opportunity that we can exploit.
CREE Revisited
P&L Graph
So how did the optimal hybrid CREE strategy actually perform? Figure
9.15 is the same P&L graph from Figure 9.14 with one addition. The Red
diamond represents the actual profit of the optimal strategy (net of transaction
costs) from October 21, 2014 to October 22, 2014. The actual price of CREE
decreased from $33.15 to $27.28. Our bearish forecast was correct and the
realized earnings volatility was also greater than the implied earnings
volatility.
As you would expect, the optimal strategy performed well, earning a total
profit of $6,482 (net of transaction costs). The return on required capital of
$9,488 (not shown) was 68.32% ($6,482/$9,488) over the one-day holding
period. At a price of $27.28, the model forecasted a strategy value of $6,344,
meaning that the actual strategy performance was almost identical to the
modeled strategy performance.
Conclusion
The purpose of this chapter was to provide another practical example of
how to use the Exploiting Earnings Volatility analytical approach and toolset
to design a realistic option earnings strategy, based on actual market prices
and actual earnings data.
The first pre-earnings CREE example taught us a very important lesson:
we do not always have a trading edge. When we do not have a trading edge,
we should not trade. When we do have an edge, we should exploit our
advantage, but must always manage our risk.
I normally advocate using stop orders to exit positions at predetermined
levels and position sizing to ensure our total losses are small relative to our
trading capital. Unfortunately, stop loss orders are of limited use when
trading options, primarily due to the importance of managing execution levels
and minimizing slippage. Even if we could place stop loss orders for our
hybrid option spreads, they would be completely ineffective in limiting risk
during earnings announcements.
First, earnings are typically announced when the option market is closed.
Second, prices make discrete jumps when earnings are announced. Even if
the option market was open, the stop orders would not work.
As a result, it is critical to use positing sizing formulas to limit risk when
trading option earnings strategies. The maximum loss that could be incurred
(which will exceed the maximum loss depicted in the P&L diagram) should
always be considered when calculating the position size for your option
earnings strategies. Your position size should be reduced as the maximum
potential loss of the strategy increases. This ensures that your total loss will
remain below the desired threshold, which is expressed as a percentage of
your total capital.
10 – Practical Considerations
Trading Edge
New Applications
IV = ((WE1*(VE1^2))+(WE2*(VE2^2)) +…(WEN*(VEN^2))+(WN)*
(VN^2))^0.5
As you can see from the general aggregate implied volatility formula
above, we can use this version of the formula to solve for aggregate implied
volatilities that are influenced by any number of independent discrete events.
We could even use this formula to estimate the forward volatilities implicit in
the term structure of volatilities, otherwise known as the horizontal skew. As
was the case with the aggregate implied volatility formula presented earlier,
all of the weights in the general aggregate implied volatility formula must
sum to one (100%).
A thorough exploration of the new topics introduced in this chapter is
beyond the scope of this book. Nevertheless, I wanted to share with you some
ideas to get you started on your own research projects and to help convey the
potential for this innovative new analytical framework.
Conclusion
Email: [email protected]
Resources
OptionVue
Spreadsheet Tools