Skip navigation links

Package com.dxfeed.event.option

Provides option-related market event classes.

See: Description

Package com.dxfeed.event.option Description

Provides option-related market event classes.

The model

European call and put options of the same series and strike satisfy call-put parity equality of the following form: \[ C - P = {U \over Q(\tau) + 1} - {K \over R(\tau) + 1} \] where:

Non-standard or adjusted options (when the number of underlying deliverables per contract is different from the option price dollar value multiplier) strike price and/or option prices may be represented in different units that underlying price. For the purposes of the above formulae both strike price, call price, and put price has to be represented in the same units as the underlying price using an appropriate additional multipliers.

Here, the simple dividend return and interest return are related to the annualized continuously compounded dividend yield \(q\) and the annualized continuously compounded interest rate \(r\) via the following formulae: \[ Q(\tau) = e^{q \tau} - 1 \] \[ R(\tau) = e^{r \tau} - 1 \] where \(\tau\) is the duration of the option represented in fractions of a year.

Forward price and cost of carry

Forward price of the underlying \( F \) can be expressed in the terms of simple returns \( Q(\tau) \) and \( R(\tau) \): \[ F = { R(\tau) + 1 \over Q(\tau) + 1 } U = e^{(r - q) \tau} U = e^{b \tau} U \] Here \(b\) is an annualized continuously compounded cost of carry which relates to dividend yield \(q\) and interest rate \(r\) via the following formula: \[ b = r - q \] The discount factor \(D\) that ties underlying price to forward prices as \( U = D F \) can be expressed as: \[ D = { Q(\tau) + 1 \over R(\tau) + 1 } = e^{-b \tau} \]

Futures as underlying

Theoretically futures underlyings have zero cost of carry, so for an options on futures \( q = r \) and, correspondingly \( Q(\tau) = R(\tau) \) and \( U = F \).


Black-Scholes formula can be directly expressed in the terms of simple returns \( Q(\tau) \) and \( R(\tau) \) \[ C = {U N(d_+) \over Q(\tau) + 1} - {K N(d_-) \over R(\tau) + 1} = e^{-r \tau} (F N(d_+) - K N(d_-)) \] \[ P = {K N(-d_-) \over R(\tau) + 1} - {U N(-d_+) \over Q(\tau) + 1} = e^{-r \tau} (K N(-d_-) - F N(-d_+)) \] \[ d_\pm = {1 \over \sigma(\tau)} ln \left[ {U (R(\tau) + 1) \over K (Q(\tau) + 1)} \right] \pm {1 \over 2} \sigma(\tau) = {1 \over \sigma(\tau)} ln \left[ {F \over K } \right] \pm {1 \over 2} \sigma(\tau) \] where:

Here, the time-depended volatility \( \sigma(\tau) \) is related to the annualized volatility \(\sigma\) via a simple formula: \[ \sigma(\tau) = \sigma \sqrt{\tau} \]

Implied rates

Implied \( Q(\tau) \) and \( R(\tau) \) are computed by dxPrice for each option series and are distributed in TheoPrice event for each option and in Series event for each option series. Both of these values are not necessarily non-negative, because they represent a mix of different factors and correspond to effective dividends and interests experienced by option market makers, while include such factors as cost of carry for both the underlying instrument and for the underlying currency.

Implied simple dividend rate \( Q(\tau) \) and interest rate \( R(\tau) \) are available via TheoPrice.getDividend and TheoPrice.getInterest or Series.getDividend and Series.getInterest methods correspondingly.

American options

Call-put parity for American options is an inequality of the following form: \[ C - P \ge U - K \]

Implied simple dividend return \( Q(\tau) \) and simple interest return \( R(\tau) \) are considered to be zero for American options.

Skip navigation links

Copyright © 2002-2021 Devexperts LLC. All Rights Reserved.