OpenBI Docs Buy

QUANT.OPTION.IMPLIEDVOL OpenBI

The volatility at which a European option's Black–Scholes value equals the price paid for it.

Group: Quantitative finance. OpenBI’s own: DAX has no function of this name.

Syntax

QUANT.OPTION.IMPLIEDVOL ( <optionType>, <price>, <spot>, <strike>, <valuationDate>, <expiry>, <riskFreeRate> [, <dividendYield>] )
ParameterTypeDescription
optionTypeText"call" or "put".
priceNumberThe option's price, as quoted.
spotNumberThe price of what the option is on, today.
strikeNumberThe price at which the option lets its holder buy (a call) or sell (a put).
valuationDateDateThe day the option is valued.
expiryDateThe day the option expires; it must come after the valuation date.
riskFreeRateNumberThe risk-free rate as a decimal, continuously compounded.
dividendYieldNumber
optional
A continuous dividend yield (or, for a commodity or a currency, its carry) as a decimal; 0 when left out.

Returns

Number. The implied volatility, a yearly figure as a decimal: 0.213 for 21.3 %.

Remarks

  • It undoes QUANT.OPTION.PRICE for a European option: the price at the volatility it returns is the price given.
  • The volatility is searched for between 0.0001 % and 500 %. A price no volatility can reach, such as one below what the option is worth at once, is an error.
  • There is no style: the price is read as a European option's.
  • Time runs from the valuation date to the expiry in days over 365. The rate, the dividend yield and the volatility are flat over that time.

Compared with DAX

An OpenBI function: DAX has none like it, so a measure or query that uses it works in OpenBI only, not in Power BI or Analysis Services.

Examples

Back to 20 %

The call and the put of QUANT.OPTION.PRICE's first example, priced at 20 % volatility, give 20 % back.

EVALUATE
VAR Today = DATE ( 2026, 1, 1 )
VAR Expiry = DATE ( 2027, 1, 1 )
VAR Call = QUANT.OPTION.PRICE ( "call", 100, 100, Today, Expiry, 0.2, 0.05 )
VAR Put = QUANT.OPTION.PRICE ( "put", 100, 100, Today, Expiry, 0.2, 0.05 )
RETURN
    ROW (
        "From the call", ROUND ( QUANT.OPTION.IMPLIEDVOL ( "call", Call, 100, 100, Today, Expiry, 0.05 ), 10 ),
        "From the put", ROUND ( QUANT.OPTION.IMPLIEDVOL ( "put", Put, 100, 100, Today, Expiry, 0.05 ), 10 )
    )
From the callFrom the put
0.20.2

A cheap call far out of the money

A call at a strike of 150 that costs 0.50 implies a volatility of about 21 %.

EVALUATE
ROW (
    "Implied volatility",
        QUANT.OPTION.IMPLIEDVOL ( "call", 0.5, 100, 150, DATE ( 2026, 1, 1 ), DATE ( 2027, 1, 1 ), 0.05 )
)
Implied volatility
0.213027446414694

QUANT.OPTION.PRICE, QUANT.OPTION.GREEK, QUANT.BOND.YIELD.

Last updated · OpenBI Studio 0.3.74