BLACKPTPRC Function

Calculates put prices for European options on futures, based on the Black model.

Category: Financial

Syntax

BLACKPTPRC(E, t, F, r, sigma)

Required Arguments

E

is a nonmissing, positive value that specifies exercise price.

Requirement Specify E and F in the same units.

t

is a nonmissing value that specifies time to maturity.

F

is a nonmissing, positive value that specifies future price.

Requirement Specify F and E in the same units.

r

is a nonmissing, positive fraction that specifies the risk-free interest rate between the present time and t.

Requirement Specify a value for r for the same time period as the unit of t.

sigma

is a nonmissing, positive fraction that specifies the volatility (the square root of the variance of r).

Requirement Specify a value for sigma for the same time period as the unit of t.

Details

The BLACKPTPRC function calculates put prices for European options on futures, based on the Black model. The function is based on the following relationship:
P U T = C A L L + ε - r t ( E - F )
Arguments
E
specifies the exercise price of the option.
r
specifies the risk-free interest rate for period t.
t
specifies the time to expiration.
F
specifies future price.
d 1 = ( ln ( F E ) + ( σ 2 2 ) t ) σ t d 2 = d 1 - σ t
The following arguments apply to the preceding equation:
σ
specifies the volatility of the underlying asset.
σ 2
specifies the variance of the rate of return.
For the special case of t=0, the following equation is true:
P U T = max ( ( E - F ) , 0 )
For information about the basics of pricing, see Using Pricing Functions.

Comparisons

The BLACKPTPRC function calculates put prices for European options on futures, based on the Black model. The BLACKCLPRC function calculates call prices for European options on futures, based on the Black model. These functions return a scalar value.

Example

The following SAS statements produce these results.
SAS Statement
Result
----+----1----+-—-2--
a=blackptprc(1000, .5, 950, 4, 2);
put a;
72.102451281
b=blackptprc(850, 2.5, 125, 3, 1);
put b;
0.4136352354
c=blackptprc(7500, .9, 950, 3, 2);
put c;
458.07704789
d=blackptprc(5000, -.5, 237, 3, 2);
put d;
           0

See Also

Functions: