A Neural Network Approach to Predicting Stock Performance John Piefer ECE/CS 539 Project Presentation.

Slides:



Advertisements
Similar presentations
Scott Wiese ECE 539 Professor Hu
Advertisements

Simulation Operations -- Prof. Juran.
Economics 173 Business Statistics Lecture 14 Fall, 2001 Professor J. Petry
Artificial Neural Networks - Introduction -
Optimal resampling using machine learning Jesse McCrosky.
Final Project: Project 9 Part 1: Neural Networks Part 2: Overview of Classifiers Aparna S. Varde April 28, 2005 CS539: Machine Learning Course Instructor:
Swami NatarajanJune 17, 2015 RIT Software Engineering Reliability Engineering.
Data Mining.
Document Classification Comparison Evangel Sarwar, Josh Woolever, Rebecca Zimmerman.
October 14, 2010Neural Networks Lecture 12: Backpropagation Examples 1 Example I: Predicting the Weather We decide (or experimentally determine) to use.
The Analysis of Variance
October 7, 2010Neural Networks Lecture 10: Setting Backpropagation Parameters 1 Creating Data Representations On the other hand, sets of orthogonal vectors.
Text Us:
Face Recognition Using Neural Networks Presented By: Hadis Mohseni Leila Taghavi Atefeh Mirsafian.
DATA MINING Team #1 Kristen Durst Mark Gillespie Banan Mandura University of DaytonMBA APR 09.
Spreadsheet-Based Decision Support Systems Chapter 22:
WJEC Applied ICT Spreadsheet Skills 1.Introduction to Financial Modelling Definition A model is a program which has been developed to copy the way.
Hugo Woolf CS Research 2009 Morphology based OCR.
10/7/ Financial Economics Chapter /7/ Financial Investment Economic investment Paying for new additions to the capital stock or new.
Outline What Neural Networks are and why they are desirable Historical background Applications Strengths neural networks and advantages Status N.N and.
Interactive Power Point Evaluating Your Program. Evaluating your Program First – Review the Steps Step 1 ◦State overall objectives Step 2 ◦State desired.
Back-Propagation MLP Neural Network Optimizer ECE 539 Andrew Beckwith.
1 Integration of Neural Network and Fuzzy system for Stock Price Prediction Student : Dah-Sheng Lee Professor: Hahn-Ming Lee Date:5 December 2003.
Sponsor: Dr. K.C. Chang Tony Chen Ehsan Esmaeilzadeh Ali Jarvandi Ning Lin Ryan O’Neil Spring 2010.
Yaomin Jin Design of Experiments Morris Method.
CAPTCHA solving Tianhui Cai Period 3. CAPTCHAs Completely Automated Public Turing tests to tell Computers and Humans Apart Determines whether a user is.
Investments There are many different reasons to invest: University/college House Kids’ future Life Insurance (Cash Surrender) Retirement Travel & saving.
ICT IGCSE.  Introducing or changing a system needs careful planning  Why?
Tutorial th Nov. Outline Hints for assignment 3 Score of assignment 2 (distributed in class)
Ensembles. Ensemble Methods l Construct a set of classifiers from training data l Predict class label of previously unseen records by aggregating predictions.
Copyright © 2001 by Harcourt, Inc. All rights reserved.1 Chapter 4: Option Pricing Models: The Binomial Model Models are like cars: you can have the best.
Data Mining Application: CART. CART: Binary Recursion Decision Tree program from Salford Systeems 30-day evaluation copy from.
Design and Implementation of a Dynamic Data MLP to Predict Motion Picture Revenue David A. Gerasimow.
Prediction of the Foreign Exchange Market Using Classifying Neural Network Doug Moll Chad Zeman.
Copyright © 2009 Cengage Learning 22.1 Chapter 22 Decision Analysis.
Copyright © 2005 Brooks/Cole, a division of Thomson Learning, Inc Chapter 23 Decision Analysis.
CSC321 Introduction to Neural Networks and Machine Learning Lecture 3: Learning in multi-layer networks Geoffrey Hinton.
Artificial Intelligence, Expert Systems, and Neural Networks Group 10 Cameron Kinard Leaundre Zeno Heath Carley Megan Wiedmaier.
An Artificial Neural Network Approach to Surface Waviness Prediction in Surface Finishing Process by Chi Ngo ECE/ME 539 Class Project.
Over-Trained Network Node Removal and Neurotransmitter-Inspired Artificial Neural Networks By: Kyle Wray.
AI & Machine Learning Libraries By Logan Kearsley.
Artificial Neural Networks Approach to Stock Prediction Presented by Justin Jaeck.
Market Forecasting using (2D) 2 PCA + RBFNN BY: DANNY SANCHEZ.
Neural Networks Presented by M. Abbasi Course lecturer: Dr.Tohidkhah.
Chapter 7 An Introduction to Portfolio Management.
Chapter 7 Introduction to Sampling Distributions Business Statistics: QMIS 220, by Dr. M. Zainal.
Artificial Neural Network System to Predict Golf Score on the PGA Tour ECE 539 – Fall 2003 Final Project Robert Steffes ID:
CPH Dr. Charnigo Chap. 11 Notes Figure 11.2 provides a diagram which shows, at a glance, what a neural network does. Inputs X 1, X 2,.., X P are.
Intro. ANN & Fuzzy Systems Lecture 11. MLP (III): Back-Propagation.
Chapter 11 – Neural Nets © Galit Shmueli and Peter Bruce 2010 Data Mining for Business Intelligence Shmueli, Patel & Bruce.
Who Cares About the Arts? Predicting Formal Arts Participation from Survey Data Angela Han ECE 539 December 2005.
Facial Detection via Convolutional Neural Network Nathan Schneider.
Outline Problem Description Data Acquisition Method Overview
Lecture 12. MLP (IV): Programming & Implementation
Predicting Stock Prices with Multi-Layer Perceptron
Advanced Analytics Using Enterprise Miner
Lecture 12. MLP (IV): Programming & Implementation
Lecture 9 MLP (I): Feed-forward Model
Lecture 11. MLP (III): Back-Propagation
Training a Neural Network
Zhengjun Pan and Hamid Bolouri Department of Computer Science
Neural Networks and Their Application in the Fields of Coporate Finance By Eric Séverin Hanna Viinikainen.
network of simple neuron-like computing elements
Introduction to Neural Networks And Their Applications - Basics
Word Embedding Word2Vec.
Aleysha Becker Ece 539, Fall 2018
Zip Codes and Neural Networks: Machine Learning for
III. Introduction to Neural Networks And Their Applications - Basics
Using Clustering to Make Prediction Intervals For Neural Networks
Lesson 3.2 Product Planning
Presentation transcript:

