Skip to content

Capstone-Projects-2023-Spring/project-algorithmic-trading

Repository files navigation

Open in Codespaces

Tradester

Report Issue on Jira Deploy Docs Documentation Website Link

Running Locally

If you would like to run Tradester locally, you can do so using node.js to run the frontend and poetry to run the backend. You will also need to receive a .env file from us and instructions on how to use it (we have secrets we don't want to give out to just anyone). We suggest using nvm (macos, linux) or nvm-windows to install the current version of node and npm, click here if you don't have those installed yet. poetry can be downloaded here, and you will need the latest version of python, available here.

npm and poetry will create virtual environments with the required dependencies to run the frontend and backend, respectively.

Open two terminals (or shell applications). In one terminal, deploy the frontend by navigating to /webapp and inputing the following:

npm install
npm run start

In the other terminal, navigate to /tradester_backend (not /tradester_backend/tradester_backend), and deploy the backend with the following:

poetry install
poetry run python3 manage.py runserver

In both cases, if no new packages have been added to the project, there is no need to run the install command, but it is a good habit to run the install as an early debug if you cannot get a new version of the project to run. Also, I use the command python3 as shorthand for the latest version of python.

Keywords

Section 2, python, react, machine learning, simulated stock trading

Project Abstract

This document proposes an educational webb application for simulated stock trading using real stock data and a machine learning model to predict future stock values. The user may make an account, choose an amount to being trading with, and begin viewing, purchasing, and selling stocks in a simualted environment. This application is for education, and as such the user may connect to other user accounts to compare their own strategies to their peers.

High Level Requirement

The user may interact with a user interface to show stock data accessed through the Alpha Vantage API, including graphs with relevant data. The user may choose an amount to simulate trading with, then make simulated purchases and sales of stocks based on predictions made by our machine learning model, real stock data, and relevant indicators. A social function allows users to connect their accounts to those of other users and compare trading choices.

Conceptual Design

This simulated trading application will utilize the python programming language with the NumPy and pandas libraries. Stock data will be accessed through the Alpha Vantage API, as it is free. This app will also be able to be run on any modern 64 bit Windows, MacOS and Linux operating systems.

Background

The difference between this app and others are as follows:

This is a free product

It integrates a neural net machine learning model

It comes with a built-in user interface

It has a social function and learning component

Sources: https://medium.com/codex/the-mystery-of-the-robinhood-api-99a4cd62a531 https://github.com/public-apis/public-apis https://www.investopedia.com/articles/active-trading/081315/how-code-your-own-algo-trading-robot.asp

Required Resources

The project will require access to an AlphaVantage API key to access real stock data. The frontend will need a hosting platform and the backend will require a free server and database. To develop the machine learning model, large amounts of historical stock data will be required, and we will need access to a server with a GPU to train the model.

Collaborators

BernardinJohn
John Bernardin
AlzeidiJaffar
Jaffar Alzeidi
BrittSean
Sean Britt
DoylePatrick
Patrick Doyle
AlbertsonGuthrie
Guthrie Albertson
BonanniNick
Nick Bonanni
FowlerShawn
Shawn Fowler
KingOwen
Owen King