UCL-ELEC0136: Data Acquisition and Processing Systems

Submission deadline:

Please check the Moodle page of the course.

1 Objectives

The objective of this assignment is to simulate a real-life data science scenario that aligns with the process discussed in class. This process involves:

  1. Finding and acquiring a source of data.

  2. Storing the acquired data.

  3. Cleaning and pre-processing the data.

  4. Extracting meaningful visualizations.

  5. Building a model for inference.

You are encouraged to utilize any additional methods you deem suitable for solving the problem. The assignment comprises two main deliverables:

  1. A written report presented in the format of an academic paper.

  2. The accompanying codebase to support your report.

While exchanging ideas and discussing the assignment with your peers is allowed, it is essential to emphasize that your code, experiments, and report must be the result of your individual effort.

2 Overview

Assume you are a junior Data Scientist at Money, a UK investment company and your project manager, Melanie, provides you with the following list of public companies:

• Apple Inc. (AAPL),

• Microsoft Corp. (MSFT),

• American Airlines Group Inc (AAL),

• Zoom Video Communication Inc (ZM)

You must select ONEof these companies and study their market trends to ultimately be able to advise on when and whether Money should (I) buy, (II) hold, or (III) sell this stock.

Melanie asked you to follow the company guidelines, which advise this process:

  1. Select a company and acquire stock data from the beginning of April 2019 up to the end of March 2023.

  2. Collect any other data on external events (e.g., seasonal trends, world news etc.) that might have an impact on the company's stocks.

  3. Choose the storing strategy that most efficiently supports the upcoming data analysis.

  4. Check for any missing/noisy/outlier data, and clean it, only if necessary.

  5. Process the data, extracting features that you believe are meaningful to forecast the trend of the

stock.

  1. Provide useful visualisations of the data, exploiting patterns you might find.

  2. Train a model to predict the closing stock price.

Details for each task are provided in Section 2. Details of how each task is marked are included in

Section 3.

3 Task Details

[IMPORTANT NOTE]

Tasks 1.2, 2.2, 4.2 and 6 are more advanced, but based on the scoring criteria

provided in Section 5, you can pass this assignment without solving these tasks. However, you would need

to solve these to achieve a top-distinction range.

The percentage provided on each task description is the weight of the mark in the 70% of the report, as clearly defined in Section 5.

Task 1: Data Acquisition

You will first have to acquire the necessary data to conduct your study.

Task 1.1 [5%]

One essential type of data that you will need is the stock prices for the company you have chosen, spanning from the 1st of April 2019 to the 31st of March 2023, as described in Section 1. Since these companies are public, the data is made available online. We note that any data sources are to

be accessed exclusively through a web API rather than downloading files manually. The first task is to search and collect stock prices, finding the best way to access and acquire it through a web API.

Task 1.2 [7%]

Search and collect more/different data relevant to this task. There are many valuable sources of information for analysing the stock market. In addition to time series depicting the evolution of stock prices, acquire auxiliary data that is likely to be useful for the forecast, such as:

  1. **Social Media, e.g., Twitter:**This can be used to understand the public's sentiment towards the stock market;

  2. **Financial reports:**This can help explain what kind of factors are likely to affect the stock market the most;

  3. **News:**This can be used to draw links between current affairs and the stock market;

  4. **Meteorological data:**Sometimes climate or weather data is directly correlated to some companies'

stock prices and should therefore be taken into account in financial analysis;

  1. **Others:**anything that can justifiably support your analysis.

Remember, you are looking for historical data, not live data, and that any data sources must be accessed through a web API rather than downloading files manually.

相关推荐
QT 小鲜肉7 小时前
【QT随笔】结合应用案例一文完美概括QT中的队列(Queue)
c++·笔记·qt·学习方法·ai编程
中国胖子风清扬9 小时前
Rust 日志库完全指南:从入门到精通
spring boot·后端·rust·学习方法·logback
晨非辰1 天前
#C语言——刷题攻略:牛客编程入门训练(九):攻克 分支控制(三)、循环控制(一),轻松拿捏!
c语言·开发语言·经验分享·学习方法·visual studio
dragoooon341 天前
[数据结构——lesson3.单链表]
数据结构·c++·leetcode·学习方法
dragoooon342 天前
[优选算法专题二滑动窗口——串联所有单词的子串]
数据结构·c++·学习·算法·leetcode·学习方法
晓衣2 天前
2025“獬豸杯”全国电子数据取证竞赛-k8s服务器取证wp
服务器·经验分享·程序人生·网络安全·容器·kubernetes·学习方法
jingling5553 天前
uniapp | 解决组件样式不生效问题
前端·css·uni-app·html·学习方法
jingling5555 天前
【高级】系统架构师 | 信息系统战略规划、EAI 与新技术
程序人生·职场和发展·系统架构·学习方法·程序员创富
Hygge-star6 天前
【MySQL自学】SQL主键使用误区:你必须知道的关键细节
数据库·sql·mysql·数据分析·学习方法
潘潘潘潘潘潘潘潘潘潘潘潘7 天前
【Linux】Linux开发必备:Git版本控制与GDB调试全指南
linux·运维·服务器·git·学习方法