I just tried to price the implied dividend for a few active, liquid options markets using current prices and I am not convinced my results are accurate.

I am using American options, and using the put-call parity relationship that exists for European options. I've seen that at-the-money (or near-the-money) options will give a pretty accurate description of implied dividends. If I cannot use put-call parity, what methods are use by practitioners to get an implied dividend?

I used an interpolated treasury yield curve for accurate interest rate values, and priced IDIV with $$IDIV = \text{Stock Price } - \text{Strike } \times e^{-rT} - Call(K,T) - Put(K,T)$$


2016-11-11   -0.040236
2016-11-18   -0.053026
2016-11-25   -0.061683
2016-12-02   -0.065252
2016-12-09   -0.076144
2016-12-16   -0.029923
2016-12-23   -0.100593
2017-01-20    2.660728
2017-02-17    0.092540
2017-03-17    0.131359
2017-04-21    0.263763
2017-06-16    0.538302
2017-07-21    0.613789
2017-11-17    1.193600
2018-01-19    1.352709
2019-01-18    2.295825

For SPY:
2016-11-09    0.006997
2016-11-11    0.008535
2016-11-16   -0.000494
2016-11-18    0.006222
2016-11-23   -0.004294
2016-11-25    0.002909
2016-11-30   -0.006724
2016-12-02   -0.008246
2016-12-07   -0.016802
2016-12-09   -0.013155
2016-12-16    0.799113
2016-12-23    0.741128
2016-12-30    0.519134
2017-01-20    0.872681
2017-02-17    0.850424
2017-03-17    1.253229
2017-03-31    1.446670
2017-06-16    2.063210
2017-06-30    2.285904
2017-09-15    2.853458
2017-09-29    2.841766
2017-12-15    3.393382
2018-01-19    3.920152
2018-03-16    4.540356
2018-06-15    5.096783
2018-09-21    5.609085
2018-12-21    6.897434

These seem far enough off that it's not due to computational errors. What else do I need to account for when using American options to price the implied dividend.

  • $\begingroup$ Just out of curiosity, what is implied volatility curve of AAPL near ATM options as expiration date increases... vs the same curve for SPY (which obviously has no dividends). Second thought: the last time I checked, weekly options traded poorly, especially for non-indexes, so that might be a factor. $\endgroup$
    – user59
    Nov 7, 2016 at 19:09
  • $\begingroup$ SPY does have dividends. IV curve for both flattens as time goes on. I agree that there is a liquidity issue, but how do practitioners estimate implied dividend on less liquid stocks? $\endgroup$
    – Jared
    Nov 7, 2016 at 19:20

1 Answer 1


There are 2 ways to do it. The good-enough way, and the complete and complex way.

The Good-Enough Way

Here you will convert to a situation where you can apply put-call parity.

Begin by finding the strike $K$ where put and call prices are closest to each other. This might not end up being the closest-to-the-money strike, but it will do.

Now run the following algorithm until it converges on your dividend rate $q$ to sufficient accuracy:

  • Begin by setting "equivalent" European prices the same as the American prices
  • Use a pricing algorithm for European options and put-call parity to estimate $q$
  • Use $q$ to find the implied vols $\sigma_{P,C}$ for the put and call in the American algorithm
  • Generate new "equivalent" European prices using $q$ and $\sigma_{P,C}$
  • Go to step 2

This won't be quite correct, since the effective tenor of American options is naturally somewhat less than European, but it will work amazingly well.

Complete and Complex

For a more complete solution, you need to have a volatility model, and a term structure of available option prices that goes beyond your tenor of interest. For example, your model might be that Black-Scholes European volatility looks like

$$ \sigma_{BS}(K, T) = \sigma_0 + \frac{\mu_1}{T}\log\left(\frac{K}{S_0}\right) + \frac{\mu_2}{T^2}\log\left(\frac{K}{S_0}\right)^2 $$

From this you must work out the math for local volatility, and write an American option pricer capable of using those local volatilities.

You then run a nonlinear optimizer to fit this model and your term structure of dividends to the entire option market via the pricing algorithm you wrote.

Final Caveat

Using put-call parity provides us with some rate $q$ such that

$$ F = e^{(r-q)T}(C-P) $$

This does not necessarily mean that $q$ is the dividend rate.

In fact it is comprised of three pieces

$$ q = \epsilon_r + b + \delta $$

which are

  • $\epsilon_r$: The difference between the interest rates you are using and market interest rates
  • $b$: borrow cost of the underlying
  • $\delta$: dividend rate

The borrow cost in particular is often very significant.

  • $\begingroup$ Thanks Brian. Both of these methods require transforming into the volatility space and back. Is there any research along these lines that approach this problem "model-free"? $\endgroup$
    – Jared
    Nov 7, 2016 at 20:17
  • 1
    $\begingroup$ For having worked on the same topic for a while, I completely agree. Very nice answer @Brian B. $\endgroup$
    – Quantuple
    Nov 7, 2016 at 21:25
  • 1
    $\begingroup$ No model-free approach will exist. The only reason it exists for European options is that they are a very special case. If you had different European exercise options, say some ratchet options, you still would not have a model-free approach. American exercise and the random stopping time for option tenor just make the problem even further from model-free. $\endgroup$
    – Brian B
    Nov 8, 2016 at 3:32
  • $\begingroup$ Using the first method, I can get accurate expected dividends for near-term liquid expirations. Once I approach the 1- or 2-year mark (even on SPY which is very liquid) I get results like those I posted. If I am doing a separate calculation that requires the expected dividend (to incorporate in $e^{(r - \delta )T}$) what is the best way to proceed? $\endgroup$
    – Jared
    Nov 10, 2016 at 17:31
  • $\begingroup$ Perhaps that is borrow cost. I have updated the answer. $\endgroup$
    – Brian B
    Nov 11, 2016 at 13:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.