Black-Scholes Function

Navigation:  Available Functions > Vanilla Option Functions >

Black-Scholes Function

Previous pageReturn to chapter overviewNext page

 

The BlackScholes function calculates the theoretical price, sensitivities, and the implied volatility of options using the Black-Scholes, Modified Black-Scholes, Black (options on futures), or Garman-Kohlhagen (options on spot foreign exchange). Options with an Exercise Type of American are evaluated with the Pseudo-American technique. See Vanilla Option Models for a further explanation.

 

 

BlackScholes

(ExerciseType, OptionType, ModelStatistic, AssetPrice, StrikePrice, TimeExpire, Volatility, InterestRate, YieldRate, MarketPrice, TimeFormat, DivAmount, TimeExDiv, DivFrequency, DividendStyle, InterestType, YieldType)

 

BlackScholesDivArr

(ExerciseType, OptionType, ModelStatistic, AssetPrice, StrikePrice, TimeExpire, Volatility, InterestRate, YieldRate, Dividends, MarketPrice, TimeFormat, InterestType, YieldType)

Note: Optional arguments are shown in Italics. MarketPrice is not Optional for the Implied Volatility Calculation.

 

Individual Models within the General Model are as follow:

Black Model

InterestRate = YieldRate

Black-Scholes Model

YieldRate = 0

Garman-Kohlhagen Model

YieldRate = Foreign Interest Rate

 

 

Argument

Description

ExerciseType

Alphanumeric value indicating the exercise type:

American = 0 or "a" (case insensitive)

European = 1 or "e" (case insensitive)

OptionType

Alphanumeric value indicating the type of option:

Call = 1 or "c" (case insensitive)

Put = 2 or "p" (case insensitive)

Straddle = 3 or "s" (case insensitive)

ModelStatistic

Numeric value indicating the type of function required for the return value:

Theoretical = 1

Delta = 2

Gamma = 3

Theta = 4

ImpliedVol = 5

Vega = 6

Rho = 7

Psi = 8

Lambda = 9

IntrinsicValue = 10

StrikeSensitivity = 11

TimeValue = 12

ImpliedStrike = 13

AssetPrice

The price of the underlying asset. Must be > 0.

StrikePrice

The price at which the asset can be purchased if the option is a call or sold if the option is a put. Must be > 0.

TimeExpire

Time expressed in either Days or Years (depending on the TimeFormat value) until the options expiration. Must be > 0.

Volatility

Annualized volatility of the underlying security. Must be > 0.

InterestRate

Risk-free interest rate expressed as a percentage. This rate is interpreted as a continuously compounded rate unless otherwise specified in the InterestType argument. Must be > 0.

YieldRate

Yield expressed as a percentage (dividends or interest yield) of the underlying asset price. For futures contracts, the Yield Rate is the same as the Interest Rate. This rate is interpreted as a continuously compounded rate unless specified otherwise in the YieldType argument.

Dividends*

A two-dimensional array or range of Dividend Dates and Amount pairs where the first column is the date and the second is the amount. The Dividend Dates are a range (array) of ascending unique values. All dividend dates and amounts must both be > 0.

 

As an example:

       Dividends      

Date         Amount

0.0             0.20

0.5             0.15

1.0             0.30

1.5             0.25

2.0             0.15

2.5             0.40

 

*Used for the DivArr (Dividend Array) based model only

MarketPrice

Optional. The selling price of the option in the marketplace. This input is required when implied volatility and strike are calculated. Price must be > 0.

TimeFormat

Optional. Alphanumeric value indicating the format of the time arguments (i.e. TimeExpire, TimeExDiv, DivFrequency). If omitted, Days are used as the default. Specified as either:

Days = 0 or "D" (case insensitive)

Years = 1 or "Y" (case insensitive)

DivAmount

Optional. The amount of the dividend(s). If omitted, an amount of 0 is used. Amount must be > 0.

TimeExDiv

Optional. The time in Days or Years until the first dividend is received. If omitted, a value of 0 is used and therefore no dividends are assessed. Value must be > 0 for dividends to be considered.

DivFrequency

Optional. The time in Days or Years between dividend payments. If omitted, a value of 0 is used and therefore the only dividend assessed occurs at the TimeExDiv time. The value must be > 0 for multiple dividends to be considered.

DividendStyle

Optional. Numeric value indicating the Style or method that dividends are handled. If omitted, the discrete cash method is used (i.e. DividendStyle = 0).

Discrete cash flow method = 0

Continuous yield method = 1

InterestType

Optional. Alphanumeric value indicating the type of InterestRate to use when evaluating the option. This value is converted to Continuously Compounded for the calculations. If omitted, a continuously compounded rate is used.

YieldType

Optional. Alphanumeric value indicating the type of YieldRate to use when evaluating the option. This value is converted to Continuously Compounded for the calculations. If omitted, a continuously compounded rate is used.

 

Examples

Calculate all of functions for a European call option whose asset price six months from expiration of an option is $53, the exercise price of the option is $50, the risk-free interest rate is 8% per annum, and the annual volatility is 25%. This means that AssetPrice = $53, StrikePrice = $50, InterestRate = 6%, YieldRate = 2%, TimeExpire = 182 days and Volatility = 25%. There are no dividends and all interest rates are considered continuous. So,

 

Input

 

Output

Variable

Value

 

Function

Name

Value

ExerciseType

European

 

1

Theoretical:

5.867793

OptionType

Call

 

2

Delta:

0.695432

Asset

53

 

3

Gamma:

0.036658

Strike

50

 

4

Theta:

-0.01189

TimeExpire

182

 

5

Implied Vol:

0.260261

Volatility

25%

 

6

Vega:

0.128364

InterestRate

6.00%

 

7

Rho:

0.154526

YieldRate

2.00%

 

8

Psi:

-0.18378

MarketPrice

6.00

 

9

Lambda:

6.281387

TimeFormat

Days

 

11

Strike Sensitivity:

-0.6198

 

 

 

13

Implied Strike:

49.78818

 

 

Calculate all of functions for the same option as the example above, but with dividends. The first dividend is expected to occur in 72 days and the second is expected to occur in 144 days or 72 days from the first dividend. The dividend amount is $1 for both dividends. So,

 

Input

 

Output

Variable

Value

 

Function

Name

Value

ExerciseType

European

 

1

Theoretical:

4.57552

OptionType

Call

 

2

Delta:

0.618305

Asset

53

 

3

Gamma:

0.041688

Strike

50

 

4

Theta:

-0.012

TimeExpire

182

 

5

Implied Vol:

0.354623

Volatility

25%

 

6

Vega:

0.135354

InterestRate

6.00%

 

7

Rho:

0.134529

YieldRate

2.00%

 

8

Psi:

-0.15734

MarketPrice

6.00

 

9

Lambda:

7.162067

TimeFormat

Days

 

11

Strike Sensitivity:

-0.5396

Div Amount

1

 

13

Implied Strike:

47.59264

Time Ex-Div

72

 

 

 

 

Div Frequency

72

 

 

 

 

 

 

See Also

Black-Scholes-French

Whaley

Eurodollar

Binomial

Jump Diffusion

Bjerksund-Stensland

Roll-Geske-Whaley

OptionsMC

 

 

 

Remark

For a further example on this model see the included Excel Template located in the root directory of the add-in. This example can be accessed through the Vanilla Options Template menu item after the add-in has been installed properly.

 

A list of all of the possible Error Messages is included for convenience.