Main Content

blkprice

Black model for pricing futures options

Description

[Call,Put] = blkprice(Price,Strike,Rate,Time,Volatility) computes European put and call futures option prices using Black's model.

Note

Any input argument can be a scalar, vector, or matrix. If a scalar, then that value is used to price all options. If more than one input is a vector or matrix, then the dimensions of those non-scalar inputs must be the same.

Ensure that Rate, Time, and Volatility are expressed in consistent units of time.

example

Examples

collapse all

This example shows how to price European futures options with exercise prices of $20 that expire in four months. Assume that the current underlying futures price is also $20 with a volatility of 25% per annum. The risk-free rate is 9% per annum.

 [Call, Put] = blkprice(20, 20, 0.09, 4/12, 0.25)
Call = 
1.1166
Put = 
1.1166

Input Arguments

collapse all

Current price of the underlying asset (that is, a futures contract), specified as a numeric value.

Data Types: double

Exercise price of the futures option, specified as a numeric value.

Data Types: double

Annualized continuously compounded risk-free rate of return over the life of the option, specified as a positive decimal number.

Data Types: double

Time to expiration of the option, specified as the number of years. Time must be greater than 0.

Data Types: double

Annualized futures price volatility, specified as a positive decimal number.

Data Types: double

Output Arguments

collapse all

Price of a European call futures option, returned as a matrix.

Price of a European put futures option, returned as a matrix.

References

[1] Hull, John C. Options, Futures, and Other Derivatives. 5th edition, Prentice Hall, , 2003, pp. 287–288.

[2] Black, Fischer. “The Pricing of Commodity Contracts.” Journal of Financial Economics. March 3, 1976, pp. 167–79.

Version History

Introduced before R2006a