Skip to content
This repository has been archived by the owner on Mar 23, 2023. It is now read-only.

A Deep Neural-Network based (Deep MLP) Stock Trading System based on Evolutionary (Genetic Algorithm) Optimized Technical Analysis Parameters (using Apache Spark MLlib)

Notifications You must be signed in to change notification settings

omerbsezer/SparkDeepMlpGADow30

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

SparkDeepMlpGADow30

A Deep Neural-Network based Stock Trading System based on Evolutionary Optimized Technical Analysis Parameters

In this study, we propose a stock trading system based on optimized technical analysis parameters for creating buy-sell points using genetic algorithms. The model is developed utilizing Apache Spark big data platform. The optimized parameters are then passed to a deep MLP neural network for buy-sell-hold predictions. Dow 30 stocks are chosen for model validation. Each Dow stock is trained separately using daily close prices between 1996-2016 and tested between 2007-2016. The results indicate that optimizing the technical indicator parameters not only enhances the stock trading performance but also provides a model that might be used as an alternative to Buy and Hold and other standard technical analysis models. The phase of proposed method is illustrated in below.

ga_

Utilizing optimized technical analysis feature parameter values as input features for neural network stock trading system is the basis for our proposed model. We used genetic algorithms to optimize RSI parameters for uptrend and downtrend market conditions. Then, we used those optimized feature values as buy-sell trigger points for our deep neural network data set. We used Dow 30 stocks to validate our model. The results indicate that such a trading system produces comparable or better results when compared with Buy & Hold and other trading systems for a wide range of stocks even for relatively longer periods. The structure of the chromosomes and genes in the chromosomes are shown below.

  • RSI Buy values are created randomly between 5 and 40.
  • RSI Buy intervals are created randomly between 5 and 20 days.
  • RSI Sell values are created randomly between 60 and 95.
  • RSI Sell intervals are created randomly between 5 and 20 days.
  • The same procedure is followed to create 4 genes for uptrend.

chrom

Genetic algorithm phase is illustrated as follows:

ga_phase

ResearchGate: https://www.researchgate.net/publication/320370508_A_Deep_Neural-Network_Based_Stock_Trading_System_Based_on_Evolutionary_Optimized_Technical_Analysis_Parameters

Science Direct Link: http://www.sciencedirect.com/science/article/pii/S1877050917318252

Cite as:

Bibtex:

@article{sezer2017deep,
  title={A Deep Neural-Network Based Stock Trading System Based on Evolutionary Optimized Technical Analysis Parameters},
  author={Sezer, Omer Berat and Ozbayoglu, Murat and Dogdu, Erdogan},
  journal={Procedia Computer Science},
  volume={114},
  pages={473--480},
  year={2017},
  publisher={Elsevier}
}

MLA:

Sezer, Omer Berat, Murat Ozbayoglu, and Erdogan Dogdu. "A Deep Neural-Network Based Stock Trading System Based on Evolutionary Optimized Technical Analysis Parameters." Procedia Computer Science 114 (2017): 473-480

What is Multi Layer Perceptron (MLP)? (General Information): https://en.wikipedia.org/wiki/Multilayer_perceptron

What is Genetic Algorithm?: https://en.wikipedia.org/wiki/Genetic_algorithm

What is Relative Strength Index?: https://en.wikipedia.org/wiki/Relative_strength_index

Apache Spark MLlib: https://spark.apache.org/mllib/

About

A Deep Neural-Network based (Deep MLP) Stock Trading System based on Evolutionary (Genetic Algorithm) Optimized Technical Analysis Parameters (using Apache Spark MLlib)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages