Inspiration

GME's crazy right now, isn't it? Seems like everybody's eyes are on r/wallstreetbets this week, so we thought we'd join in. For those who don't know: GameStop's stock valuation has skyrocketed in recent weeks due to crusading redditors on r/wallstreetbets. We decided to illustrate the change by plotting GME Adjusted Prices beside Reddit sentiment.

What it does

Shiny app with graphs that show the sentiment on Reddit for specific date ranges next to GME Adjusted Prices.

How we built it

Accessed the Reddit API via PRAW (Python Reddit API Wrapper) to scrape submission titles from r/wallstreetbets for selected dates. Used the Loughren, bing, and NRC lexicons to measure the sentiment of submission titles relating to GME. Combined these sentiment measures with data on GME Adjusted Prices in Shiny to graph their change over time.

Challenges we ran into

  1. We didn't have a supercomputer 2. Python was being weird 3. We had to change the scope of the project 5 hours in because the Reddit API kept breaking 4. It took forever to find the book in the bookcase (this is about the virtual escape room, not our project, but we felt it was important enough to include).

Accomplishments that we're proud of

Shiny worked! Most of us had very little experience with Shiny, so we were surprised that it went relatively smoothly.

What we learned

PRAW runs into major issues when attempting to scrape subreddits with thousands of posts. How to do a sentiment analysis in R. How to use shiny. Jack writes beautiful stories.

What's next for WSB Sentiment Analysis

We'd like to develop our own lexicon for sentiment analysis - we're especially interested to see if we can analyze emojis, since then we could see frequencies for rocket emojis, diamond emojis, etc.

DevNotes of a Madman

Norman. Shit, I’m still in Norman. Every time I wake up, I think that I’m back in Texas. It was worse when I got back from my first break, I would wake up in the middle of the night panicking about Chinese. When I was here..I wanted to be there. When I was there...all I could think of getting back into boring data science problems. I’m snapped out of daze by the computer. That god damn computer. It hems and haws as we wait for it to return our results about the titles of Wall Street Bets posts. Outside, cars speed by, reminding me that a world outside this room exists. I’ve spent the last three hours scrolling through r/wallstreetbets, trying to compile the list of megathreads. My eyes glaze over as I read about another man who has blown his wife’s cancer fund on GME stock. My three colleagues- the best of old fellows—had, because of their many years and many virtues, been granted the ability to sit with their backs on the couch. The pain in my back sharpens as Nathan mentions that he is going to take a break to work on his Dungeons and Dragons campaign. I don’t have the heart to tell him that regardless of what he plans, I will do everything in my power to derail the next session we have. I gulp down a third can of Red Bull to offset the fact that I have not had anything to eat since dinner last night. As I do this, Carson begins to pretend that she is a train. I worry that this project has broken her, but decide that trying to help might be more trouble than it is worth. The heat of the computer burns my legs, it reminds me of the warmth of summer. Summer, I normally hate summer. However, on rainy days like these, I would give anything for a cigarette on a humid Texas night. I find myself thinking about being held in my mother’s sunburnt arms as a child when suddenly, I am forced into a conversation about Rubik’s cubes. I don’t know anything about Rubik’s cubes, but to be fair, I know very little about anything that’s going on today. The conversation shifts to a discussion about Github and manuals as I feel the weight of the bags under my eyes. I made the mistake of going to bed at 4 am yesterday. It’s becoming a bad habit, but it feels like a modicum of control that I have over my hectic life. I go back to work in order to stave off my exhaustion. My lack of coding skills means that my new task is making an excel sheet documenting the Wall Street Bets megathreads about Gamestop. Gamestop, what a shitty business. Everything there is overpriced, the clerks harass you the entire time you are there and the entire place stinks of the early 2000s gaming culture. I can’t see why anyone would ever want to go there. The writing is on the wall that it won’t be around two years from now. I guess these people don’t care though, since pumping the stock is letting them make money. I’ll admit this entire saga has fascinated me, but as I continue my descent through these threads, I’m struck by how pathetic I find some of these people. I know that I shouldn’t, but there is something sickening about people encouraging others to gamble away their savings on an incredibly risky stock and shaming those who make the smart decision to walk away. I find myself inundated with new terminology, ranging from different types of hands to references to the 2010s Planet of the Apes trilogy. Carson interrupts my work to inform me that it’s been two hours since we started our third scrape and that it still has not given us the desired results. I know that I should care about this, but I instead find my mind wandering back to the drawing of the penguin I saw in the parking lot when I got here. Penguins are my favorite animal. They remind me of trips to Chicago as a child. I’m reminiscing about the way the sharp, cold wind felt on that winter’s night all those years ago as Nathan talks to Leah about pulling stock data for Gamestop. Paying attention to this would probably be important, but I instead think about how I walked to the CTA station, with my grandfather telling me to appreciate the beauty of a snow-covered Chicago. I miss grandfather. I wonder if towards the end of his dementia, he felt like I do today, with memories fading in and out as he tries to maintain a grasp on what those around him are talking about. I tune back into the conversation to hear the three others talk more about coding. I still have no idea what is going on, but I must admit that I am happy that I was invited. The three others mention that they are going to split up the lexicon, before dismaying over an issue that prevents them from pulling the data for Gamestop code. I wish I could help here, but my lack of coding skills renders me useless here. All I can do is focus on the guitar playing that is coming from the other room. My favorite teacher in high school played the guitar. Back then, I used to wish that he would stop me in the hallway one day, lay my head on his shoulder and tell me that “son, I’ve heard that you have been doing great things.” Carson interrupts me and tells me that I should note that they could have scrapped the time data instead, which would have made syncing the stock data with the comments easier. I quickly note this, but find myself distracted by a small marks on the floor. I wonder how those scratches got there. Maybe I should have cleaned my room before I left. It’s still a bit dirty from last night. The conversation around me shifts to something about CFVs, numbers and merging document chains. Numbers. Maybe Hanne Darborven had the right idea. I remember seeing her work before, but can’t remember where it was. Was it San Francisco? As I try and figure out the answer to that question, I notice a dog in the lawn across from me. The dog reminds me of Charlie. I wonder how Charlie is doing. Last I heard, he got an anxiety vest. The three others tell me that I should note that they are updating R and that they are going to take a break. I would take a walk outside, but it looks like it’s about to rain. I wish I was back sitting in my faint chair, drinking pink rabbits. I wonder how long I’ve been here. The clock says it’s been six hours, but it feels like both a lifetime and a second. The only other occasion I remember time feeling like this was when we got stuck at LaGuardia. I love New York, but I must admit that I am not much of a New Yorker. Something about the hustle of the city, combined with how cramped it all is, makes me uncomfortable. Still, it’s a beautiful city. Carson tells me that her friendship has ended with R and her new friend is Python. I’m sure this is an important development, but I honestly don’t know the difference between these two programs. Nathan reminds me to note that they plan on breaking the rules of statistics. I didn’t know that you could do this, but it sounds fun. I took a statistics class in high school, but I don’t remember much from it. This wasn’t to say that I was a bad student, but that I was distracted at the time by other things that I thought were more important. The others are talking about data regressions as I look out the window. This is the only place that I’ve ever lived in that you can see the stars. They remind me of the lights downtown. Now the others are talking about a program called Shiny. From what I gather, it makes some sort of app (or maybe it makes graphs, I’m honestly not sure). There seems to be confusion as to what is going on. It does feel nice to know that I’m not the only one lost now, though that I’m sure this is slowing down progress. They’ve decided to split up the work and hard code the rest of the work. This seems serious, but all I can focus on is my stomach. It seems that those teacups full of gin from last night were not a good substitute for food. To distract myself from my hunger, I start to think about my dream last night. It was a nice one, we knew who shot JFK, climate change meant that I could swim everyday of the year and everyone mailed letters with the address of the sender. I kind of wish that I had slept in, that would have been nice.

