Skip to content

TFS 102: Data Analysis & Financial Modeling

Course Code TFS 102
Course Name Data Analysis & Financial Modeling
Department Computer Science & Finance
Semester Offered Even (usually Term 2)
Tuition Hours 30 hours
Course Level Applied
Pre-requisite QMA 101: Mathematics for Finance
Co-requisite FTM 102: Investment Theory & Portfolio Management
Course Objective Finance today is not limited by access to data. It is limited by the ability to think with data. This course trains students to move beyond spreadsheets into programmable finance using Python.

Students will learn how to pull, clean, transform, and analyze financial data, and more importantly, how to turn that data into decisions. From building valuation models to tracking portfolio performance, this course focuses on creating systems that scale beyond manual analysis.

By the end of the course, students should be able to build their own financial analysis stack, automate workflows, and generate insights that directly inform investment decisions in the capstone portfolio.
Course Philosophy This course emphasizes
  • Code as a thinking tool, not just execution
  • Real data over clean textbook datasets
  • Automation over repetition
You will not learn Python for the sake of Python. You will learn it because serious finance work cannot be done manually anymore.
Course Learning Outcomes Upon successful completion of this course, students will be able to:
  • Work with real financial datasets using Python and pandas.
  • Clean, transform, and structure messy financial data for analysis.
  • Build financial models programmatically, including return calculations, portfolio metrics, and valuation models.
  • Visualize financial data effectively to communicate insights.
  • Automate repetitive financial workflows, including reporting and dashboards.
  • Integrate data analysis into live investment decisions for portfolio management.
Course Author Sagar Udasi
MSc Statistics and Data Science with Computational Finance from The University of Edinburgh.
Contact: sagar.l.udasi@gmail.com
Course Organiser TBD
No. Lecture Title Concepts Covered Lecture Objective
01 Why Excel Stops Working at Scale Limits of spreadsheets, introduction to Python for finance, environment setup Students understand why programmable finance matters, especially for managing real portfolios in the capstone
02 Your First Financial Dataset Is a Mess Importing CSV/API data, data types, missing values Learn to deal with real-world messy data instead of idealized datasets
03 The Language of Tables: pandas Basics DataFrames, indexing, filtering, transformations Build the core skill of manipulating structured financial data
04 Cleaning Data Like an Analyst, Not a Student Handling nulls, outliers, normalization Ensure reliability of data before making investment decisions
05 Time Is Everything in Finance Time series basics, datetime handling, resampling Understand how financial data evolves over time for analysis
06 Returns Are Not What You Think Simple vs log returns, cumulative returns Build correct intuition for measuring investment performance
07 Risk in One Line of Code Volatility, variance, covariance, correlation matrices Quantify risk for portfolio decisions in the capstone
08 Visualizing the Market Without Fooling Yourself Data visualization principles, matplotlib, seaborn basics Communicate insights clearly without misleading interpretations
09 Building Your First Portfolio Tracker Portfolio returns, weights, rebalancing logic Direct application to tracking the live student investment fund
10 The Illusion of Diversification Correlation breakdowns, sector exposure Understand when diversification actually fails
11 Financial Modeling from Scratch Building DCF models programmatically Move beyond Excel into scalable financial modeling
12 Automating Investment Research APIs (Yahoo Finance, Alpha Vantage), data pipelines Pull live data for real-time decision making in the capstone
13 Backtesting: Can You Trust Your Strategy? Historical simulation, pitfalls of backtesting Avoid common mistakes when validating investment ideas
14 Performance Attribution: What Actually Worked? Alpha, beta, benchmarking, attribution analysis Evaluate portfolio decisions rigorously
15 Building a Weekly Investor Report Automatically Report generation, dashboards, summaries Automate reporting for investment committee presentations
16 When Models Lie and Markets Punish You Overfitting, data snooping, survivorship bias Develop skepticism and critical thinking in financial modeling
17 Scaling Your Analysis Modular code, reusable functions, pipelines Build systems that scale beyond one-off analysis
18 Real-Time Monitoring Systems Alerts, triggers, portfolio monitoring Enable active decision-making in live portfolio management
19 From Analysis to Decision Translating insights into trades Bridge the gap between data and action
20 Final Integration: Your Investment Stack End-to-end system building Students consolidate everything into a working system for the capstone
Component Weightage
Weekly Coding Labs (Data + Modeling) 30%
Portfolio Analytics System Project 40%
Final Practical Evaluation (Live Problem Solving) 30%
Type Resource Provider
Lecture Python for Finance Yves Hilpisch
Lecture Data Analysis with Python freeCodeCamp
Reading Python for Data Analysis Wes McKinney
Reading Advances in Financial Machine Learning Marcos López de Prado
Practice Kaggle Financial Datasets Kaggle