Summer Project


You are expected to design, code, and present to the class a programming project that has a purpose (solves a real problem) for a real life user.

Introduction

Our Project is a Stock Market Prediction tool that utilises Machine Learning algorithms in models such as Linear Regression and Support Vector Machine in order to forecast the Stock Market changes for a certain period of time in the future.

Users would be anyone over the age of 18,* attempting to build or to improve their financial portfolio. __Our tool will aid them in investing and buying shares from companies as well allowing them to maximise the profits and minimise their losses. It also allows more inexperienced users to attain an understanding of the movement of the Stock Market* allowing them to make informed decisions about their future.

Distribution

Our aims are to develop the tool as an Official Python Package and upload it to PyPi as an open-source package for use all around the world. Through this, we can make our project much more accessible and also increase its development by decreasing possible bugs through user engagement with platforms such as Github allowing users to make Issues and Pull Requests which can aid the development of the tool. We want to allow for multiple different algorithms to be used through the use of multiple function and iteration to make the results as accurate and reliable as possible. We will release the project in iteration ranging fromv0.1a to v2.1+ using Github release system and will package and make public each major update, i.e. one with a major bug fix or a new version such as v3.0.

Integration

The users are people interested in finance or the economy and our tool can be easily integrated into websites using the Django or Flask framework for Python or in applications on desktop using C++ or mobile through Java and/or Swift. Another alternative would be to develop a RESTful API with Flask (which has been made) and then integrating this with a NodeJS application on the Electron framework using AJAX requests in Back-End in order to transfer the data to a modern-looking GUI or application.

Releases

This may not be entirely up-to-date. For download, reference the PyPi site or the Github site.

****RTFD****

__ARU300 released this 8 hours ago · 4 commits to master since this release

Another release for RTFD, updating the mkdocs.yml.

ReadTheDoc

ARU300 released this 9 hours ago · 7 commits to master since this release

Added a .readthedocs.yml and a mkdir.yml in order to integrate support with the ReadTheDocsSite.

Documentation is now live on Read The Docs.

LSTM

ARU300 released this yesterday · 21 commits to master since this release

Since v1.0 we have developed a new method of Stock Market Prediction using the Keras libraries LSTM Model.

The API has also been updated to include these changes.

The next major update will entail document changes and maybe a deployment to repl.it or Heroku.

API Prediction

ARU300 released this on 26 Jul · 32 commits to master since this release

First Release!

Since v0.1a, we have made a few developments in terms of software.

Errors

We have been ironing out errors in the code and making sure that the Linear Regression and Support Vector Machine algorithms work as expected.

New Additions

We have developed an API and website in Flask that runs on https:\\localhost:5000. The API can be used to output the predictions.

Future Development

We are going to integrate an LSTM algorithm + some other algorithms and iteration to find the best prediction possible. This is expected to be our v2.0 release. The v1.X updates may mainly include website changes and documentation changes.

Stock Analysis

__ARU300 released this on 5 Jul · 32 commits to master since this release

Stock Anlaysis

What works?

Disclaimer: The project has only been active for around 2 days with under 12hrs of work.

Our project is licensed under the GNU General Public License v3.0.

Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.