Skip to content
All library documents

Using Machine Learning to Forecast Option Pricing Errors

Article Quant Q&A · Author: berkorbay

Summary

The document examines why an option pricing model that performs well in one historical period may perform poorly in another. It proposes grouping contracts dynamically from past pricing errors, then using machine learning to forecast next-week errors from a rolling history and compare forecasting methods across datasets. The contracts concern one underlying asset and are distinguished by features such as moneyness and maturity; models are evaluated out of sample with continuously updated fitted parameters.

The author raises practical questions about evaluating forecasts when relative error magnifies differences, dependence among contracts sharing an underlying and observation date, and how to explain changes in pricing and forecast errors. Possible extensions include comparing implied-volatility errors and presenting the study for a statistically literate audience. The document is a research proposal rather than a report of findings: it gives no empirical results or settled answers, and its proposed validation design does not by itself establish that forecasts will generalize beyond the sampled periods.

Key ideas

  • Option pricing model rankings can change across time periods and contract groups.
  • The proposal uses past pricing errors to form changing groups and forecast future errors.
  • Relative error measures can become unstable when the comparison value is small.
  • Contracts on one underlying may have dependent errors across strikes, maturities, and dates.
  • The document proposes further analysis but reports no results or validated method.

Tags

Full text
# How to reduce data dependence for empirically assessing option pricing model performance?


# How to reduce data dependence for empirically assessing option pricing model performance?












I am preparing a paper about mitigating assessment failures for option pricing models. For the sake of simpliciy, suppose we are talkin about European options. In basic terms, what I would like to say is

- Suppose you have two option pricing models (say A and B) and two contract data sets (say, X and Y). X and Y belong to the same underlying asset but different time periods $[T_0^x,T_T^x]$ and $[T_0^y,T_T^y]$. Also suppose Y is at a later date than X.

- I price all the contracts in those data sets out-of-sample using continuously updated fitted parameters. (i.e. For contracts at time $T_\tau$ I use data from $T_{\tau^\prime}, \tau^\prime < \tau$).

- I calculate the pricing errors for each contract in the data sets $\epsilon(\hat{P^A_i},P_i)$ (say I use ARPE = $|\hat{P_i}-P_i|/P_i$).

- According to my performance metric, suppose model A shows better results than B for data set X but worse results for data set Y.

- Someone checking my experiment during a time between X and Y would think A is a better model than B (given the experiment limitations). But results of X is not an indicator of future performance, hence the results of Y.

- Now, generalize it a bit by with multiple time frames (X, Y, Z, W, Q....) and contract space is divided into groups of moneyness and maturity (e.g. contracts between 30-90 days ATM options). Also suppose better model changes frequently (i.e. for X A is better, for Y B is better but for Z A is better again for the same moneyness maturity group).

- To sum up, my pricing errors within the groups have low predictive power. I want to "decrease the prediction error of the pricing errors".

Here is my methodology to improve

- Instead of predefined groups, I employ some machine learning algorithms to form the groups dynamically using pricing errors of the past data. I update the groups periodically.

- I use 10 different data sets for cross validation. For each data sets I train my ML algorithms using the past 6-months of pricing errors to predict the next week's pricing errors. My performance metric is the difference between the predicted pricing error vs the actual pricing error for each contract.

- Then I assess the effectiveness of each ML algorithm to find the most suitable algorithm for the given pricing model.

- Here is a previous work.

My questions are

- If I use relative errors I sometimes get huge errors because of the denominator effect. For instance, for the same group, if I estimate the average ARPE as 0.5% but a contract has a ARPE of 5% the relative error of the prediction error is 900%! Is there a way to mitigate that? (I am thinking about using direct absolute errors.)

- My data has strong dependence as my underlying is the same and for the same time point only time to maturity and moneyness differences.

- What types of analyses or tests can I do to explain these shifts in both pricing errors and prediction errors? Until now, I was just doing aggregate analyses based on data sets and as a whole. (For instance, I was thinking about making the same experiment with IV errors and compare models.)

- What should be my approach to present it to an audience with little background on quantitative finance but are proficient in statistics and data mining?

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.