Curriculum
From print() to a matching engine
Lessons that are not written yet are listed so you can see where the course goes.
0 · Orientation
- 0.1Hello, market
- 0.2The problem templateReady
1 · Numbers & Money
- 1.1Variables & arithmetic
- 1.2The float trap
- 1.3math & f-strings
2 · Decisions
- 2.1Booleans & comparisons
- 2.2Branching
- 2.3Tick-size rounding
3 · Lists & Loops
- 3.1Lists & indexing
- 3.2for & accumulation
- 3.3Running maxReady
- 3.4while, break, continue
- 3.5Building lists
4 · Functions
- 4.1Functions properly
- 4.2Scope & mutability
- 4.3Functions as values
- 4.4Errors & exceptions
- 4.5Testing your own code
5 · Complexity
- 5.1Counting work
- 5.2Best time to buy and sell
- 5.3Sliding windows
- 5.4Prefix sums
6 · Dicts & Sets
- 6.1Dictionaries
- 6.2Sets
- 6.3Two-sum
- 6.4Grouping & counting
7 · Strings & Files
- 7.1String toolkit
- 7.2Parsing a wire protocol
- 7.3Files & CSV
8 · Classes & Data Modelling
- 8.1Classes
- 8.2Dataclasses & enums
- 8.3Dunder methods
- 8.4Generators
9 · Searching & Sorting
- 9.1Binary search
- 9.2Bisection
- 9.3Merging sorted streams
- 9.4Sorting in practice
- 9.5Quickselect
10 · Stacks, Queues & Linked Lists
- 10.1Stacks
- 10.2Next greater element
- 10.3Queues
- 10.4Monotonic deque
- 10.5Linked lists
11 · Heaps & Trees
- 11.1Heaps
- 11.2k-way merge
- 11.3Two heaps
- 11.4The limit order book
- 11.5Binary search trees
12 · Recursion & Dynamic Programming
- 12.1Recursion
- 12.2Binomial trees
- 12.3Memoisation
- 12.4Bottom-up DP
- 12.5State-machine DP
- 12.6Knapsack
13 · Greedy
- 13.1Greedy choice
- 13.2Merging intervals
- 13.3Sweep line
- 13.4When greedy fails
14 · Graphs
- 14.1Graphs as dicts
- 14.2Dijkstra
- 14.3Bellman-Ford
- 14.4Topological sort
- 14.5Union-find
15 · Randomness & Monte Carlo
- 15.1Seeds & reproducibility
- 15.2Geometric Brownian motion
- 15.3Monte Carlo pricing
- 15.4Variance reduction
- 15.5Bootstrap
16 · Streaming Stats & Numerical Methods
- 16.1Online mean & variance
- 16.2EWMA
- 16.3Newton-Raphson
- 16.4Finite differences
- 16.5Correlation matrix
17 · NumPy & pandas
- 17.1Arrays
- 17.2Broadcasting & masks
- 17.3pandas essentials
- 17.4Linear algebra
Capstones
- C1Matching engine
- C2Event-driven backtester
- C3Arbitrage scanner
- C4Risk engine
- C5Option pricing lab