COMM5007 Individual Project
Due date: Week 11 Wednesday @11:59pm, 9 August
Data Resources: The Yahoo Finance API is a range of libraries/APIs/methods to obtain historical and real time data for a variety of financial markets and products, as shown on Yahoo! Finance (https://finance.yahoo.com/trending-tickers). By utilizing the Yahoo Finance API, you can access a wealth of financial data that can help you make informed investment decisions (code examples are shown in the file). This data includes stock prices, historical price trends, volume data, market news, and more.
Task Description: You are asked to recommend stocks to your customers to invest. Your recommendations will have a significant impact on your customers' financial well-being. You will need to submit the following documents, based on the tasks we described below.
Deliverable: You need to submit the following three files in Moodle (more submission information will be available later):
- A Jupyter notebook file containing codes with comments to understand the coding. This file should be named as “zID_Codes.ipynb”, for example, “z13626739_Codes.ipynb”. Please make sure that all Python codes can run without errors. You will lose points if codes do not work. Refer to marking rubrics for more details.
- A .pdf document which should include:
- a. brief description on the ideas of your selection in Task #1
- b. show your results in Task #2;
- c. briefly explain your plots created in Task #3;
- d. briefly describe your defined customer groups, and descriptive analysis in Task #4. Note: Please do not include codes in this document. This file should be named as “zID_Instructions.pdf”, for example, “z13626739_Instructions.pdf”.
- A video no more than 10 minutes to pitch your data analysis and design ideas. You need to justify your selection, creation, and analytics. For the submission, you may need to compress the file within 150MB (e.g., by reducing the resolution). In this video, you need to:
- a. display your “zID_Instructions.pdf” file to articulate the selected stocks in Task #1, results in Task #2, your analytics in Task #3, Task #4, and Task #5;
- b. in the video scene, after displaying your “zID_Instructions.pdf” file, you need to switch to your “zID_Codes.ipynb”, you are required to (don’t need to follow the order):
- i. run the codes
- ii. explain your defined functions and class
- iii. explain how to use your designed interactive widgets
- iv. show your creativity on the designed interactive widgets/dashboards to your defined customer groups and communicate effectively with your customers Note: This video file should be submitted in MP4 format, and named as “zID_VideoPitch.mp4”, for example, “z13626739_VideoPitch.mp4”.
Task #1 (5%)
To make informed recommendations, you are required to first select a group of stocks (at least ten stocks) from Yahoo! Finance API. You are required to justify your selections. For example, a scenario could be that you are interested in newly listed companies and their performance in the market. As a result, you may select ten stocks specifically from the pool of recently listed companies. An alternative scenario could be that you are an avid enthusiast of Apple products. You are intrigued by the performance of "Apple" competitors' stock prices and have a desire to select a group of stocks in the technology sector.
Task #2 (5%)
Extract companies’ information from the financial markets, including city, state, country, industry, sector, the number of full-time employees using Python, and then put them into a Pandas Dataframe.
Task #3 (15%)
To help your customer identify potentially profitable investment opportunities, you need to draw plots to show at least three different types of trends for your selected stocks. For each trend, you are required to put your selected stock list into one single plot and interpret the trends. For example, to pick the most profitable times to invest each stock, you can draw the changes of stock price and explain that time based on your own justifications.
Task #4 (15%)
A sound investment recommendation also hinges on your comprehensive understanding of your customers. In your recommendation, it is necessary to segment potential customers based on their investing strategies. You are required to customize further descriptive data analysis based on #Task 3 and your customers on the need, and provide tailored recommendations to different types of customers (at least two groups). For example, you can divide your customers into two groups: short-term investors or long-term investors and recommend them different stocks in your selected list. Since short-term investors often prefer stocks with higher price volatility and long-term investors generally prefer stocks with low volatility, you can assess the volatility of the stocks in your selected list for further descriptive data analysis. Another example is that you can divide your customers into two groups: risk taking investor or risk averse investors and recommend them different stocks.
more...