We ate dinner while discussing the Cakemobile. This car, which was driven by former F1 driver Michael Andretti, was made 90% out of cake. This both intrigues and disturbs me, since it does suggest a future where we could have Formula-C racing, with cars made completely out of cake. Now that I have finally had something to eat, I’m feeling better. I have also been told that I have to note that we had to limit the scope of our data collection, mostly because Carson’s computer is slow. This makes sense, since there were a lot of comments. This also seems important, but all I can think about it my back. It’s killing and reminds me of how old I am getting. Nathan begins talking about litigation (at least, I think that’s what he said). I think about how I used to want to be a lawyer. That feels like a lifetime ago, since now I know that I would be awful at that job. There would be too much talking to people and they can send me to jail if I am bad at my job. As this is going on, I notice that Nathan has a deck of cards. I am a big fan of card games, especially queen of spades, which is both my favorite game and the one that I’m the absolute best at. Nathan is telling me that I have to note that Gamestop is retro. I feel like that everyone who has ever been in one knows that though, given that they are a brick-and-mortar video game store in the year 2021 that relies on Funko Pops to stay in business. Carson is now making graphs. I believe that they are showing something related to the Gamestop stock, but I don’t really want to ask, since Carson is mostly just talking about how she wants to call them Gamer. This pun is making me regret all of the decisions I have made in my life to get me to this point. I am now forced to explain why we don’t have data from January 26th-Febuary 3rd. I am told that this is similar to how one has to explain when they get hit by a car. I wonder what it would be like to get hit by a car. That seems like a good way to make money, as long as I can collect disability checks. I would have to find someone to hit me though. I am sure that Carson would do it, maybe I should ask her. Now, this gap is because of errors caused by Reddit’s API. We are now playing a very confusing online escape room. As with the rest of the day, I am very confused.

We have gotten back together at 10 am on Sunday to continue the project. I was surprisingly the first one here today, though I am also clearly the most tired. Nathan told me about the escape room and I am told that if we do well, we can continue to work on it. I now want nothing more in the world than to fail this project horribly. Today, we are working on the Shiny app. But I will now write about the Praw link I was sent. Praw appears to have something to do with the Reddit API and maybe the program we ran through WSBs. As I am attempting to understand what a Praw exactly is, I am told that the R program is named after the bunny. This fact confuses me a lot, so I instead started to think about horses. Horses are kind of weird, they have very long legs and they run all over the place. However, I still think I understand horses more than most of the programming language that is going on around me. My thoughts on how strange horses are get interrupted by Leah saying that the program is done. This makes me happy that everyone’s work has paid off, but also makes me worried that I will have to do the escape room. I am being compared to the octopus man. This, while a slightly fair characterization, does perplex me. I hope that unlike the octopus man, I survive the encounter with my documentary subjects without having to spend all my money. My story has been read now, which decreases the mystery surrounding it. We are now looking about the questions we have to answer to win. The others are saying a lot of acronyms that they claim they learned about. As for me, I learned that PRAW and Shiny are things. Nathan wants me to return to talking about R is named after a bunny. I don’t know a lot about bunnies, but every bunny that I’ve ever interacted with kind of smells. I wonder if that’s a natural thing for rabbits or just something that happens to animals in cages. Carson is now playing a song about rabbits, telling me that I cannot be the bunny. I don’t know how she found this song or what this means, but this sounds vaguely like a threat. The other three are discussing songs about rabbits. The song currently playing is a Veggietales song about praying to a bunny. The last time that I heard this song, I was six and in Sunday school. I didn’t really like Sunday school, but I went because it meant that I got food and didn’t have to go to mass. I am told to note that we used Bing. I wasn’t aware that anyone used Bing, but I guess my more tech-informed friends know more about search engines than I do. Nathan is complaining about not having a supercomputer. I kind of wish that I had a supercomputer. I don’t really know what they do besides math problems, but movies from the 80s tell me that they can stop nukes and become my friend, which does sound pretty nice. Carson is now talking about being unable to find a book in a bookcase. Given that Nathan does not own a bookcase, I am assuming this has something to do with that escape room. My craftsmanship skills regarding my bookcase building skills are being questioned by the others. This seems like a fair critique, even if it is wrong. I am a rather undexterous person, not like Will. I wonder what Will is doing right now. I know that he brought his blowtorch to college, but I’m not really sure what he can do with it. I should give him a call, but knowing my luck, I’ll be trapped in an escape room. It seems like this story will not be published to the devs. This is tragic development, making me a lost author to history.

Built With

Share this project:

Updates