3 tracks · Python is live

Pick your path.

Python142 topics · ~119 hoursLive

Python foundations for quants

  1. Python syntax and your first program45 minBeginner
  2. Integers and floats30 minBeginner
  3. Strings and f-strings30 minBeginner
  4. Booleans and comparisons30 minBeginner
  5. Conditionals: if, elif, else30 minBeginner
  6. for loops and range30 minBeginner
  7. while loops, break and continue30 minBeginner
  8. Defining and calling functions40 minBeginner
  9. Function arguments and defaults40 minBeginner
  10. Scope and closures40 minBeginner
  11. List comprehensions30 minBeginner
  12. Lists40 minBeginner
  13. Tuples and unpacking30 minBeginner
  14. Dictionaries40 minBeginner
  15. Sets30 minBeginner
  16. Reading and writing text files40 minBeginner
  17. CSV files35 minBeginner
  18. JSON data35 minBeginner
  19. Exceptions and error handling45 minBeginner
  20. Modules and imports35 minBeginner
  21. Packages and project layout40 minBeginner
  22. Virtual environments and pip35 minBeginner
  23. Git basics40 minBeginner
  24. Jupyter notebooks35 minBeginner
  25. Reproducible research workflows40 minBeginner
  26. Classes and objects45 minBeginner
  27. Special methods (__repr__, __eq__)40 minBeginner
  28. Dataclasses35 minBeginner
  29. Derivatives in code40 minBeginner
  30. Integrals in code40 minBeginner
  31. Vectors and dot products40 minBeginner
  32. Matrices and linear systems45 minBeginner
  33. Random variables and expectation45 minBeginner

NumPy & pandas for market data

  1. NumPy arrays and dtypes45 minBeginner
  2. Indexing and slicing arrays35 minBeginner
  3. Vectorisation45 minBeginner
  4. Broadcasting40 minBeginner
  5. pandas Series40 minBeginner
  6. pandas DataFrames45 minBeginner
  7. Selecting data with loc and iloc40 minBeginner
  8. groupby and aggregation40 minBeginner
  9. Merging and joining tables40 minBeginner
  10. Simple returns35 minIntermediate
  11. Log returns35 minIntermediate
  12. DatetimeIndex and time-based indexing40 minIntermediate
  13. Resampling40 minIntermediate
  14. Rolling windows40 minIntermediate
  15. Handling missing data40 minIntermediate
  16. Detecting outliers40 minIntermediate
  17. Corporate actions: splits and dividends45 minIntermediate
  18. Line plots with matplotlib35 minIntermediate
  19. Candlestick charts40 minIntermediate
  20. Histograms and distributions35 minIntermediate

Probability & Monte Carlo simulation

  1. Mean and variance of returns40 minIntermediate
  2. Skewness and kurtosis40 minIntermediate
  3. Fat tails and normality tests45 minIntermediate
  4. Hypothesis tests: the t-test45 minIntermediate
  5. Linear regression (OLS)55 minIntermediate
  6. Volatility45 minIntermediate
  7. The Sharpe ratio40 minIntermediate
  8. Drawdowns40 minIntermediate
  9. Random number generators and seeds40 minIntermediate
  10. Sampling from distributions45 minIntermediate
  11. Monte Carlo estimation50 minIntermediate
  12. Monte Carlo error and convergence50 minIntermediate

Fixed income & options pricing

  1. Present value and discounting40 minIntermediate
  2. Bond prices45 minIntermediate
  3. Yield to maturity45 minIntermediate
  4. Duration and convexity50 minIntermediate
  5. Yield curves and interpolation50 minIntermediate
  6. Option payoffs40 minIntermediate
  7. Put–call parity40 minIntermediate
  8. The Black–Scholes formula55 minIntermediate
  9. Delta45 minIntermediate
  10. Gamma45 minIntermediate
  11. Vega45 minIntermediate
  12. Theta and rho45 minIntermediate
  13. Implied volatility50 minIntermediate
  14. Root finding: bisection and Newton50 minIntermediate
  15. Binomial trees55 minIntermediate
  16. Finite-difference methods1 hrIntermediate

