Fortune 500: Data Visualizing stock performance
The skills the author demoed here can be learned through taking Data Science with Machine Learning bootcamp with NYC Data Science Academy.
Shiny App: https://isgitlevich.shinyapps.io/StockExplorer/
Stock Explorer is an interactive dashboard that provides an easy interface to visualize data on Fortune 500 companies’ stock performance over time in relation to major market indicators and indices. This application uses Yahoo Finance on the back-end to download the up-to date stock price information. This dashboard is implemented using Shiny in conjunction with dyGraph library.
Functionality and Data
The Fortune 500 companies are grouped by industrial sectors, such as Energy, Technology, Financials, etc. The corresponding revenues, assets, income, and shares information for all companies in a given sector can be found by clicking on the Data tab.
Leveraging dyGraph charting library, we can select the time period either by using a Range Selector on the bottom of the graph or by explicitly entering the Date Range on the dashboard’s side bar. We can also visualize the long-term trends for a given stock by invoking Period Roller and entering the rolling period, for example, if we want to see monthly or annual trends, we would enter 30 or 365 into the rolling period window, respectively.
The major market indicators such as Dow Jones, SP500, and NYA can be plotted with our stock to see the relative performance. This analysis can be done enhanced by invoking the Period Roller, that would allow to look closer at the comparative analysis period of interest.
Another useful tool for analyzing the stock performance is the Relative Strength Index (RSI). It is a momentum oscillator that measures the speed and change of stock price movements. The RSI can take values from 0 to 100. The rule of thumb is that when the RSI is over 70 the stock is overbought, and oversold when below 30. By entering the number of RSI periods, we can visualize it on the same graph with the stock Closing price.
The dashboard currently provides only descriptive functionality. However, it can be enhanced by adding a predictive task component. We can use the stock data to implement ARIMA or ARMA predictive models and place the resulting visualization under the Predictor tab. The user will be able to interactively enter the prediction time period and model parameters.