Calculate the volatility risk premium: the model-free implied volatility over the coming days minus the volatility the stock actually realized over the same span in the past, and the same in variance units. Implied volatility usually exceeds realized volatility, because investors pay a premium for protection, which is the return option sellers earn. A premium that turns negative means the market prices less movement than it has just seen, often after a shock.

  • Realized Volatility = standard deviation of the daily returns over the last days calendar days, annualized
  • Volatility Risk Premium = Implied Volatility - Realized Volatility
  • Variance Risk Premium = Implied Volatility² - Realized Volatility²

Both compare the implied figure with the realized one of the past, which is known today, as Bollerslev, Tauchen and Zhou (2009) do. Carr and Wu (2009) measure the premium after the fact instead: the variance realized over the coming days minus the variance swap rate, which is negative on average.

For more information, see the following papers:

  • Bollerslev, T., Tauchen, G. and Zhou, H. (2009). “Expected Stock Returns and Variance Risk Premia.” The Review of Financial Studies, 22(11), 4463-4492.
  • Carr, P. and Wu, L. (2009). “Variance Risk Premiums.” The Review of Financial Studies, 22(3), 1311-1341.

Also known as: VRP, implied minus realized volatility, variance risk premium.

Volatility Risk Premium in Python or via the MCP

Install the Finance Toolkit with:

pip install financetoolkit -U

Then call get_volatility_risk_premium as shown below.

from financetoolkit import Toolkit

toolkit = Toolkit(["QQQ", "AAPL", "TSLA"], api_key="FINANCIAL_MODELING_PREP_KEY")

toolkit.options.get_volatility_risk_premium()

Or, after setting up the Finance Toolkit MCP, ask:

How much higher is the implied volatility of QQQ, Apple and Tesla than their realized volatility?

Which returns:

  Implied Volatility Realized Volatility Volatility Risk Premium Variance Risk Premium Implied to Realized Ratio
QQQ 0.2846 0.1769 0.1077 0.0497 1.609
AAPL 0.2897 0.1641 0.1256 0.057 1.7653
TSLA 0.4357 0.3516 0.0841 0.0662 1.2392

Parameters

get_volatility_risk_premium accepts the following parameters.

ParameterTypeDescriptionExample
daysintThe horizon in calendar days of both volatilities. Defaults to 30.360
roundingint | NoneThe number of decimals to round the results to. Defaults to None, which uses the Toolkit’s rounding.2
Share