Portfolio optimisation

  1. Covariance and correlation matrices45 minIntermediate
  2. Portfolio return and variance45 minIntermediate
  3. Minimum-variance portfolio50 minIntermediate
  4. Mean-variance optimisation55 minIntermediate
  5. The efficient frontier55 minIntermediate

Backtesting & trading costs

  1. A vectorised backtester1 hrAdvanced
  2. An event-driven backtester1 hr 15 minAdvanced
  3. Look-ahead bias50 minAdvanced
  4. Transaction costs45 minAdvanced
  5. Slippage45 minAdvanced
  6. Realistic order fills55 minAdvanced

Alpha research & risk

  1. CAPM and beta55 minAdvanced
  2. Multi-factor models: Fama-French1 hrAdvanced
  3. The information coefficient55 minAdvanced
  4. Historical VaR50 minAdvanced
  5. Parametric VaR50 minAdvanced
  6. Expected shortfall50 minAdvanced
  7. Stress testing55 minAdvanced
  8. ARIMA models1 hrAdvanced
  9. GARCH volatility models1 hrAdvanced

Stochastic models & machine learning

  1. Brownian motion50 minAdvanced
  2. Geometric Brownian motion55 minAdvanced
  3. Itô's lemma55 minAdvanced
  4. Asian options55 minAdvanced
  5. Barrier options1 hrAdvanced
  6. Antithetic variates45 minAdvanced
  7. Control variates50 minAdvanced
  8. scikit-learn pipelines for returns1 hrAdvanced
  9. Feature engineering for financial data1 hrAdvanced
  10. Walk-forward validation1 hrAdvanced

Market data & microstructure

  1. The limit order book1 hrAdvanced
  2. Order-flow imbalance50 minAdvanced
  3. Asynchronous code with asyncio1 hrAdvanced
  4. Streaming data with websockets55 minAdvanced
  5. The FIX protocol1 hrAdvanced

High-performance Python engineering

  1. Clean code45 minAdvanced
  2. Type hints and static checking45 minAdvanced
  3. Testing with pytest50 minAdvanced
  4. Profiling Python code50 minAdvanced
  5. Optimising hot loops55 minAdvanced
  6. Numba1 hrAdvanced
  7. Cython1 hrAdvanced
  8. Calling C++ with pybind111 hrAdvanced
  9. Threads and the GIL55 minAdvanced
  10. Multiprocessing55 minAdvanced
  11. SQL databases55 minAdvanced
  12. Parquet and Arrow50 minAdvanced
  13. Time-series databases50 minAdvanced

Production systems & frontier models

  1. Packaging a Python library1 hrExpert
  2. CI/CD for quant code1 hrExpert
  3. Scheduled pipelines1 hrExpert
  4. TWAP execution1 hrExpert
  5. VWAP execution1 hrExpert
  6. Market making1 hr 30 minExpert
  7. The Heston model1 hr 30 minExpert
  8. Local volatility1 hr 30 minExpert
  9. The SABR model1 hr 30 minExpert
  10. Model calibration1 hr 30 minExpert
  11. Neural networks for forecasting1 hr 30 minExpert
  12. Reinforcement learning for trading2 hrExpert
  13. Capstone: an end-to-end pricing or strategy library4 hrExpert
C++93 topics · ~86 hoursComing soon

C++ foundations

  1. Compilers and the build process45 minBeginner
  2. CMake projects45 minBeginner
  3. Sanitizers40 minBeginner
  4. Fundamental types and initialisation40 minBeginner
  5. References40 minBeginner
  6. const-correctness40 minBeginner
  7. Functions and overloading40 minBeginner
  8. Lambdas40 minBeginner
  9. std::function40 minBeginner
  10. Classes and constructors45 minBeginner
  11. RAII50 minBeginner
  12. The rule of zero45 minBeginner
  13. Raw pointers40 minBeginner
  14. std::unique_ptr45 minBeginner
  15. std::shared_ptr and weak_ptr45 minBeginner
  16. Move semantics1 hrBeginner
  17. Value categories50 minBeginner
  18. Exceptions45 minBeginner
  19. std::expected45 minBeginner

