I'm a fan of value investing and I know there are a lot of value investors out there. So I want to build a bot to assist us to find good stocks before doing more research ourselves.

What it does

It tells you the stock prices and their fair prices, P/B, P/E, dividend... It can also help you to visualise company financial data. Also, if you don't know which stocks to start with, it can suggest you some from Morning star stock screeners.

How I built it

  1. AWS Lex: help me to create the bot interface to interact with users.
  2. AWS Lambda (python): To process all users requests, getting data from my flask backend and/or AWS RDS (postgres).
  3. AWS RDS: I'm store stocks data here.
  4. Flask: I do have a backend to talk with Morningstar website in case I need it to.
  5. S3, plotly: I used plotly to visualise financial data, capture the image and store it to S3 so I can share both the plotly URL and image with you.

Challenges I ran into

How to make the bot response time to be as fast as possible. No one wants to wait a long time before the bot can give you the answer. I tried my best to optimize so even the visualisation part will take less than 10s to response.

Accomplishments that I'm proud of

Yeah, of course, my first working bot.

What I learned

This is my first bot ever, so I did learn a lot about a generic bot system.

What's next for Stock bot

I want to add more visualisation to the data. It did show me a lot of insights about how companies grow their business. Is it consistent or not. This I can't see quickly only by the number from the financial reports. I also want to bring more stuff related to value investing (bonds, quotes from Benjamin Graham, Warren Buffett) into this bot.

Built With

Share this project: