To represent stock data in a new medium: music.

What it does

Our MatLab project takes input, plots your stock's price versus time, and plays music to represent the graph's relation to your purchased price. If the stock price is above your purchased price, piano chords in C major (happy) play to represent gains. If the stock price is below your purchased price, Violin chords in E minor 7 (sad) play to represent losses. Amplitude (loudness) changes to tell you how far away from your purchased price the data is. Usage: Run our MatLab file main.m to input a stock symbol (ex: GOOG), the price you purchased your stock at, the date you purchased your stock at, the start date for the graph, and the end date for the graph.

How we built it

Our team of four, Evan, Juliet, Josephine, and David, collaborated with Git through Atlassian Sourcetree and GitHub to implement our project with a series of MatLab functions. We used Yahoo Finance through the Matlab fetch command to retrieve the stock data. Juliet created chords and notes in GarageBand. David also wrote an AutoHotKey script (included) to punch in the input for the Google example in the image on this page.

Challenges we ran into

Utilizing various tools in tandem which may create merge conflicts or other confusion.

Accomplishments that we're proud of

Working together as a team on platforms we were unfamiliar with to create a functioning program. As beginner programmers, this was a big accomplishment!

What we learned

We learned how to manipulate complicated stock data in MatLab as well as import and use music files programmatically. We learned how to navigate Git as a team of four to share code.

What's next for WallStreetSymphony

What’s next is incorporating more than one stock in our graph and music. The program can already take input for multiple stocks (right now it just uses the first input). We already pull the data for multiple stocks from Yahoo Finance into a 3-D MatLab array, so next would be to layer the music and graphs.

Built With

Share this project: