Problem

▪ Robinhood changed the game with commission-free trading with a beautiful UI. Unfortunately, their upsides stop there. Their backend always seems to be going down, their data seem to be wrong, and their business practices are very shady.

▪ I switched to TD Ameritrade because of these downsides. While TD Ameritrade's execution time and price are very feasible, their UI is very hard to navigate.

▪ They have an alternative trading platform called Think or Swim intended for professional traders with even more analytics that can confuse inexperienced traders.

Solution

▪ Create an new Trading App using Flutter

▪ Use different APIs to pull the current state of the market and beautifully display it in the app

▪ Use TD Ameritrade's API to allow users to execute orders through the app

Demo

Learnings

▪ How to make apps

▪ How to structure code to interact with multiple different APIs

▪ How asynchronous programming works

Technicals

▪ I use Flutter to develop the app

▪ I use multiple APIs to get data

  ▪ Yahoo Query's Stock Price API

  ▪ TD Ameritrade's API

▪ Asynchronous programming is used to allow the code to call APIs and wait for response

▪ APIs are called every few seconds. The output is turned into streams of data the app uses to update values it is displaying

Future Plan

▪ Launch App on App Store and Play Store

▪ Add Options support

▪ Incorporate more data from various APIs

▪ Update current app configurations to be even more easy to use

▪ Get users

▪ Bring to market?

last updated: 2/22/2021