Title: Neural Networks for Options Trading

Who: Lana Yang-Maccini (lyangmac), Saketh Dhulipalla (ssdhulip), Paurav Kananur (pkananur)

Github: https://github.com/lyangmaccini/deeplearning-finalproject Poster (also in Project Media): https://docs.google.com/presentation/d/1cJSwuVcKK6ulESyau1oxku8zSpUGj1DosooYHblkpGo/edit?usp=sharing Check-in 2: https://docs.google.com/document/d/1q3YM76PB9GQI7rn9vgvp3v_evm8_jnqhyFWBnQQ5GE0/edit

Introduction: We are implementing this existing paper: https://arxiv.org/pdf/1901.08943.pdf. The paper’s objectives are to find a quicker and hopefully more accurate way to predict future options prices and implied volatilities. The paper’s authors implement this by creating neural networks to solve three different equations, Black-Scholes, Heston stochastic volatility, and Brent’s iterative root-finding. We chose this paper because we wanted to focus on options trading, and thought it provided a unique perspective on the topic because it tries a variety of different methods and has a different main goal (reducing time required to train) than some other papers did. This is a regression problem.

Related Work:

  • https://cs230.stanford.edu/projects_fall_2019/reports/26260984.pdf: this is a research paper implemented for a Stanford CS class that looks fairly similar in its goals to the research paper we are focusing on. The students implementing the paper use multi-layer perceptrons and LSTMs to predict options prices and volatility from 20-day historical data. We will likely use this implementation as guidance when beginning to create our model, as it only uses the Black-Scholes structure. We can then expand what we’ve learned from our own implementation to form the models based on the other two equations (Heston stochastic volatility and Brent’s iterative root-finding).
  • https://epubs.siam.org/doi/10.1137/080718061: this is a separate paper referenced in our original paper that describes the mathematical method to find prices via the Heston pricing model. We use this to guide our implementation of data generation for our Heston-based neural network. Data: There are many databases that contain historical and real-time data about options pricing. One that we are considering using is the data from polygon.io which is widely used for historical and real-time options pricing. The free option has 5 API calls and 2 years of historical data: https://polygon.io/pricing?product=options. We might need to do some preprocessing to obtain the data, as it’s possible that it will only be accessible in batches. However, once we have a comprehensive overview of the data, there shouldn’t be too much more to do to get it ready for use.

Methodology: We will use the Black-Scholes and Heston models, as well as Brent's iterative root-finding, for options prices to generate 1,000,000 sets of parameters to train the neural network. The Heston model cannot be solved analytically, so we will use a series of mathematical techniques to approximate this data. Inputs are passed through 4 hidden dense layers with dropout, batch normalization, and ReLu activation. We use an Adam optimizer and mean squared error loss and R2 score as our metrics.

Metrics: We will run the model on historical data and real-time data that is not included in the training set (i.e. set aside for the testing set). We can use the random shuffling of indices to randomly sort the entire data set into training and testing data. The notion of accuracy is very appropriate for our project, because the output and all the inputs are numerical, so it’s fairly easy to calculate an accurate quantifier of accuracy. The authors of the paper used mean squared error, mean absolute error, and mean absolute percentage error. They were hoping to find a way to accurately and quickly predict future options prices and implied volatilities, and based different neural networks off of three different financial models. Our base goal is to achieve equal accuracy and runtime to the paper for 1 of the 3 models. Our target goal is to achieve equal accuracy and runtime to the paper for 2 of the 3 models. Our stretch goal is to compare the model (error, consistency, and accuracy) to numerous other deep learning models for options pricing ranging from MLPs to LSTMs. Namely, we want to achieve equal accuracy and runtime to the paper all 3 models.

Ethics:

  • What broader societal issues are relevant to your chosen problem space? This project raises the general question of how income inequality is exacerbated by access to resources in the finance sector. This includes access to historical and real-time pricing data, along with the ability to use models and machine learning to assist in predictive tasks.
  • Why is Deep Learning a good approach to this problem? Deep learning models are a good approach to this problem because they can assist in tasks that require a lot of data to both train and test the model. Also, feature learning is a capability that is both important in solving economic problems and also a key part of deep learning models.

Division of labor: We will mainly divide this by each specific model, because it seems like a natural way to split the work, especially for review before we begin implementing the model itself. Lana will focus on understanding the Black-Scholes model, Saketh on the Heston model, and Paurav on Brent’s model. We will devise a plan for approaching the general network structures together, and then work on the specific details of each model separately. In the case of issues or unexpected confusions, we will come back together to try to figure out a way forward.

Built With

Share this project:

Updates