Presentation is loading. Please wait.

Presentation is loading. Please wait.

Project Dow: Extending EclipseTrader Emmanuel Sotelo Fall 2008.

Similar presentations


Presentation on theme: "Project Dow: Extending EclipseTrader Emmanuel Sotelo Fall 2008."— Presentation transcript:

1 Project Dow: Extending EclipseTrader Emmanuel Sotelo Fall 2008

2 Overview Introduction, Motivation & Background Information Project Goals Technological Background Design & Implementation Conclusion

3 Introduction The goal of this project is to extend the functionality of stock analysis program known as EclipseTrader. I intend on adding features to implement additional stock analysis methods and data export capabilities. This project is being developed from the perspective of someone who already uses EclipseTrader and is requesting additional features.

4 Motivation Personal Interest o I am also interested in Business topics such as Economics and Finance. o I am interested in Neural Networks. Professional Interest o I would like to one day work in a business that which deals with these topics. Great opportunity to work on a project that brings my interests together.

5 Background Information It is an analysis method which uses past data (such price & transaction volume) to forecast future price activity. Helps identity potential opportunities for buying and selling a stock. It is objective! This paves the way for systematic approaches to buying and selling. What is Technical Analysis?

6 What is a Technical Indicator? Mathematical transformation applied to stock price data to expose underlying patterns.

7 Project Goals Add the ability to define custom Technical Indicators. Add the ability to backtest custom trading strategies. Add the ability to export data generated by Technical Indicators. Add Neural Network based stock price forecasting capability.

8 Technological Background Open source platform to facilitate application development. Provides developers with GUI components, FileSystem manipulation facilities and other features to make speed up application development. Java based. Compatible across many platforms. Plug-in based architecture allows it to be extended in an object oriented manner. Eclipse Rich Client Platform (RCP)

9 Technological Background Eclipse RCP Application Automated stock data retrieval. Stock data charting. Structured to allow new functionality to be added in. No need to waste time on GUI design & implementation. Also, relevant data structures part of system already. EclipseTrader

10 Technological Background Small, embeddable, Java source interpreter with scripting capabilities. Executes standard Java statements with and expressions. Allows to developers to quickly add scripting capability to their applications. Open Source. BeanShell

11 Technological Background Computational model that mimics biological neural networks. Can learn through “trial and error”. Proper term: Backpropagation. Great at pattern recognition. Artificial Neural Networks

12 Technological Background Artificial Neural Networks Project Dow uses a FeedForward Neural Network. The network is trained using Backpropagation and Simulated Annealing. The network algorithms we use are implemented in Introduction to Neural Networks for Java 2 nd Ed. by Jeff Heaton

13 Design & Implementation EclipseTrader core system Platform Runtime Charts (plug-in) Stock Data Retrieval (plug-in) ProjectDow (plug-in) Workbench Workspace Help etc (plug-in)... Trading (plug-in )

14 Design & Implementation Project Dow Custom Indicator Stock Price Predictor Data Exporter Trading Systems Indicator Algorithmic Plugs in to EclipseTrader

15 Design & Implementation Uses BeanShell to allow the to user define a custom indicator. User code can be written in standard Java or in relaxed syntax. User has access to a stock’s open, high, low, and close price. Also transaction volume. Custom Indicator double sine = Math.sin( bars[0].getHigh() ); double log = Math.log( bars[0].getLow() ); returnValue = sine * log;

16 Design & Implementation Also uses BeanShell to allow the user to define an algorithmic trading strategy. As a result, it works in a very similar way to the Custom Indicator. However different purpose and result. Trading Systems: Algorithmic If(bars[last].getClose() <= 90 ) signal = 1; If(bars[last].getClose() >= 100 ) signal = -1;

17 Design & Implementation Uses indicator data only. User friendly. The user specifies buy/sell conditions in a GUI Faster execution than custom algorithmic system. Some limitations: Can only use up to three indicators. Trading Systems: Indicator

18 Design & Implementation Uses a Neural Network to forecast the next days closing price. Trains the network with the stock’s past closing prices and volume data. Training the network on a separate execution Thread. Training the network can take a long time. Networks can be saved for future use. Done via Serialization Results easy to interpret. Stock Price Predictor

19 Design & Implementation EclipseTrader is in version 0.30 Good and Bad! Found a bug and fixed it! Neural Networks are very complex! Freely available neural network software/frameworks lacks functionality, incomplete, and/or has bugs. Threading Thread creation and interaction with objects. Challenges Encountered

20 Conclusion & Future Work EclipseTrader is now more useful and better than before. In the real world, you rarely build application systems from scratch. You have to work around other peoples code. Demonstrates importance of properly structuring your code. Conclusion Future Work Enable the Neural Network to train with indicator data. Implement a trading system that executes trades based network predictions. Implement Genetic Algorithm methods.


Download ppt "Project Dow: Extending EclipseTrader Emmanuel Sotelo Fall 2008."

Similar presentations


Ads by Google