Python142 topics · ~119 hoursLivePython foundations for quants1Python syntax and your first program45 minBeginner2Integers and floats30 minBeginner3Strings and f-strings30 minBeginner4Booleans and comparisons30 minBeginner5Conditionals: if, elif, else30 minBeginner6for loops and range30 minBeginner7while loops, break and continue30 minBeginner8Defining and calling functions40 minBeginner9Function arguments and defaults40 minBeginner10Scope and closures40 minBeginner11List comprehensions30 minBeginner12Lists40 minBeginner13Tuples and unpacking30 minBeginner14Dictionaries40 minBeginner15Sets30 minBeginner16Reading and writing text files40 minBeginner17CSV files35 minBeginner18JSON data35 minBeginner19Exceptions and error handling45 minBeginner20Modules and imports35 minBeginner21Packages and project layout40 minBeginner22Virtual environments and pip35 minBeginner23Git basics40 minBeginner24Jupyter notebooks35 minBeginner25Reproducible research workflows40 minBeginner26Classes and objects45 minBeginner27Special methods (__repr__, __eq__)40 minBeginner28Dataclasses35 minBeginner29Derivatives in code40 minBeginner30Integrals in code40 minBeginner31Vectors and dot products40 minBeginner32Matrices and linear systems45 minBeginner33Random variables and expectation45 minBeginnerNumPy & pandas for market data34NumPy arrays and dtypes45 minBeginner35Indexing and slicing arrays35 minBeginner36Vectorisation45 minBeginner37Broadcasting40 minBeginner38pandas Series40 minBeginner39pandas DataFrames45 minBeginner40Selecting data with loc and iloc40 minBeginner41groupby and aggregation40 minBeginner42Merging and joining tables40 minBeginner43Simple returns35 minIntermediate44Log returns35 minIntermediate45DatetimeIndex and time-based indexing40 minIntermediate46Resampling40 minIntermediate47Rolling windows40 minIntermediate48Handling missing data40 minIntermediate49Detecting outliers40 minIntermediate50Corporate actions: splits and dividends45 minIntermediate51Line plots with matplotlib35 minIntermediate52Candlestick charts40 minIntermediate53Histograms and distributions35 minIntermediateProbability & Monte Carlo simulation54Mean and variance of returns40 minIntermediate55Skewness and kurtosis40 minIntermediate56Fat tails and normality tests45 minIntermediate57Hypothesis tests: the t-test45 minIntermediate58Linear regression (OLS)55 minIntermediate59Volatility45 minIntermediate60The Sharpe ratio40 minIntermediate61Drawdowns40 minIntermediate62Random number generators and seeds40 minIntermediate63Sampling from distributions45 minIntermediate64Monte Carlo estimation50 minIntermediate65Monte Carlo error and convergence50 minIntermediateFixed income & options pricing66Present value and discounting40 minIntermediate67Bond prices45 minIntermediate68Yield to maturity45 minIntermediate69Duration and convexity50 minIntermediate70Yield curves and interpolation50 minIntermediate71Option payoffs40 minIntermediate72Put–call parity40 minIntermediate73The Black–Scholes formula55 minIntermediate74Delta45 minIntermediate75Gamma45 minIntermediate76Vega45 minIntermediate77Theta and rho45 minIntermediate78Implied volatility50 minIntermediate79Root finding: bisection and Newton50 minIntermediate80Binomial trees55 minIntermediate81Finite-difference methods1 hrIntermediatePortfolio optimisation82Covariance and correlation matrices45 minIntermediate83Portfolio return and variance45 minIntermediate84Minimum-variance portfolio50 minIntermediate85Mean-variance optimisation55 minIntermediate86The efficient frontier55 minIntermediateBacktesting & trading costs87A vectorised backtester1 hrAdvanced88An event-driven backtester1 hr 15 minAdvanced89Look-ahead bias50 minAdvanced90Transaction costs45 minAdvanced91Slippage45 minAdvanced92Realistic order fills55 minAdvancedAlpha research & risk93CAPM and beta55 minAdvanced94Multi-factor models: Fama-French1 hrAdvanced95The information coefficient55 minAdvanced96Historical VaR50 minAdvanced97Parametric VaR50 minAdvanced98Expected shortfall50 minAdvanced99Stress testing55 minAdvanced100ARIMA models1 hrAdvanced101GARCH volatility models1 hrAdvancedStochastic models & machine learning102Brownian motion50 minAdvanced103Geometric Brownian motion55 minAdvanced104Itô's lemma55 minAdvanced105Asian options55 minAdvanced106Barrier options1 hrAdvanced107Antithetic variates45 minAdvanced108Control variates50 minAdvanced109scikit-learn pipelines for returns1 hrAdvanced110Feature engineering for financial data1 hrAdvanced111Walk-forward validation1 hrAdvancedMarket data & microstructure112The limit order book1 hrAdvanced113Order-flow imbalance50 minAdvanced114Asynchronous code with asyncio1 hrAdvanced115Streaming data with websockets55 minAdvanced116The FIX protocol1 hrAdvancedHigh-performance Python engineering117Clean code45 minAdvanced118Type hints and static checking45 minAdvanced119Testing with pytest50 minAdvanced120Profiling Python code50 minAdvanced121Optimising hot loops55 minAdvanced122Numba1 hrAdvanced123Cython1 hrAdvanced124Calling C++ with pybind111 hrAdvanced125Threads and the GIL55 minAdvanced126Multiprocessing55 minAdvanced127SQL databases55 minAdvanced128Parquet and Arrow50 minAdvanced129Time-series databases50 minAdvancedProduction systems & frontier models130Packaging a Python library1 hrExpert131CI/CD for quant code1 hrExpert132Scheduled pipelines1 hrExpert133TWAP execution1 hrExpert134VWAP execution1 hrExpert135Market making1 hr 30 minExpert136The Heston model1 hr 30 minExpert137Local volatility1 hr 30 minExpert138The SABR model1 hr 30 minExpert139Model calibration1 hr 30 minExpert140Neural networks for forecasting1 hr 30 minExpert141Reinforcement learning for trading2 hrExpert142Capstone: an end-to-end pricing or strategy library4 hrExpertStart roadmap
C++93 topics · ~86 hoursComing soonC++ foundationsCompilers and the build process45 minBeginnerCMake projects45 minBeginnerSanitizers40 minBeginnerFundamental types and initialisation40 minBeginnerReferences40 minBeginnerconst-correctness40 minBeginnerFunctions and overloading40 minBeginnerLambdas40 minBeginnerstd::function40 minBeginnerClasses and constructors45 minBeginnerRAII50 minBeginnerThe rule of zero45 minBeginnerRaw pointers40 minBeginnerstd::unique_ptr45 minBeginnerstd::shared_ptr and weak_ptr45 minBeginnerMove semantics1 hrBeginnerValue categories50 minBeginnerExceptions45 minBeginnerstd::expected45 minBeginnerSTL and data handlingstd::vector45 minBeginnerstd::array35 minBeginnerstd::map40 minBeginnerstd::unordered_map45 minBeginnerIterators40 minBeginnerRanges and views45 minBeginnerSTL algorithms45 minBeginnerstd::string40 minBeginnerstd::string_view35 minBeginnerstd::span35 minBeginnerParsing CSV files50 minBeginnerReading binary data files50 minBeginnerchrono durations40 minBeginnerchrono time points40 minBeginnerGeneric programmingFunction templates55 minIntermediateClass templates55 minIntermediateConcepts1 hrIntermediateconstexpr functions50 minIntermediateconsteval and compile-time tables50 minIntermediateCRTP1 hrIntermediatePolicy-based design1 hrIntermediatePerfect forwarding50 minIntermediatestd::variant and std::visit55 minIntermediatestd::optional40 minIntermediateNumerics and pricingLinear algebra with Eigen1 hrIntermediateRandom number engines50 minIntermediateMonte Carlo pricing1 hrIntermediateDesigning an option pricing library1 hr 15 minIntermediateGreeks by finite differences55 minIntermediateAutomatic differentiation1 hr 10 minIntermediateRoot finding50 minIntermediateNumerical integration50 minIntermediateTesting, benchmarking and debuggingUnit testing with GoogleTest50 minIntermediateMocking dependencies45 minIntermediateBenchmarking with Google Benchmark55 minIntermediateDebugging with GDB55 minIntermediateFinding memory errors with ASan45 minIntermediateFinding undefined behaviour with UBSan45 minIntermediateHardware and memoryThe cache hierarchy1 hrAdvancedData layout: AoS vs SoA1 hrAdvancedBranch prediction55 minAdvancedInlining and compiler optimisation55 minAdvancedMemory pools1 hrAdvancedCustom allocators1 hrAdvancedArena allocation55 minAdvancedSmall-buffer optimisation50 minAdvancedFlat containers50 minAdvancedProfiling with perf55 minAdvancedFlame graphs45 minAdvancedSIMD intrinsics1 hr 10 minAdvancedAuto-vectorisation55 minAdvancedConcurrency and lock-free designThreads50 minAdvancedMutexes and locks50 minAdvancedCondition variables50 minAdvancedstd::atomic55 minAdvancedThe C++ memory model1 hr 15 minAdvancedA lock-free SPSC ring buffer1 hr 30 minAdvancedFalse sharing55 minAdvancedNUMA and CPU pinning1 hrAdvancedThread pools1 hrAdvancedTask-based parallelism with futures55 minAdvancedTrading systemsOrder book data structures1 hrAdvancedPrice-time priority55 minAdvancedA matching engine1 hr 30 minAdvancedUDP multicast55 minAdvancedBinary market data protocols1 hrAdvancedMarket data handlers1 hr 15 minAdvancedThe FIX protocol55 minAdvancedOrder-entry gateways1 hrAdvancedProduction systems and frontierKernel-bypass networking1 hr 30 minExpertMeasuring tail latency1 hr 15 minExpertPython bindings with pybind111 hr 30 minExpertA backtesting engine in C++2 hrExpertCapstone: a low-latency trading engine4 hrExpertFrom modern C++ to lock-free, low-latency trading infrastructure.Notify me
OxCaml71 topics · ~66 hoursComing soonOCaml foundationsopam and dune45 minBeginnerThe OCaml REPL30 minBeginnerValues and let-bindings40 minBeginnerFunctions40 minBeginnerRecursion40 minBeginnerLists40 minBeginnerOptions30 minBeginnerTuples and records40 minBeginnerVariants40 minBeginnerPattern matching45 minBeginnerImmutability and persistent data35 minBeginnerHigher-order functions45 minBeginnerPipelines and the pipe operator35 minBeginnerExceptions40 minBeginnerThe result type40 minBeginnerCore and dataBase and Core45 minBeginnerMaps40 minBeginnerSets35 minBeginnerHash tables40 minBeginnerArrays40 minBeginnerMutable state and refs35 minBeginnerS-expressions40 minBeginnerDeriving sexp40 minBeginnerDeriving compare and hash40 minBeginnerDates and times40 minBeginnerMoney and decimal arithmetic40 minBeginnerTypes and abstractionModules55 minIntermediateSignatures55 minIntermediateFunctors1 hr 10 minIntermediateFirst-class modules1 hrIntermediateGADTs1 hr 10 minIntermediatePhantom types55 minIntermediateType-driven design55 minIntermediateInline tests45 minIntermediateExpect tests with ppx_expect45 minIntermediateFinance in OCamlPrices and returns55 minIntermediateTime-series pipelines1 hrIntermediateRandom numbers50 minIntermediateMonte Carlo simulation1 hrIntermediateThe Black–Scholes formula55 minIntermediateThe Greeks55 minIntermediatePersistent order books1 hr 15 minIntermediateAsync and networkingDeferred and Async1 hrIntermediateAsync pipes50 minIntermediateRPC1 hrIntermediateTCP networking55 minIntermediateDomains1 hrIntermediateEffects1 hrIntermediateRuntime and performanceThe OCaml garbage collector55 minAdvancedBoxing and allocation55 minAdvancedStack allocation and the local mode1 hr 5 minAdvancedThe unique mode1 hrAdvancedThe once mode55 minAdvancedLayouts1 hrAdvancedUnboxed types1 hrAdvancedUnboxed numbers55 minAdvancedUnboxed records55 minAdvancedSIMD vector types1 hrAdvancedSIMD intrinsics1 hrAdvancedZero-alloc checking1 hrAdvancedBenchmarking with core_bench55 minAdvancedProfiling with perf55 minAdvancedSafe parallelismThe portable mode1 hrAdvancedThe contended mode1 hrAdvancedData-race-free parallelism1 hr 15 minAdvancedMode crossing1 hrAdvancedKinds1 hrAdvancedProduction systems and frontierC interop and the FFI1 hr 10 minExpertA low-latency market data handler2 hrExpertA typed order-matching engine2 hrExpertCapstone: a trading system in OxCaml4 hrExpertFunctional programming for trading systems, with OxCaml's performance extensions.Notify me