σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyRoadmapsSkills
Ctrl K
AO
+1.2k Learners
LoginJoin ↗
RoadmapsSkills
AO
+1.2k Learners
Login
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
uantCraft Academy

Quant development, learned by doing: short lessons, graded labs and a real IDE, right in your browser.

Learn
All roadmapsAll skillsPython skillC++ skillSoonOxCaml skillSoonMarket Structure skillCalculus skillLinear Algebra skillProbability skillStatistics skillMatrix Decompositions skillOptimization skillTime Series skillStochastic Calculus skillBayesian Inference skillHidden Markov Models skillParticle filtering and non-stationary time series skillscikit-learn skillstatsmodels skillSciPy skillCache locality skillLock-free skill
Support
Give us feedbackBuy us a Coffee
Legal
Privacy policyTerms of service
© 2026 QuantCraft Solutions. All rights reserved.
QuantCraft
σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyRoadmapsSkills
Ctrl K
AO
+1.2k Learners
LoginJoin ↗
RoadmapsSkills
AO
+1.2k Learners
Login
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
Skills›Lock-free
L

Lock-free Skill

LiveStart here

This is the simulator edition of the skill: there are no real threads and no timing. A thread is a short list of steps, a schedule says whose step runs next, and the machine you write executes them, so a concurrency bug becomes a list of thread numbers you can print and replay. Each lecture teaches one idea with small examples and their output, then a graded lab extends the same machine. You learn to see how an interleaving loses an update, to enumerate every schedule of a small program, to state what a lock-free queue guarantees, and to prove an invariant of a fan-out of market data over every schedule.

4 modules11 graded labs~12 hoursIntermediate → Expert
Start skill

Prerequisites

Comfort with Python functions, lists and dictionaries is enough; no C or C++ is needed, because the machine is a simulator you write. The cache-locality skill helps with the false-sharing and cache-line ideas but is not required.

  • Python
  • CCache locality

Syllabus

11 topics · open any topic, in any order
  1. 1Races and why locks existNot startedRequires Python45 minStart
  2. 2An interleaving explorer: finding bugs by enumerating schedulesNot startedRequires Python1 hrStart
  1. 3Atomics and read-modify-writeNot startedRequires Python55 minStart
  2. 4The memory model: acquire and releaseNot startedRequires Python1 hr 15 minStart
  3. 5Progress guarantees: from obstruction-free to wait-freeNot startedRequires Python45 minStart
  1. 6A single-producer single-consumer ring bufferNot startedRequires Python1 hr 30 minStart
  2. 7The ABA problem and tagged pointersNot startedRequires Python55 minStart
  3. 8Multi-producer multi-consumer queuesNot startedRequires Python1 hr 10 minStart
  1. 9Testing concurrent code: race detectors and model checkingNot startedRequires Python55 minStart
  2. 10Hazard pointers and epoch reclamationNot startedRequires Python1 hr 10 minStart
  3. 11Capstone: a lock-free market-data fan-out with proofs of its invariantsNot startedRequires Python2 hrStart

Completion

Pass all 11 labs with a score of 70+ to complete the skill and earn the Lock-free badge on your profile.

0 / 110%

Prerequisites

Comfort with Python functions, lists and dictionaries is enough; no C or C++ is needed, because the machine is a simulator you write. The cache-locality skill helps with the false-sharing and cache-line ideas but is not required.

  • Python
  • CCache locality

Tools you'll use

Pythonpytest

What you'll learn

  • Write a machine that runs thread programs under a schedule, and show a lost update by hand
  • Enumerate every schedule of a small program to find the ones that break it
  • Repair races with atomic read-modify-write and acquire/release ordering, and state what each repair guarantees
  • Build an SPSC ring buffer, a compare-and-swap queue and a multi-producer queue, and break each with a schedule
  • Detect races, reclaim memory safely, and prove an invariant of a market-data fan-out over every schedule
uantCraft Academy

Quant development, learned by doing: short lessons, graded labs and a real IDE, right in your browser.

Learn
All roadmapsAll skillsPython skillC++ skillSoonOxCaml skillSoonMarket Structure skillCalculus skillLinear Algebra skillProbability skillStatistics skillMatrix Decompositions skillOptimization skillTime Series skillStochastic Calculus skillBayesian Inference skillHidden Markov Models skillParticle filtering and non-stationary time series skillscikit-learn skillstatsmodels skillSciPy skillCache locality skillLock-free skill
Support
Give us feedbackBuy us a Coffee
Legal
Privacy policyTerms of service
© 2026 QuantCraft Solutions. All rights reserved.
QuantCraft
LoginJoin ↗
Login