Quant Deep Dive
Questions Every Quant Student Asks, Answered.
Worked solutions, proofs and Python examples for the questions that come up while learning quantitative finance.
101 questions
Quant finance fundamentals
- Practical guideWhat Maths Do You Need Before Stochastic Calculus?
- Practical guideWhat Does a Quant Researcher Do Compared With a Quant Trader?
- Practical guideHow Much Python Do You Need to Build a Trading Strategy?
- Practical guideHow Can You Learn Quant Research Without a Finance Degree?
- Practical guideQuantitative Finance vs Financial Engineering vs Computational Finance
- ConceptWhy Do Financial Models Use Stochastic Processes?
- Practical guideBeginner Quant Projects You Can Build With Public Data
- ConceptHow Probability and Linear Algebra Solve Quant Finance Problems
- Practical guideA Python Project Sequence for Learning Financial Mathematics
- ConceptWhy Quant Models Use Unrealistic Assumptions
- ConceptWhat Is Quantitative Finance?
Stochastic calculus and Brownian motion
- ConceptBrownian Motion for Stock Modelling With a Discrete Walk Example
- Derivation or proofWhy Brownian Motion Is Nowhere Differentiable
- Derivation or proofDeriving Itô’s Lemma From the Second-Order Taylor Term
- ConceptHow Ordinary Calculus and Itô Calculus Treat the Chain Rule
- Practical guideHow to Choose an Itô Transformation to Solve an SDE
- Derivation or proofWhy Brownian Quadratic Variation Equals Elapsed Time
- ConceptCan a Process Be Markov Without Being a Martingale?
- Derivation or proofHow to Convert Between Itô and Stratonovich Integrals
- Derivation or proofHow Girsanov’s Theorem Changes the Drift for Derivative Pricing
- Python implementationSimulating Geometric Brownian Motion in Python and Checking Its Moments
Derivatives pricing and financial mathematics
- Derivation or proofDeriving the Black–Scholes PDE With a Delta Hedge
- ConceptWhy Risk-Neutral Pricing Uses Different Probabilities
- ConceptWhat Happens When You Rebalance a Delta Hedge Discretely?
- Python implementationHow to Calculate European Option Greeks by Hand and in Python
- ConceptHow to Compare Implied and Historical Volatility on the Same Horizon
- Python implementationBuilding a Binomial Option Pricer and Checking Black–Scholes Convergence
- Python implementationPricing Asian and Barrier Options With Monte Carlo
- ConceptWhat an Implied Volatility Smile Reveals About Black–Scholes
- Python implementationHow the Heston Model’s Parameters Affect Paths and Option Prices
- Python implementationHow Finite Differences Solve the Black–Scholes PDE
Time series, statistics and econometrics
- Python implementationHow to Diagnose Stationarity in Prices and Returns
- ConceptWhen to Use ARIMA and GARCH Together
- ConceptHow GARCH Produces Volatility Clustering After a Shock
- Python implementationTesting Cointegration for Pairs Trading in Python
- ConceptWhy High Correlation Can Fail a Pairs Trading Test
- Python implementationFitting a GARCH Model and Reading the Output in Python
- Practical guideHow to Check Financial Returns for Dependence and Breaks
- Python implementationHow to Estimate Fama–French Three- and Five-Factor Regressions
- ConceptHow Extreme Value Theory Models Financial Tail Losses
- Practical guideHow to Test Whether a Significant Signal Survives Costs
Quant trading strategies and backtesting
- Python implementationBuilding a Mean-Reversion Backtest in Python
- Practical guideHow to Audit a Backtest for Look-Ahead and Survivorship Bias
- Practical guideWhy a Profitable Backtest Can Lose Money Live
- Python implementationHow to Run Walk-Forward Optimisation Without Peeking
- Practical guideHow to Split Market Data Into Training and Test Periods
- Practical guideHow to Evaluate a Strategy With Drawdown, Turnover and Tail Risk
- Derivation or proofHow to Calculate the Deflated Sharpe Ratio After Multiple Trials
- Python implementationHow to Model Slippage, Fees and Market Impact in Python
- Practical guideHow to Debug a Backtest With Implausibly High Returns
- Practical guideHow to Test a Trading Edge for Overfitting
Portfolio optimisation and risk management
- Derivation or proofDeriving Mean–Variance Portfolio Weights With Lagrange Multipliers
- Python implementationHow to Build and Plot an Efficient Frontier in Python
- Derivation or proofHow Black–Litterman Updates Returns With Investor Views
- ConceptVaR and Expected Shortfall Compared on the Same Loss Distribution
- Python implementationThree Ways to Calculate Portfolio Value at Risk
- Derivation or proofWhy Small Return Forecast Errors Move Optimal Weights So Much
- Python implementationHow Risk Parity Changes a Portfolio’s Risk Contributions
- Python implementationUsing PCA to Find Common Portfolio Risk Factors
- Derivation or proofHow Covariance Shrinkage Stabilises Portfolio Optimisation
- Practical guideHow to Stress Test a Multi-Asset Portfolio
Machine learning in quantitative finance
- Practical guideHow to Predict Stock Returns Without Leaking Future Information
- ConceptWhy Random Splits Break Financial Time-Series Validation
- Python implementationBuilding an XGBoost Return Forecast With Point-in-Time Features
- ConceptWhen Simple Statistical Forecasts Can Beat Machine Learning
- Derivation or proofHow Purging and Embargo Work for Overlapping Financial Labels
- Practical guideHow to Test Whether a Trading Feature Adds Predictive Information
- Python implementationBuilding an ML Pairs Strategy Against a Cointegration Baseline
- ConceptWhy Deep Learning Can Underperform Simpler Return Models
- ConceptHow Reinforcement Learning Frames Portfolio Rebalancing
- Practical guideDesigning an End-to-End Financial ML Pipeline
Itô calculus and SDE exercises
- Worked exerciseApplying Itô’s Lemma to a Function of Time and Brownian Motion
- Worked exerciseSolving Geometric Brownian Motion by Applying Itô’s Lemma to Log Price
- Worked exerciseHow to Test an Exponential Brownian Process for the Martingale Property
- Worked exerciseCalculating the Mean and Variance of Geometric Brownian Motion
- Worked exerciseWhy Brownian Squares Survive Itô’s Rule and Time Squares Vanish
- Worked exerciseSolving the Ornstein–Uhlenbeck SDE With an Integrating Factor
- Worked exerciseCalculating Quadratic Variation With a Drift Term
- Worked exerciseApplying Itô’s Product Rule to Correlated Brownian Motions
- Worked exerciseProving a Discounted Stock Price Is a Risk-Neutral Martingale
- Worked exerciseUsing the Itô Isometry to Find a Stochastic Integral’s Variance
Probability, martingale and measure theory exercises
- Worked exerciseConstructing Convergence in Probability Without Almost-Sure Convergence
- Worked exerciseUsing the Tower Property With Nested Sigma-Algebras
- Worked exerciseHow to Prove a Process Is a Martingale
- Worked exerciseChecking Optional Stopping With Bounded and Unbounded Times
- Worked exerciseHow to Spot Dominated Convergence in a Probability Solution
- Worked exerciseDeriving the Normal Moment-Generating Function by Completing the Square
- Worked exerciseProving Brownian Increments Are Independent From the Gaussian Covariance
- Worked exerciseReading a Filtration as the Information Available at Each Step
- Worked exerciseDeriving a Conditional Gaussian Distribution
- Worked exerciseHow to Prove a Process Is Adapted to a Filtration
Derivatives and computational finance exercises
- Worked exercisePricing a European Call by Hand With Black–Scholes
- Worked exerciseDeriving Black–Scholes From a Self-Financing Replicating Portfolio
- Worked exerciseImplementing a 100-Step Binomial Tree With Backward Induction
- Worked exercisePricing an Option in a Two-Period Risk-Neutral Tree
- Worked exerciseSetting Finite-Difference Boundary Conditions for a European Put
- Worked exerciseDebugging Monte Carlo Option Prices Against Black–Scholes
- Worked exerciseEstimating Option Delta and Gamma With Bump-and-Reprice
- Worked exerciseDeriving the Vasicek Zero-Coupon Bond Price
- Worked exerciseDiagnosing an Unstable Explicit Black–Scholes Grid
- Worked exerciseCalibrating Heston to an Option Chain With Weighted Pricing Errors