A Neural Network Approach to Predicting Stock Performance John Piefer ECE/CS 539 Project Presentation

Presentation Outline Introduction Problem Description Neural Network Design –Data Format –Program Description (code in Appendix B of report) –Default Network Parameters Selected Results Discussion –Limitations of my model –Comparison with model from Conclusion

Introduction Predicting stock performance is a very large and profitable area of study Many companies have developed stock predictors based on neural networks This technique has proven successful in aiding the decisions of investors Can give an edge to beginning investors who don’t have a lifetime of experience

Problem Description Collect a sufficient amount of historical stock data Using this data, train a neural network Once trained, the neural network can be used to predict stock behavior Need to some way to gauge value of results – I will compare with as well as compare with what actually happened Advantages –Neural network can be trained with a very large amount of data. Years, decades, even centuries –Able to consider a “lifetime” worth of data when making a prediction –Completely unbiased Disadvantages –No way to predict unexpected factors, i.e. natural disaster, legal problems, etc.

Neural Network Design I will use back propagation learning on a MLP with one hidden layer –This decision is based on previous success –Due to time restraints, fairly easy to use This will be approached as an approximation problem, but with classification in mind –I will predict an exact value, but we really care about whether the network predicts the general behavior correctly because that is how we make or lose money –I believe the actual output will give a better idea of what to expect. If it is close to 0, that doesn’t tell us much. But if it is +5, that gives a better indication that it will increase – the network is more “sure” Training will be done using matlab programs, including a modified version of ‘bpappro.m’ written by professor Yu Hen Hu Network will have one output: the predicted value for the next day

