ECO482H1F, section L0101
Machine Learning Applications in Macroeconomic Finance
Department of Economics
Fall 2024
Overview
This course is an introductory course to different concepts and techniques related to Machine Learning, focusing mainly on Macro-finance applications. In the first part of the course, we will review supervised and unsupervised learning methods. In the second part, we will discuss various macro-finance concepts, where machine learning is becoming increasingly common. Therefore, the course's objective is to provide students with the basics of machine learning so that they can solve economic issues using these techniques and be prepared for more advanced machine learning courses.
Course delivery
Lectures are Wednesdays from 10:10 am to 12:00 pm (Toronto Time).
The course is intended to be an in-person course. But, we will follow the public health recommendation and switch to an online mode as needed. The room for the course is SS 1087.
All course materials will be posted on Quercus. I recommend you check it regularly.
Students are expected to attend all class sessions and actively participate in discussions and activities. Please bring your laptop during class so you can practice coding when we do.
If the university suggests so, you are also strongly encouraged and requested to wear a mask during in-person classes, tutorials, and data camp.
Online course: This course is intended to be interactive and to mimic an in-person session, at best, when we are online. Therefore, students must have a usable microphone and are encouraged to activate their camera. For the presentations, the presenters are required to activate their cameras.
Tutorials
Tutorials are (usually) Wednesdays from 12:10 pm to 1:00 pm.
They are intended to be in-person as well. But, we will follow the public health recommendation and switch to an online mode as needed.
When in-person, the room for the course is SS 1087. Please bring your laptop during those sessions so you can practice coding.
Each tutorial will be an opportunity to revise a method, correct exercises, make applications, ask questions, etc.
NB: Note that because we have three hours for class and tutoring, we may have some time reallocations as needed, either to have more class time or more tutoring time or just remodel. You will be notified when this is the case.
Data Camp
Data Camp is biweekly and on Wednesdays from 3 pm to 4 pm (Room TBD).
This is intended to foster overall learning in the class. The camp's objective will be to provide you with an additional learning resource and space, where the TA will give extra Python classes (complement the traditional tutorials). The TA will answer any coding questions or issues you may have (assignments, projects,...). Please bring your laptop during those sessions so you can practice coding. The data camp is not a substitute for the tutorials. It is just an additional resource (as an office hour could be) to improve your learning.
Timezone
All times posted will be in local Toronto time. If you are in a different time zone for some reason, please make sure you know Toronto time in relation to your time zone. Errors in calculations are not an acceptable reason to miss deadlines.
Evaluation
Task
|
Weight
|
(Due) Date
|
Class Participation
|
10%
|
Every Wednesday Lecture
|
Assignments (2)
|
25%
|
• October 8 (before 23:59 EST)
• November 12 (before 23:59 EST)
|
Research Project (Group
Work)
• Part 1: Submission of ideas
• Part 2: Final submission
|
• 15% • 20%
|
• October 25 (before 23:59 EST)
• December 2 (before 23:
59 EST)
|
Final Exam
|
30%
|
Final Assessment Period
|
Class Participation:
Participation marks will be based on the individual degree of engagement throughout the course. These are based on your attendance to lectures, live questions, group work during class, and questions in the chat during the course (in the online format). You are also encouraged to use the discussion platform. in Quercus. We might also use the Quizzes section in Quercus. I will keep track of all those interactions during the course.
Assignments:
Assignments are usually posted one to two weeks in advance. Late assignments will receive a grade of zero (see late policy).
You will have to upload the assignments via Quercus.
Assignments will also bean opportunity to see some concepts we will not have the time to discuss in class in the form. of exercises using the tools you already know.
Assignments are individual. You can help each other, but each student will have to submit their own "copy" and their own "code" in conformity with the Student Academic Integrity Code (See below).
Research Project:
You should work in a group of 3. Groups with less than 3 members will receive a penalty, and their grades will be downgraded by 10 percentage points unless this is an exogenous shock (i.e., one member drops the course). If the number of students in the class is not a multiple of 3, one or two groups will have less than 3 members. In the event of a tie, we will randomly choose which group should split or merge. If the group members do not want to comply with the results of the randomization, they will get a penalty.
You should produce original work using the methods seen in class. Students could go beyond what we have seen in class if they want. However, all projects should contain at least the tools seen in class. Otherwise, it will be considered off-topic, and the maximum penalty will be applied.
You need to find a relevant question and apply machine learning tools to answer that question. You will be judged on your originality, the relevance of the project, the results obtained, and the integration of comments and criticisms.
In the first part of the project- Submission of the ideas- you will have to submit a set of 7 slides presented as follows:
• Slide 1: Title of the project, Group members' names,Utorid, and email address.
• Slide 2: Motivation of the topic
• Slide 3: Main research question and sub-research questions
• Slide 4: Hypothetical answer to the research questions and Contribution
• Slide 5: Method you plan to use
• Slide 6: Short Literature review with three key papers. For each paper, show the similarities and the differences between your work and the paper.
• Slide 7: Data description and some descriptive statistics
This step will be beneficial for you and prepare you to present using key points. The slides should not be overloaded; they should be readable and clear. All these details will be considered for your grade. I will post some parts of Jesse Shapiro's slides on how to present the slides for a talk.
In the second part, which presents the final submission, you must make a report (no more than 10 pages) that will take into account the potential remarks that you will have obtained during the submission of the ideas and will be articulated as follows:
• Introduction (Motivation,research questions, answer to the research question, contribution, literature, …)
• Data and Methodology
• Results
• Conclusion
Writing guidelines for the final submission:
• Font 12;
• 10 pages, including graphs and tables; references could be outside of the 10 pages;
• You can have the first page with the title, your names, UTorid, and emails not included in the 10 pages;
• Double spacing.
You will present your final project in front of the whole class. This is compulsory and counts for 70% of your grade.
Please note that those who use Kaggle will be heavily penalized because, besides data, Kaggle also provides codes related to the exploration and analysis of those data.
Final Exam
The final will be governed by the University's rules for final assessment. It is an open-book exam, i.e., you can print all the materials we have discussed in class and posted on Quercus. This includes slides, papers, books, and your notes on the slides. You are not allowed to print any random materials you will find on the internet. If you do so, this will be considered an academic infringement, and the penalty policy in such a case will be applied.
Important Note: You are expected to work on the final exam by yourself, proctored or not. You may not use unauthorized aids or communicate with others about the test.
Late penalty:
All the evaluations are due at the "Due Date" indicated in the table.
Late assignments will receive a grade of zero unless a valid reason for absence is provided and you notify the instructor (copying the TA) before the day of the due date.
Late research projects will be downgraded by 10 percentage points per day of delay.
If you do not take the final exam within the specified windows, you will receive a score of zero unless otherwise notified by the administration.
Course Material
James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An introduction to statistical learning (Vol. 112,p. 18). New York: springer. (JWHT).
Sarkar, D. (2016). Text Analytics with Python.
Others
Bird, S., Klein, E., & Loper, E. (2009). Natural language processing with Python: analyzing text with the natural language toolkit. " O'Reilly Media, Inc.".
Start with Python
Guido, S., & Müller,A. (2016). Introduction to machine learning with python (Vol. 282). O'Reilly Media.
Software
All machine learning programming activities in this course will use only Python software. Python is a free software. All students are required to install it on their machine.
Topics and Required Readings
Part 1: Introduction to Machine Learning
• Chapter 1: Introduction JWHT, Chapter 2
• Chapter 2: Basic notions of Machine Learning and Natural Language Processing JWHT, Chapter 2; Sarkar, D. (2016) Chapter 3
Part 2 : Algorithmic Prediction
• Chapter 3: Classifier Part 1: Logistic, k-nearest neighbors, Naïve Bayes classifier JWHT, Chapter 4
• Chapter 4: Classifier Part 2: Trees-based Methods JWHT, Chapter 8
• Application 1: Financial crisis
o Manasse, P. and Roubini, N., 2009, "Rules of thumb for sovereign debt crises", Journal of International Economics, Volume 78, Issue 2.
o Badia, Marialuz Moreno, et al. "Debt is not free." Journal of International Money and Finance 127 (2022): 102654.
• Application 2: Delinquency risk
o Fuster, Andreas, et al. "Predictably unequal? The effects of machine learning on credit markets." The Journal of Finance 77.1 (2022): 5-47.
• Application 3 : Forecasting and nowcasting Part 3 : Natural Language Processing
• Chapter 5: Textual Analysis Part 1: Feature Engineering Model Sarkar, D. (2016) Chapter 4
• Application 4: Uncertainty and Risk
o Alexopoulos, Michelle, and Jon Cohen, "The Power of Print: Uncertainty Shocks, Markets, and the Economy," International Review of Economics and Finance, 40
(2015), 8-28.
o Baker, S. R., Bloom, N., & Davis, S. J. (2016). Measuring economic policy uncertainty. The quarterly journal of economics, 131(4), 1593-1636.
• Application 5: Intangible asset and Technology
o Kelly, Bryan, et al. "Measuring technological innovation over the long run." American Economic Review: Insights 3.3 (2021): 303-320.
• Chapter 6: Sentiment Analysis Sarkar, D. (2016) Chapter 9
• Application 6: Prediction of Financial Return
o Tetlock, P. C. (2007). Giving content to investor sentiment: The role of media in the stock market. The Journal of finance, 62(3), 1139-1168.
o Loughran, Tim, and Bill McDonald. 2011. "When Is a Liability Not a Liability? Textual Analysis, Dictionaries, and 10-Ks." Journal of Finance 66 (1): 35-65.
o Cao, Sean, et al. "How to talk when a machine is listening: Corporate disclosure in the age of AI." The Review of Financial Studies 36.9 (2023): 3603-3642.
• Chapter 7: Textual Analysis Part 2: Topic Modelling Sarkar, D. (2016) Chapter 6
• Application 7: Central Bank and Prediction
o Hansen, Stephen, Michael McMahon, and Andrea Prat. 2018. "Transparency and Deliberation within the FOMC: A Computational Linguistics Approach."
Quarterly Journal of Economics 133 (2): 801–70.
• Going beyond:
o Alexopoulos, Michelle, et al. "More than words: Fed Chairs’ communication
during congressional testimonies." Journal of Monetary Economics 142 (2024): 103515.
Important notices:
(1) The schedule is tentative and may be adjusted depending on the length of some chapters compared to others.
(2) We may have to skip some applications if we are short on time.
(3) It is compulsory to read the required materials before class.
(4) In the machine learning literature, each chapter that we see can constitute a course in itself. We will then not approach all these themes exhaustively but rather make a synthesis. We will keep it
practical for you to use these methods easily.
(5) Please save the date of November 30 as the date for the presentation of the final project. We might use some time for either a presentation of the first part of the research project or a discussion with each group regarding the submission during office hours or during class. You will be notified.
Email Policy
The use of email should be restricted to private matters or to notify problems (e.g., broken links, typos, etc.).
I will answer questions about course materials in person during lectures or office hours.
• First ask the Teaching Assistant.
• For e-mails asking for a reply, if I can answer briefly (e.g., requiring a one-sentence
reply), then I will reply within three business days. If a response requires more detail, then class, tutorial, or office hours are the more appropriate forum;
• I will not respond to emails that request information that can be found on Quercus or the syllabus.
• Please also note that requesting marks, or the solutions to problem sets or midterm questions by email is not appropriate.
Finally, students must also send emails using their University of Toronto email address. The subject of the email should include the course number and the UTORid.