Project Dow: Extending EclipseTrader Emmanuel Sotelo Fall 2008.

Slides:



Advertisements
Similar presentations
MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Advertisements

MDI 2010, Oslo, Norway Behavioural Interoperability to Support Model-Driven Systems Integration Alek Radjenovic, Richard Paige The University of York,
Designing Reusable Frameworks for Test Automation
RDz and Process Integration Using Menu Manager and HATS to customize your RDz installation David Myers.
Tahir Nawaz Introduction to.NET Framework. .NET – What Is It? Software platform Language neutral In other words:.NET is not a language (Runtime and a.
IAAnalyzer: Towards a Model-Driven Modeling and Analysis Framework for C ONNECT(ors) Massimo Tivoli, University of L’Aquila (UNIVAQ)
Financial Data Calculator© Produced by: Mathematical Investment Decisions, Inc. 95 West Gate Drive – 2 nd Floor Cherry Hill, NJ Web site:
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
Data Analytics and Dynamic Languages Lee E. Edlefsen, Ph.D. VP of Engineering 1.
The Decision-Making Process IT Brainpower
COMS 4115 Programming Language and Translator Tsung-Kai Lin(tl2450) Jie Huang(jh3105) Fang Da(fd2263) Ran Wang(rw2409) Shao-Chuan Wang(sw2644) Computer.
Eclipse[10] MIPSinEclipse. Overview Goal: To provide a friendly development environment for CS students programming in MIPS (particularly CS33 at UCLA),
Restaurant Dining System Donald Kaulukukui. Introduction ► Team manager = ME ► Secretary = ME ► President = ME ► R & D = ME ► Tester = ME.
Mr. Perminous KAHOME, University of Nairobi, Nairobi, Kenya. Dr. Elisha T.O. OPIYO, SCI, University of Nairobi, Nairobi, Kenya. Prof. William OKELLO-ODONGO,
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
Introduction to Software Testing
SmarTrader Analytical/research software system © ITC Software.
Introduction to Programming G50PRO University of Nottingham Unit 1 : Introduction Paul Tennent
SOA, BPM, BPEL, jBPM.
Artificial Neural Networks:
Model Bank Testing Accelerators “Ready-to-use” test scenarios to reduce effort, time and money.
The FIX Protocol as an Effective Solution for Algorithmic Trading Kevin Houstoun, Co-chair FPL Global Technical Committee, Consultant to HSBC.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
RUP Implementation and Testing
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
COMP 410 & Sky.NET May 2 nd, What is COMP 410? Forming an independent company The customer The planning Learning teamwork.
Chapter 6 Supporting Processes with ERP Systems Copyright © 2013 Pearson Education, Inc. Publishing as Prentice Hall 6-1.
Dr. Anton Fokin The Svedberg Laboratory, Sweden. Outline R-Quant is a software toolbox, which provides a financial researcher or quantitative investor.
Robotics Simulation (Skynet) Andrew Townsend Advisor: Professor Grant Braught.
Workbench Overview Dwight Deugo Nesa Matic
Simulating genes operation and interaction Rekubratsky V.A., Korotkova M.A. Cetre “Bioengineering” RAS Moscow Physical Engineering Institure (State University)
Jan Hatje, DESY CSS ITER March 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
GEONS Ground Support System Java 7, JavaFX and the NetBeans Platform supporting NASA Missions Operations.
Guide to Programming with Python Chapter One Getting Started: The Game Over Program.
Operated by Los Alamos National Security, LLC for NNSA U N C L A S S I F I E D Slide 1 LANL-stor and the Challenges of Evolutionary Development Managing.
What Is Java? According to Sun in a white paper: Java: A simple, object-oriented, network-savvy, interpreted, robust, secure, architecture-neutral, portable,
Neural Networks II By Jinhwa Kim. 2 Neural Computing is a problem solving methodology that attempts to mimic how human brain function Artificial Neural.
Ad Hoc Graphical Reports Ad Hoc Graphical Reports Copyright © Team #4 CSCI 6838 Spring CSCI Research Project and Seminar Team# 4 (
SOA-25: Data Distribution Solutions Using DataXtend ® Semantic Integrator for Sonic ™ ESB Users Jim Barton Solution Architect.
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
By N.Gopinath AP/CSE. There are 5 categories of Decision support tools, They are; 1. Reporting 2. Managed Query 3. Executive Information Systems 4. OLAP.
Design Patterns -- Omkar. Introduction  When do we use design patterns  Uses of design patterns  Classification of design patterns  Creational design.
NCBI Genome Workbench Chuong Huynh NIH/NLM/NCBI Sao Paulo, Brasil July 15, 2004 Slides from Michael Dicuccio’s Genome Workbench.
Quick overview of ASP.NET Ajax Ajax deep-dive Cover some key real-world problems Discuss solutions, patterns, opportunities Lots of demos And more of.
PLUG IT IN 5 Intelligent Systems. 1.Introduction to intelligent systems 2.Expert Systems 3.Neural Networks 4.Fuzzy Logic 5.Genetic Algorithms 6.Intelligent.
BOĞAZİÇİ UNIVERSITY DEPARTMENT OF MANAGEMENT INFORMATION SYSTEMS MATLAB AS A DATA MINING ENVIRONMENT.
INFSO-RI Enabling Grids for E-sciencE Ganga 4 – The Ganga Evolution Andrew Maier.
Visualization in Problem Solving Environments Amit Goel Department of Computer Science Virginia Tech June 14, 1999.
Over-Trained Network Node Removal and Neurotransmitter-Inspired Artificial Neural Networks By: Kyle Wray.
Mantid Stakeholder Review Nick Draper 01/11/2007.
LanguageLab A Meta-modelling Environment Terje Gjøsæter and Andreas Prinz, University of Agder, Norway SDL Forum 2015, Berlin, Germany.
Artificial Neural Networks Approach to Stock Prediction Presented by Justin Jaeck.
Jan Hatje, DESY CSS GSI Feb. 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
Chapter 7 What Can Computers Do For Me?. How important is the material in this chapter to understanding how a computer works? 4.
Chapter 5 How are software packages developed?. What are the main steps in software project development? Writing Specifications - Analysis Phase Developing.
Financial Data mining and Tools CSCI 4333 Presentation Group 6 Date10th November 2003.
Introduction to Performance Testing Performance testing is the process of determining the speed or effectiveness of a computer, network, software program.
Stock Analysis Tool (SAT) Lalantha Sathkumara Spring 2009.
ECLIPSE RICH CLIENT PLATFORM Part 1 Introduction.
Software testing
1.1 Reasons to study concepts of PLs
COSC-4840 Software Engineering
Introduction to Software Testing
Genome Workbench Chuong Huynh NIH/NLM/NCBI New Delhi, India
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
CS310 Software Engineering Lecturer Dr.Doaa Sami
Execute your Processes
Information Retrieval and Web Design
Demo for Partners and Customers
Presentation transcript:

Project Dow: Extending EclipseTrader Emmanuel Sotelo Fall 2008

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

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.

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.

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?

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

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.

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)

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

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

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

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

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 )

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

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;

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;

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

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

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

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.