Using-Excel-Spin-Buttons-to-Enhance-the-Visual-Presentation

advertisement
Using Excel Spin Buttons to Enhance the Visual
Presentation of Financial Concepts
David S. Allen
Associate Professor of Finance
Box 15066
Northern Arizona University
Flagstaff, AZ 86011
(928) 523-7378
david.allen@nau.edu
Abstract
Spin buttons are Visual Basic object that may be placed on an Excel spreadsheet and linked to
cells whose value will change as the spin button is clicked. They are especially useful in
performing sensitivity analysis and visually displaying the results. For less mathematically
sophisticated students, the use of spin buttons can reveal relationships between financial
variables that may otherwise not be apparent. This paper describes the use of spin buttons in
general and then shows their application in five typical finance problems, including: bond pricing,
option pricing, and portfolio analysis.
1
Introduction
We often hear it said that today’s students are “visual learners.” In addition to examining the
underlying mathematical relationships, many financial relationships can be graphed to enhance
the understanding by these visual learners. However, both old-school chalkboard charts and
new-school spreadsheet created charts suffer from their static nature. This paper demonstrates
how to use Excel spin buttons to create dynamic charts that can simultaneously show the
influence of several effects on the outcome.
Inserting Spin Buttons into a Worksheet
In order to insert spin buttons or other Visual Basic controls into a spreadsheet, it is first
necessary to ensure that the “Control Toolbox” toolbar in enabled in Excel.
To create and edit the properties of a control, you must be in “design mode.” The top-left button
in the Control Toolbox is used to switch between Design Mode and run mode. In Design Mode,
clicking on a spin button will allow you to edit the button. In run mode, clicking on the spin button
will change the value of the linked cell.
To insert a spin button, click on the spin button icon in the Control Toolbox, then move the cursor
to the desired place in the spreadsheet and click-and-drag with the mouse until the desired size is
reached. The spin button may be placed anywhere within the spreadsheet, and may be smaller
or larger than the spreadsheet cells.
2
The spin button control may be oriented vertically or horizontally, as seen below. To change the
orientation of an existing spin button, right-click on it, then change the “orientation” property as
desired. The button is linked to a spreadsheet cell that will increase or decrease by a predefined
amount each time the up (right) or down (left) portion of the control is clicked.
After inserting the spin button, right click on it and chose the Properties setting to reveal the
Properties dialog box:
3
There are four properties that you will need to specify:
1) The LinkedCell property indicates the cell whose value will change when the spin button
is clicked.
2) The Max property is the highest possible value for the linked cell. Once this value is
attained, further clicks on the spin button will not increment the cell. It is set to 100 by
default, but can contain any integer value.
3) The Min property is the lowest possible value for the linked cell. Once this value is
attained, further clicks on the spin button will not decrement the cell. It is set to 0 by
default, but can contain any integer value.
4) The SmallChange property is the amount by which the linked cell will increment or
decrement for each mouse click. It is set to 1 by default. Note that holding down the
mouse button will cause the linked cell to change rapidly in value.
4
Application #1 – Bond price versus yield
Spin buttons are especially useful for charting multivariate relationships. For example, we know
that the price of a coupon paying bond is determined by four variables:
 The face value of the bond.
 The number of years to maturity.
 The coupon rate.
 The yield to maturity.
The bond’s price is usually charted as a function of the yield:
Bond Price versus Yield
$2,000
$1,800
$1,600
Price
$1,400
$1,200
$1,000
$800
$600
$400
$200
$0
0%
5%
10%
15%
20%
25%
Yield
What we cannot easily see, however, is how this relationship is affected by the other variables
such as year to maturity or the coupon rate.
5
The following spreadsheet demonstrates how to use spin buttons to enhance the above chart:
The upper spin button (in cell C3) is linked to cell B3. As we spin this button, the maturity “n”
changes, and the chart dynamically changes to show the effect of maturity on the price-yield
relationship. The data used to create the chart is just below the chart itself, and references the
highlighted cells in the inputs section of the worksheet.
Recall that the spin button can only have an integer value. For the coupon rate on the bond, it
would be nice to have fractional values. The solution is to link the spin button to a cell containing
its integer value, and then reference that integer in another equation to convert it to a fractional
value. For example, the lower spin button (in cell C4) is linked to cell C4, which is hidden
beneath the button itself. The coupon rate in cell B4 is just an equation referencing the hidden
linked cell C4: =C4/1000.
As we spin this button, the coupon rate changes, and the chart dynamically changes to show the
effect of the coupon rate on the price-yield relationship.
For example, if we spin bond’s maturity to ten years, the chart changes to:
6
With these dynamics charts, students can visually see several of Malkiel’s Bond Theorems in
action. For example, by changing the coupon rate, its effect on both bond price and convexity are
immediate obvious.
7
Application #2 – Portfolio Mean-Variance
The use of spin button is especially helpful in visualizing the two-asset portfolio possibilities curve.
The student can easily change the correlation between the asset returns and observe the effect
on both the portfolio possibilities curve and the minimum variance portfolio.
8
Application #3 – Black-Scholes Option Pricing Model
Spin buttons make a useful addition to the typical option pricing spreadsheet, regardless of
whether or not a chart is used.
The spreadsheet below uses spin buttons to enter the input values for the Black-Scholes option
pricing model. The user can change any of the five input variables, and observe the effect not
only on the option’s premium, but also on the intrinsic value, time value and delta. As an example
of the benefit of spin buttons over a static spreadsheet, the student spin the stock price and
observe that the option’s time value is maximized when the option is at the money, and lower
when either in-the-money or out-of-the-money.
Students can also use spin buttons to quickly determine the implied volatility for the underlying
asset. Just spin the standard deviation cell until the option price in cell B12 is equal to the
option’s market price.
9
Application #4 – Black-Scholes Option Pricing Model Chart
The worksheet below allows students to visually examine the effect of option price inputs on the
option’s premium and intrinsic value. In addition, they can visually determine how the time value
if affected by the various inputs by observing the vertical difference between the premium and
intrinsic value.
10
Application #5 – Gordon Growth Model
The final example is used to visually examine the Gordon (constant) growth model for common
stock valuation.
Student can see how the stock price (value) is affected by dividends and the growth rate in
dividends. They can also see that the stock price goes to infinity as the growth rate approaches
the required return.
11
Summary and Conclusion
Spin buttons are an easy to use yet powerful Excel object that can be used to perform sensitivity
analysis and visually display the results. They allow students to quickly examine and determine
the relationships between financial variables that may not otherwise be readily apparent. This
paper shows how to use spin buttons in several settings, most requiring no programming skills at
all on the part of the developer or user.
12
Download