STL and data handling

  1. std::vector45 minBeginner
  2. std::array35 minBeginner
  3. std::map40 minBeginner
  4. std::unordered_map45 minBeginner
  5. Iterators40 minBeginner
  6. Ranges and views45 minBeginner
  7. STL algorithms45 minBeginner
  8. std::string40 minBeginner
  9. std::string_view35 minBeginner
  10. std::span35 minBeginner
  11. Parsing CSV files50 minBeginner
  12. Reading binary data files50 minBeginner
  13. chrono durations40 minBeginner
  14. chrono time points40 minBeginner

Generic programming

  1. Function templates55 minIntermediate
  2. Class templates55 minIntermediate
  3. Concepts1 hrIntermediate
  4. constexpr functions50 minIntermediate
  5. consteval and compile-time tables50 minIntermediate
  6. CRTP1 hrIntermediate
  7. Policy-based design1 hrIntermediate
  8. Perfect forwarding50 minIntermediate
  9. std::variant and std::visit55 minIntermediate
  10. std::optional40 minIntermediate

Numerics and pricing

  1. Linear algebra with Eigen1 hrIntermediate
  2. Random number engines50 minIntermediate
  3. Monte Carlo pricing1 hrIntermediate
  4. Designing an option pricing library1 hr 15 minIntermediate
  5. Greeks by finite differences55 minIntermediate
  6. Automatic differentiation1 hr 10 minIntermediate
  7. Root finding50 minIntermediate
  8. Numerical integration50 minIntermediate

Testing, benchmarking and debugging

  1. Unit testing with GoogleTest50 minIntermediate
  2. Mocking dependencies45 minIntermediate
  3. Benchmarking with Google Benchmark55 minIntermediate
  4. Debugging with GDB55 minIntermediate
  5. Finding memory errors with ASan45 minIntermediate
  6. Finding undefined behaviour with UBSan45 minIntermediate

Hardware and memory

  1. The cache hierarchy1 hrAdvanced
  2. Data layout: AoS vs SoA1 hrAdvanced
  3. Branch prediction55 minAdvanced
  4. Inlining and compiler optimisation55 minAdvanced
  5. Memory pools1 hrAdvanced
  6. Custom allocators1 hrAdvanced
  7. Arena allocation55 minAdvanced
  8. Small-buffer optimisation50 minAdvanced
  9. Flat containers50 minAdvanced
  10. Profiling with perf55 minAdvanced
  11. Flame graphs45 minAdvanced
  12. SIMD intrinsics1 hr 10 minAdvanced
  13. Auto-vectorisation55 minAdvanced

Concurrency and lock-free design

  1. Threads50 minAdvanced
  2. Mutexes and locks50 minAdvanced
  3. Condition variables50 minAdvanced
  4. std::atomic55 minAdvanced
  5. The C++ memory model1 hr 15 minAdvanced
  6. A lock-free SPSC ring buffer1 hr 30 minAdvanced
  7. False sharing55 minAdvanced
  8. NUMA and CPU pinning1 hrAdvanced
  9. Thread pools1 hrAdvanced
  10. Task-based parallelism with futures55 minAdvanced

Trading systems

  1. Order book data structures1 hrAdvanced
  2. Price-time priority55 minAdvanced
  3. A matching engine1 hr 30 minAdvanced
  4. UDP multicast55 minAdvanced
  5. Binary market data protocols1 hrAdvanced
  6. Market data handlers1 hr 15 minAdvanced
  7. The FIX protocol55 minAdvanced
  8. Order-entry gateways1 hrAdvanced

