联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2023-07-19 09:11

COMM5007 Individual Project (100 pts)

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):

1. 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.

2. 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”.

3. 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.


Task #5 (30%):

In addition to your technical skills, your ability to communicate effectively with your customers

is critical. Design interactive widgets (Python library Ipywidgets) in the Jupyter notebook to

recommend your selected stocks for your customers within your defined groups in Task #4. This

project requires you to define at least 1 Python class and (at least) 4 Python functions and of

your choice in your codes. The functions may relate to statistics, graphics, text, or image

applications, and will be used to communicate your analytical results to your customers You are

required to show how creative you are and how to communicate with analytical results

effectively in the design process.

#Task 6 (30%) Report, code file, and video pitch.


Code Execution Platforms

You can choose any platform you like. Here are two options:

1. Colab Instructions

Here's a simplified tutorial on how to use Colab:

Open the Google Colab website.

Sign in with your Google account or create a new one.

Create a new notebook.

Write code and text in the notebook.

https://colab.research.google.com/Click the play button or use the Shift + Enter

shortcut to run the code.

Use !pip install command to install additional libraries.

Insert new cells or rearrange their order.

Colab supports Google Drive, allowing you to upload and process data files.

Save the notebook or download it to your local machine.

When closing the notebook, changes will be automatically saved to Google Drive.

2. Build the local environment you preferred--different Python IDEs (e.g., Jupyter notebook,

PyCharm).


Code examples:


Marking Rubric:

Criteria % Questions to be asked by the marker when determining the mark

Task 1 & 2 10% Does the analysis thoroughly justified the selection of stocks considering various

factors?

Does the analysis select at least ten stocks?

Are all selected stocks highly relevant to the scenario and demonstrate a clear

connection?

Is the company information extracted accurately and does it store in a correct

format?

Task 3 15% Are the plots clear and appropriate?

Does the analysis provide detailed and insightful interpretations of each plot?

Is the analysis clear, organized, and effectively communicating the findings and

supporting analysis?

Task 4 15% Does the analysis effectively segment customers into the defined groups?

Does the analysis demonstrate a comprehensive understanding of customers?

Can the analysis effectively support the customer segmentation and recommend

selected stocks to the customers?

Task 5 30% Can the designed interactive widgets effectively recommend selected stocks to

customers within the defined groups?

Do the widgets user-friendly intuitive?

Do you cover all required tasks (at least 1 Python class and at least 4 functions) in

the code?

Is the design creative and effective in addressing different aspects of the project?

Does the design effectively present recommendations and analytical insights in an

engaging and informative manner?

Task 6 30% Are codes efficient and without errors?

Does the report thoroughly document all requirements and clearly explain the

process?

Does the video cover all required task?

Is the video pitch clear, well-structured, and effectively convey the key message?

Is the video pitch engaging and persuasive?

Can the video pitch capture the audience’s attention and effectively convey the

information?

Is speaker clearly and confidently?


版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp