Documentation Center

  • Trial Software
  • Product Updates


Black model for pricing futures options


[Call, Put] = blkprice(Price, Strike, Rate, Time, Volatility)



Current price of the underlying asset (a futures contract).


Strike or exercise price of the futures option.


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


Time until expiration of the option, expressed in years. Must be greater than 0.


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


[Call, Put] = blkprice(ForwardPrice, Strike, Rate, Time, Volatility) uses Black's model to compute European put and call futures option prices.

Any input argument may be a scalar, vector, or matrix. When a value is a scalar, that value is used to compute the implied volatility from all options. If more than one input is a vector or matrix, the dimensions of all non-scalar inputs must be identical.

Rate, Time, and Volatility must be expressed in consistent units of time.


expand all

Compute European Put and Call Futures Option Prices Using Black's Model

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 =


Put =



Hull, John C., Options, Futures, and Other Derivatives, Prentice Hall, 5th edition, 2003, pp. 287-288.

Black, Fischer, "The Pricing of Commodity Contracts," Journal of Financial Economics, March 3, 1976, pp. 167-179.

See Also


Was this topic helpful?