Production systems and frontier

  1. Kernel-bypass networking1 hr 30 minExpert
  2. Measuring tail latency1 hr 15 minExpert
  3. Python bindings with pybind111 hr 30 minExpert
  4. A backtesting engine in C++2 hrExpert
  5. Capstone: a low-latency trading engine4 hrExpert

From modern C++ to lock-free, low-latency trading infrastructure.

OxCaml71 topics · ~66 hoursComing soon

OCaml foundations

  1. opam and dune45 minBeginner
  2. The OCaml REPL30 minBeginner
  3. Values and let-bindings40 minBeginner
  4. Functions40 minBeginner
  5. Recursion40 minBeginner
  6. Lists40 minBeginner
  7. Options30 minBeginner
  8. Tuples and records40 minBeginner
  9. Variants40 minBeginner
  10. Pattern matching45 minBeginner
  11. Immutability and persistent data35 minBeginner
  12. Higher-order functions45 minBeginner
  13. Pipelines and the pipe operator35 minBeginner
  14. Exceptions40 minBeginner
  15. The result type40 minBeginner

Core and data

  1. Base and Core45 minBeginner
  2. Maps40 minBeginner
  3. Sets35 minBeginner
  4. Hash tables40 minBeginner
  5. Arrays40 minBeginner
  6. Mutable state and refs35 minBeginner
  7. S-expressions40 minBeginner
  8. Deriving sexp40 minBeginner
  9. Deriving compare and hash40 minBeginner
  10. Dates and times40 minBeginner
  11. Money and decimal arithmetic40 minBeginner

Types and abstraction

  1. Modules55 minIntermediate
  2. Signatures55 minIntermediate
  3. Functors1 hr 10 minIntermediate
  4. First-class modules1 hrIntermediate
  5. GADTs1 hr 10 minIntermediate
  6. Phantom types55 minIntermediate
  7. Type-driven design55 minIntermediate
  8. Inline tests45 minIntermediate
  9. Expect tests with ppx_expect45 minIntermediate

Finance in OCaml

  1. Prices and returns55 minIntermediate
  2. Time-series pipelines1 hrIntermediate
  3. Random numbers50 minIntermediate
  4. Monte Carlo simulation1 hrIntermediate
  5. The Black–Scholes formula55 minIntermediate
  6. The Greeks55 minIntermediate
  7. Persistent order books1 hr 15 minIntermediate

Async and networking

  1. Deferred and Async1 hrIntermediate
  2. Async pipes50 minIntermediate
  3. RPC1 hrIntermediate
  4. TCP networking55 minIntermediate
  5. Domains1 hrIntermediate
  6. Effects1 hrIntermediate

Runtime and performance

  1. The OCaml garbage collector55 minAdvanced
  2. Boxing and allocation55 minAdvanced
  3. Stack allocation and the local mode1 hr 5 minAdvanced
  4. The unique mode1 hrAdvanced
  5. The once mode55 minAdvanced
  6. Layouts1 hrAdvanced
  7. Unboxed types1 hrAdvanced
  8. Unboxed numbers55 minAdvanced
  9. Unboxed records55 minAdvanced
  10. SIMD vector types1 hrAdvanced
  11. SIMD intrinsics1 hrAdvanced
  12. Zero-alloc checking1 hrAdvanced
  13. Benchmarking with core_bench55 minAdvanced
  14. Profiling with perf55 minAdvanced

Safe parallelism

  1. The portable mode1 hrAdvanced
  2. The contended mode1 hrAdvanced
  3. Data-race-free parallelism1 hr 15 minAdvanced
  4. Mode crossing1 hrAdvanced
  5. Kinds1 hrAdvanced

Production systems and frontier

  1. C interop and the FFI1 hr 10 minExpert
  2. A low-latency market data handler2 hrExpert
  3. A typed order-matching engine2 hrExpert
  4. Capstone: a trading system in OxCaml4 hrExpert

Functional programming for trading systems, with OxCaml's performance extensions.