Note: The content on this page is subject to change before class starts.
Before we start working with financial data, we will set up the tools needed for the course. In this lesson, we will install Visual Studio Code, set up Python, add the required extensions, and run a simple test file to make sure everything works.Lesson 0: Setting Things Up
Topics Covered
In this lesson, we will begin working with real stock market data. We will load stock data into Python using Pandas, filter it by date, create simple plots, and then see how an AI agent can help perform the same tasks more efficiently.Lesson 1: Getting Started with Stock Data in Python
Topics Covered
In this lesson, we will work with multiple stocks in one DataFrame, slice the data by date and symbol, plot stock prices, and normalize prices for comparison.Lesson 2: Building Multi-Stock Datasets
Topics Covered
In this lesson, we will learn how NumPy supports fast numerical computing in Python and how it connects with Pandas for financial data analysis.Lesson 3: NumPy for Financial Computing
Topics Covered
In this lesson, we will calculate basic and rolling statistics for stock price data and use Bollinger Bands as a technical indicator example.Lesson 4: Time-Series Statistics for Market Data
Topics Covered
Reading
In this lesson, we will examine why missing data appears in financial datasets and how to handle it in Python.Lesson 5: Handling Missing Financial Data
Topics Covered
In this lesson, we will use histograms and scatter plots to analyze daily returns and compare relationships across stocks.Lesson 6: Visualizing Returns and Stock Relationships
Topics Covered
In this lesson, we will calculate key portfolio statistics, including daily return, volatility, cumulative return, and the Sharpe ratio.Lesson 7: Measuring Portfolio Performance
Topics Covered
In this lesson, we will learn what optimizers do and use one to fit a parameterized model to data.Lesson 8: Using Optimization to Fit Models
Topics Covered
In this lesson, we will use an optimizer to build a portfolio based on objectives, constraints, and allocation ranges.Lesson 9: Portfolio Optimization in Python
Topics Covered
Reading