How much volatility information lives in the high and low? Build an exact bar simulator, measure the famous range estimators honestly, and stress-test them until they break.
numpy · statistics · volatility · monte-carlo
Learners placed at Morgan Stanley NYC · Optiver AMS
A volatility estimation toolkit, built section by section - hands-on, but never alone. Theory first, then you implement it, and checkpoints confirm each section clicked before the next one opens.
Never stuck
Reveal a hint when you want a nudge - or the full worked solution when you want the answer. Every exercise ships one.
Theory before code
Each formula is explained step by step before you implement it. Nothing is assumed mid-build.
Yours to keep
Finish with the complete research notebook - keep extending it with your own data.
Real code from inside the project. Press Run to see a candle’s high-low range beat close-to-close volatility estimation. Open this page on desktop to run it live in your browser.
import numpy as np
rng = np.random.default_rng(9)
true_vol = 0.20
m = 78 # intraday steps per day
dt = 1 / (252 * m)
def estimate(days):
paths = np.cumsum(rng.normal(0, true_vol * np.sqrt(dt), (days, m)), axis=1)
c = paths[:, -1]
h, l = paths.max(axis=1), paths.min(axis=1)
close_close = np.sqrt(252 * np.mean(c ** 2))
parkinson = np.sqrt(252 * np.mean((h - l) ** 2) / (4 * np.log(2)))
return close_close, parkinson
trials = np.array([estimate(20) for _ in range(300)])
cc_sd, pk_sd = trials[:, 0].std(), trials[:, 1].std()
print(f"true volatility: {true_vol:.0%}, estimated from only 20 days:")
print(f"close-to-close : {trials[:, 0].mean():.1%} +/- {cc_sd:.1%}")
print(f"Parkinson (h-l): {trials[:, 1].mean():.1%} +/- {pk_sd:.1%}")
print(f"the candle's high-low range is {cc_sd / pk_sd:.1f}x more precise")The full build derives Parkinson and Garman-Klass and stress-tests them on real candles.
Resume bullets
Copy-paste ready - with the build behind you to back every line.
4 more resume bullets inside the project
Interview ammo
“Why does close-to-close variance ignore most of a candlestick, and what is that information worth? Walk through what the high and low add and the 200-day precision benchmark.”
You answer this with a system you built, not a definition you memorized.
4 more talking points inside the project
Full access to this build and the rest of the pipeline - every project in the vault, plus the lessons, exams and certificates behind them. Guided from the first line to the last.
~10h build · +250 XP · 5 resume bullets · 5 interview answers