Data Format Stock data for various companies will be downloaded from the S&P 500 data pageS&P 500 –I will write a C++ program (datagen.cpp) to put the data into matrix form to be used by matlab (See Appendix A of report for code) Only the stock price will be considered The data will be input as the change in stock price from open to close –Ex: $5 open, $6 close  +1 is the actual value used –Ex: $5 open, $4 close  -1 is the actual value used A certain number of samples will be used as inputs, e.g. 20 samples, user can specify in datagen.cpp

Data Format, cont’d The target value will be the last column, corresponding to the change in price the next day Target values will become inputs in subsequent samples as follows –Ex: [ ]  -2 is target –next sample is [ ] –next sample is [+0.5 –2 +3 …] etc This allows for more training samples (apx. 250 for one year worth of data)

Default Network Parameters These are the default network parameters, determined by running experiments Hidden Neurons (H): 18 Learning Rate (alpha): 0.4 Momentum Constant (mom): 0.75 Max Epochs (nepoch): 2000 Epoch Size (K): 24

Program Description – pred.m Built on ‘bpappro.m’ by Yu Hen Hu Trains neural network and predicts the next day(s), giving an exact value for each prediction –Usage: [Predicted,flagpct,flag1,flag2] = pred(Stockdata, H, alpha, mom, nepoch, K, days) –Predicted: vector of the predictions - [day1 day2 …] –flagpct: the percent of times it predicted the wrong behavior on the training set –flag1: the number of “type 1 flags” – predicted an increase but it actually decreased the next day –flag2: the number of “type 2 flags” – predicted a decrease but it actually increased the next day –Stockdata: the matrix generated by datagen.cpp –days: the number of days to predict (default: 1) –All other intputs are the network parameters specified on the previous page Also outputs some statistics about the training set

Program Description – sp.m Driver program that calls ‘pred’ User inputs the number of trials to run, sp calls pred that many times, each time getting a new prediction Outputs some statistics about all the trials to be used for making the decision –Also important to look at results from individual trials for any odd behavior

Selected Results Walmart (actual next day: ) –Over 50 trials, I predicted increases 32 times –Overall average of –Type 1 flags: % of the time –Type 2 flags: % of the time –Discussion I would have recommended investing based on these results – would have lost money AT&T Corp (actual next day: ) –Over 40 trials, I predicted increases 29 times –Overall average of –Type 1 flags: % of the time –Type 2 flags: % of the time –Discussion I would have recommended investing based on these results – would have made money

Selected Results, cont’d America Online (actual next day: ) –Over 50 trials, I predicted increases 25 times and decreases 25 times –Overall average value of –Type 1 flags: % of the time –Type 2 flags: 8.051% of the time This is a very good overall classification rate ( %) –Discussion Not consistent enough to make a decision No majority of predicted increases or decreases Overall value is close to 0, could easily drop below 0 See report for six more companies and more detailed analysis of results Also see Appendix A of report for sample graphs for each company

Discussion Overall results –Predictions were generally not uniform over all trials, less consistent means the models are not very “sure” based on data This leads to more risky decisions –Shows a lot of promise - good classification rates (predicted increases/decreases correctly) –Showed a tendency to predict more increases, even when actual behavior was a decrease (see report for more discussion on this) Limitations of my model –Only considers stock price, and only one year’s worth of data –Only one output, maybe better to predict more than one day ahead Comaprison with –Walmart: both predicted increase, actually decreased –AOL: I said uncertain, they predicted increase –AT&T: both predicted increase, actually increased

Conclusion My model shows promise, but needs improvement before becoming an effective aid –Needs more data, possibly more types of data No human or computer can perfectly predict the volatile stock market Under “normal” conditions, in most cases, a good neural network will outperform most other current stock market predictors and be a very worthwhile, and potentially profitable aid to investors Should be used as an aid only!