## Inspiration

A [paper](https://arxiv.org/pdf/1610.09225.pdf) by Indian Institute of Technology researchers described that stock predictions using sentiment analysis had a higher accuracy rate than those analyzing previous trends. We decided to implement that idea and create a real-time, self-updating web-app that could visually show how the public felt towards the big stock name companies. What better way then, than to use the most popular and relatable images on the web, memes?

## What it does

The application retrieves text content from Twitter, performs sentiment analysis on tweets and generates meme images based on the sentiment.

## How we built it

The whole implementation process is divided into four parts: scraping data, processing data, analysing data, and visualizing data. For scraping data, we were planning to use python data scraping library and our target websites are the ones where users are active and able to speak out their own minds. We wanted unbiased and representative data to give us a more accurate result. For processing data, since we will get a lot of noise when we scrape data from websites and we try to make sure that our data is concise and less time-consuming to feed our algorithm, we planned to use regular expression to create a generic template where it ignores all the emoticons.

## Challenges we ran into

We encountered some technical, architectural, and timing issues. For example, in terms of technical problems, when we try to scrape data from twitter, we ran into noise issues. To clarify, a lot of users use emoticons and uncommon symbols when they post tweets, and those information is not helpful for us to find how users actually react to certain things. To solve this challenge, we came up with a idea where we use Regular Expression to form a template that only scrapes useful data for us. However, due to limited time during a hackathon, we increased efficiency by using Twitter’s Search API. Furthermore, we realized towards the end of our project that the MemeAPI had been discontinued and that it was not possible to generate memes with it.

## Accomplishments that we're proud of

* Designing the project based on the mechanism of multi servers
* Utilizing Google Cloud Platform, Twitter API, MemeAPI

## What we learned

* Google Could Platform, especially the Natural Language and Vision APIs
* AWS
* React

## What's next for $MMM

* Getting real time big data probably with Spark
* Including more data visualization method, possibly with D3.js
* Designing a better algorithm to find memes reflecting the sentiment of the public towards the company
* Creating more dank memes
## Inspiration

Our main inspiration came from competing in stock market competitions. One of the best ways to find an edge was effectively manipulating a portfolio around up and coming news. In order to make this process more efficient myStocks serves as a tool to immediately compile reaction worthy news and sort between that which is positive and negative.

## What it does

We scrape the top news sites around the globe to compile an in-depth list of articles for each stock in your portfolio. Through machine learning, we analyze the composition of each article and then refine the list to the top 6 most reaction-worthy positive and negative links. Users can follow the links to the articles provided for a comprehensive look into what the future holds for their investment portfolio!

## How we built it

The web platform was built using a mixture of HTML and Javascript, supported by Google's Firebase API. The web scraper was built in Java and the system with which we used to rate articles - the "sentiment analyzer" - was built in Python.

## Challenges we ran into

Bringing Firebase into our project as well as coordinating the different parts of the application proved to be difficult. In particular, integrating the web crawler and sentiment analyzer into the web interface was quite challenging. The storage and handling of data within the context of the web interface was something that was new to us.

## Accomplishments that we're proud of

Our project involved a number of skills and technologies that many of us were new to or unfamiliar with. While the learning curve was steep, we are proud of what we were able to learn in such a short period of time. We are also proud of the efficiency as well as effectiveness of our web scraper and sentiment analyzer.

## What we learned

Aside from a slew of new technologies, we also learned how to stay calm under stress and make things work no matter what. We also got the wonderful opportunity to get familiar with the hard floors : )
![1](https://user-images.githubusercontent.com/50319868/107144838-d2f8a780-690b-11eb-9055-5ba51c2fa89f.png)
![32323](https://user-images.githubusercontent.com/50319868/107149268-ac476a80-6925-11eb-8d28-29f23a352e7f.png)

## Inspiration

We wanted to truly create a well-rounded platform for learning investing where transparency and collaboration is of utmost importance. With the growing influence of social media on the stock market, we wanted to create a tool where it will auto generate a list of recommended stocks based on its popularity. This feature is called Stock-R (coz it 'Stalks' the social media....get it?)

## What it does

This is an all in one platform where a user can find all the necessary stock market related resources (websites, videos, articles, podcasts, simulators etc) under a single roof. New investors can also learn from other more experienced investors in the platform through the use of the chatrooms or public stories. The Stock-R feature uses Natural Language processing and sentiment analysis to generate a list of popular and most talked about stocks on twitter and reddit.

## How we built it

We built this project using the MERN stack. The frontend is created using React. NodeJs and Express was used for the server and the Database was hosted on the cloud using MongoDB Atlas. We used various Google cloud APIs such as Google authentication, Cloud Natural Language for the sentiment analysis, and the app engine for deployment.

For the stock sentiment analysis, we used the Reddit and Twitter API to parse their respective social media platforms for instances where a stock/company was mentioned that instance was given a sentiment value via the IBM Watson Tone Analyzer.

For Reddit, popular subreddits such as r/wallstreetbets and r/pennystocks were parsed for the top 100 submissions. Each submission's title was compared to a list of 3600 stock tickers for a mention, and if found, then the submission's comment section was passed through the Tone Analyzer. Each comment was assigned a sentiment rating, the goal being to garner an average sentiment for the parent stock on a given day.

## Challenges we ran into

In terms of the Chat application interface, the integration between this application and main dashboard hub was a major issue as it was necessary to pull forward the users credentials without having them to re-login to their account. This issue was resolved by producing a new chat application which didn't require the need of credentials, and just a username for the chatroom. We deployed this chat application independent of the main platform with a microservices architecture.

On the back-end sentiment analysis, we ran into the issue of efficiently storing the comments parsed for each stock as the program iterated over hundreds of posts, commonly collecting further data on an already parsed stock. This issue was resolved by locally generating an average sentiment for each post and assigning that to a dictionary key-value pair. If a sentiment score was generated for multiple posts, the average were added to the existing value.

## Accomplishments that we're proud of

## What we learned

A few of the components that we were able to learn and touch base one were:

* REST APIs
* Reddit API
* React
* NodeJs
* Google-Cloud
* IBM Watson Tone Analyzer
-Web Sockets using Socket.io
-Google App Engine

## What's next for Stockhub

## Registered Domains:

-stockhub.online
-stockitup.online
-REST-api-inpeace.tech
-letslearntogether.online

## Beginner Hackers

This was the first Hackathon for 3/4 Hackers in our team

## Demo

The apply is fully functional and deployed using the custom domain. Please feel free to try it out and let us know if you have any questions.
<http://www.stockhub.online/>