Rich Newman

June 28, 2007

A Beginner’s Guide to the Black-Scholes Option Pricing Formula (Part 2)

Continued from part 1.

Expected Value

Suppose there’s a competition I can enter for free where I have a 50% chance of winning $1,000,000, and a 50% chance of receiving nothing. Obviously I’m going to enter as many times as possible. Suppose I enter 1,000 times: what will I expect to win?

On average I’m going to win $500,000 per entry ($1,000,000 x 50%), so I’d expect to win around $500,000,000 from 1000 entries.

We say that the ‘expected value’ of playing the game is $500,000. It’s what we ‘expect’ to win on average if we play many times.

Similarly if the game has a 50% chance of winning $1,000,000, a 20% chance of winning $200,000 and a 30% chance of winning $-500,000 we can say the ‘expected value’ of playing is:

50% x 1,000,000 + 20% x 200,000 + 30% x -500,000 = $390,000

And if I play 1000 times I expect to win around $390,000. Notice that to do this we are multiplying the percentage probability of each value by the amount we make in each case, and then adding it all up.

So to value our option contract using an expected value calculation we would:

  • Work out the percentage probability of each value of the stock price in a year’s time
  • Work out how much profit we make in each case (from the payoff graph)
  • Multiply the percentage probability of each value by the amount we make and add them up to get an ‘expected value’ for the contract.

This can then be considered as the basis of the price of the option, although there’s also the time value of money to consider, which I will discuss later.

Continuity

In the discussion above I implied that to calculate the expected value of our option we would consider a series of distinct values of the price of the stock at maturity. In fact the Black Scholes method assumes that the stock price can take ANY value continuously between minus infinity and plus infinity at maturity. This actually makes the maths easier, although possibly more difficult for non-mathematicians to understand. Nevertheless the basic concepts remain the same.

Time Value of Money

Another concept that you need to understand is the time value of money. If I receive a cash flow of $1,000,000 in one year’s time then that is worth LESS to me than if I receive $1,000,000 today. This is intuitively obvious if you consider that if I receive $1,000,000 today I can buy a government bond and earn interest on it for a year. At the end of the year I’ll have more than $1,000,000.

The difference between the two values clearly depends on the interest rate that I can get over the year. If I can get an interest rate of i% then at the end of the year my $1,000,000 will be worth $1,000,000 x (1+i%). Equally if I am due to receive $1,000,000 x (1+i%) in a year’s time, I can say that that is worth $1,000,000 to me today. If I receive $1,000,000 in a year’s time that is worth $1,000,000 / (1+i%) to me today.

In general if I am going to receive $y in a year’s time I can say that that is worth y / (1+i%) to me today. In this case we call the 1/(1+i%) a ‘discount factor’. It’s what we ‘discount’ (multiply) the future cash flow by to get its current value.

Note that here i% is the interest rate I can get for investing in something with very little or no risk for a whole year. A different rate may apply if my cash flow is due in six months time (and clearly I’ll only be getting six months of interest at the different rate, so the calculation changes as well). A different discount factor will apply.

To avoid some of the difficulties of interest rates over different periods the Black-Scholes method assumes initially that interest rates are constant. It also uses what are called ‘continuously compounded interest rates’. I will explain these in more detail in another article. All you need to know for the purposes of this article is that if r is our continuously compounded interest rate for a period of T years then the discount factor will be Exp rT.

Black-Scholes

The easiest way to understand the Black-Scholes formula intuitively is to consider what happens if we exercise the option. This has two parts:

i) Value of the Cash to Buy the Option

Firstly, if the option is exercised we pay the strike price (30 in our example). We pay the strike price only if the underlying stock price is above the strike at maturity. So to work out the expected value of this we need the probability simply that the stock price is above the strike at maturity. Let’s call this probability N(d2), and the strike price K. Then the expected value of this is just KN(d2). What ‘N()’ means, and the value of d2, will be discussed later.

KN(d2) is the value of the cash flow at maturity. As discussed above, to get the value of this cash flow today we need to discount it, and the discount factor is Exp rT.

So the value of the cash to buy the option today is KN(d2)Exp rT.

ii) Value of the Stock Received if any

Secondly, if the option is exercised we get a unit of the stock. This is clearly worth whatever the stock price is in the market at maturity. But this again only happens if the underlying stock price is above the strike at maturity.

It turns out that the expected value of this valued as at today is proportional to S, the stock price today, and can be written as SN(d1). That is to say, SN(d1) is the expected value of something that is equal to the final stock price if the final stock price is above the strike, and equal to zero if the final stock price is below the strike.

This is continued in part 3.

June 24, 2007

A Beginner’s Guide to the Black-Scholes Option Pricing Formula (Part 1)

Black-Scholes Call on European Stock
Black-Scholes d1 d2
Preface

Firstly let me apologize to the .NET developers perusing this blog, as this article is a little off-topic. However, my interests range over both .NET and derivatives, and I will be posting on both topics in the future.

Introduction

The Black-Scholes model for pricing stock options was developed by Fischer Black, Myron Scholes and Robert Merton in the early 1970’s. It is arguably the most important result in financial engineering, and is certainly a rich source of interview questions in the financial services industry.

I was recently asked by a friend if I could provide a written explanation in layman’s terms of how the Black-Scholes options pricing formula works. This isn’t necessarily all that easy as the formula involves some relatively complex mathematics. However, I think it is possible to get an intuitive understanding of what the various parts of the formula mean. This article is an attempt to explain that.

Note that to keep things simple here I am only going to discuss European call options on non-dividend paying stock. It doesn’t matter for the purposes of this article if you don’t know what that means.

What is an Option?

Firstly a reminder of what a European call option is. If I ask this in an interview I usually get the textbook answer: ‘the right but not the obligation to buy an asset at a predetermined price at a predetermined date’. My next question is always ‘what does that actually mean?’

Consider a European call option on a Microsoft share (the ‘asset’), with a strike of 30 (the ‘predetermined price’) and maturity of one year from today (the ‘predetermined date’). If I pay to enter into this contract I have the right but not the obligation to buy one share at 30 in a year’s time. Whether I actually exercise my right clearly depends on the share price in the market at that date:

- If the share price is above 30, say at 35, I can buy the share in the contract at 30 and sell it immediately at 35, making a profit of 5. Similarly if the share price is 40 I make a profit of 10.
– If the share price is below 30, say at 25, the fact that I have the right to buy at 30 is worthless: I can buy more cheaply in the open market.

Thus we get the classic ‘hockey stick’ payoff diagram as below. This shows how the amount of money I make on my contract varies with the value of Microsoft stock at the end of the year.

Call Option Payoff Diagram

So if I enter into this contract I make money if the stock price finishes above 30, but don’t lose anything if it finishes below 30. Because I can’t lose, I have to pay to enter into the contract (this is the price of the contract, or the ‘premium’). This premium is usually paid upfront at the start of the contract. The question is how much this premium is going to be?

The Basic Idea

So we’re trying to find the value today of a contract whose ultimate value depends on the value of the Microsoft stock price in one year’s time. Furthermore, the contract has different values depending on whether that stock price goes up or goes down: the payoff curve above is not symmetrical.

So intuitively we are going to need some measure, or measures, of the probabilities of the stock price ending up at various values after one year.

If we have that it may be possible to apply an expected value calculation to get to a price for the contract. This is explained further in part 2.

Using HSL Color (Hue, Saturation, Luminosity) to Create Better-Looking GUIs (Part 4)

Filed under: .net, c#, Color, dotnet, GUI, HSL, RGB, technology, User Interface — richnewman @ 10:15 pm

Continued from part 3.

Code Listing

The code for this article is available here. It includes the full listing for the HSLColor class discussed in the article.

The project has a treeview that lets you select the various colors within the color scheme.

It also has the three color schemes described in this article available on the ‘Color’ menu (Color/Color Scheme then Original Color Scheme, Color Scheme 2 or Color Scheme 3). The ‘Color’ menu also allows you to set either of the two sets of stripes on any given screen to a custom color using the standard .NET color picker (Color/Set Color 1 or Color/Set Color 2).

In addition the Help menu has a ‘Current Colors’ option that shows both the HSL and RGB values for the current colors displayed on the screen.

June 23, 2007

Equality on the Code Project

Filed under: .net, c#, technology — richnewman @ 8:42 pm

My article on ‘Comparing Values for Equality in .NET: Identity and Equivalence’ has been posted on the Code Project for some time. It now has some interesting comments on some omissions I made from the original post:

http://www.codeproject.com/dotnet/DotNetEquality.asp

The Shocking Blue Green Theme. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.

Join 82 other followers