0

An Artificial Neural Network Based Stock Trading System Using Technical Analysis and Big Data Framework

The model developed first converts the financial time series data into a series of buy-sell-hold trigger signals using the most commonly preferred technical analysis indicators (TA4J is used to calculate technical analysis indicators’ values). Then, a multilayer perceptron (MLP) is trained in the learning stage on the daily stock prices between 1997 and 2007 for all of the Dow 30 stocks. Apache Spark big data framework is used in the training stage. The trained model is then tested with data from 2007 to 2017. The results indicate that by choosing the most appropriate technical indicators, the NN model can achieve comparable results against the buy and hold strategy in most of the cases. Furthermore, fine tuning the technical indicators and/or optimization strategy can enhance the overall trading performance.

We presented a new stock trading and prediction model based on an MLP model, utilizing technical analysis indicator values as features. Big data framework Apache Spark is used in implementation. The model is trained and tested on Dow 30 stocks in order to see the evaluate the model. The results indicate that comparable outcomes are obtained against the baseline buy and hold strategy even without fine tuning and/or optimizing the model parameters. Phases of proposed method is illustrated in below.

Abstract:

In this paper, a neural network-based stock price prediction and trading system using technical analysis indicators is presented. The model developed first converts the financial time series data into a series of buy-sell-hold trigger signals using the most commonly preferred technical analysis indicators. Then, a Multilayer Perceptron (MLP) artificial neural network (ANN) model is trained in the learning stage on the daily stock prices between 1997 and 2007 for all of the Dow30 stocks. Apache Spark big data framework is used in the training stage. The trained model is then tested with data from 2007 to 2017. The results indicate that by choosing the most appropriate technical indicators, the neural network model can achieve comparable results against the Buy and Hold strategy in most of the cases. Furthermore, fine tuning the technical indicators and/or optimization strategy can enhance the overall trading performance.

 

sparkmlpphase

ResearchGate Link: https://www.researchgate.net/publication/316848946_An_Artificial_Neural_Network-based_Stock_Trading_System_Using_Technical_Analysis_and_Big_Data_Framework

ACM Link: http://dl.acm.org/citation.cfm?id=3077294

Github Link: https://github.com/omerbsezer/SparkMlpDow30

TA4J: https://github.com/mdeverdelhan/ta4j

Related Links:

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

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

What is MACD?: https://en.wikipedia.org/wiki/MACD

What is William%R?: https://www.investopedia.com/terms/w/williamsr.asp

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

0

Machine Learning Classification

Machine Learning Classification:

  • Supervised Learning
    • Regression
    • Support Vector Machines
    • Decision Trees
    • K Nearest Neighbour
    • Naive Bayes Classifiers
    • Boosting
    • Ensemble Methods
    • Random Forest Trees
    • Neural Networks [video]
      • Multi Layer Perceptron
      • Back Propagation
      • Deep Neural Networks
        • Deep Multi Layer Perceptron
        • Recurrent Neural Networks
        • Convolutional Neural Networks
          • Le-Nets
          • AlexNets
          • VGG
          • Residual Nets
          • Inception Nets
        • Long Short Term Memory
        • Restricted Boltzmann Machines
        • Deep Belief Nets
        • Autoencoders
  • Unsupervised Learning
    • Clustering
      • KMeans
      • DBSCAN
    • Self Organizing Maps
    • Generative adversarial networks (GANs)
  • Reinforcement Learning
    • Q-Learning
    • Value-Based
    • Policy-Based
    • Model-Based
    • Deep Reinforcement Learning

Machine Learning Algorithms:

  • Computer Vision:
    • Object Detection:
      • Object Detection with Sliding Window
      • R-CNN
      • Fast R-CNN
      • Faster R-CNN
      • YOLO (You look only once)
    • Face Recognition:
      • One Shot Learning
      • Siamese Network
      • FaceNet
      • DeepFace
    • Neural Style Transfer
  • Sequential Models:

Machine Learning Libraries and Tools:

  • Scikit Learn: ML library for Python
  • Tensorflow: An open source machine learning framework with Python
  • Pytorch:  is a deep learning framework with Python
  • Caffe: is a deep learning framework
  • Theano:  “is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently”.
  • DeepLearning4j : “Open-Source, Distributed, Deep Learning Library for the JVM”
  • DarkNet: “Open Source Neural Networks in C”
0

Basic Algorithms

In computer science, there are lots of algorithms that are found and implemented day by day. In this section, many algorithms will be mentioned and shown. Algorithms are analysed in terms of  big-O and theta notations.

  • Insertion Sort,
  • Merge Sort,
  • Selection Sort,
  • Bubble Sort,
  • Quick Sort,
  • Order Statistics Algorithms,
  • Counting Sort,
  • Radix Sort,
  • Bucket Sort,
  • Heap Algorithms,
  • Binary Search Tree Algorithms,
  • Red Black Tree  Algorithms,
  • 2-3 Tree Algorithms,
  • Dynamic Order Statistics Algorithms,
  • Skip Lists,
  • Dynamic Programming Approach,
  • Graph Algorithms,
  • Greedy Algorithm Principle,
  • Prim Algorithm,
  • Kruskal Algorithm,
  • Dijkstra Algorithm,
  • Bellman-Ford Algorithm,
  • Floyd-Warshall Algorithm,
  • Johnson Algorithm,
  • Ford Fulkerson Algorithm,
  • Breadth First Search Algorithm,
  • Uniform Cost Search Algorithm,
  • Depth First Search Algorithm,
  • Depth Limited Search Algorithm,
  • Best First Greedy Search Algorithm,
  • A* Search Algorithm,
  • Local Search Algorithms,
  • Hill Climbing Search,
  • Simulated Annealing Search,
  • Local Beam Search,
  • Genetic Algorithms..