Skip to content
View hemv-857's full-sized avatar
🎯
Focusing
🎯
Focusing

Highlights

  • Pro

Block or report hemv-857

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
hemv-857/README.md

Hemang Varshney: racing, quant, maths. An F1 speed trace drawn over a stock price path, because they look the same.

I build the things that sit between a stopwatch and a stochastic process:
F1 strategy models, matching engines, volatility surfaces, and the maths that holds them up.

The maths, twice · On track · In the market · Under the bonnet · Hire exchange · Team radio

🏁 The maths, twice

A race and a market pose the same problem: make a decision under uncertainty, against the clock, with someone faster than you trying to make it first. Most of my repos are one of these five ideas, worked out on one side of the pit wall or the other.

The idea 🏎️ On track 📈 In the market
Fit a curve, act on the residual predictive-tire-engine: where the tyre is on its degradation curve svi-scanner: where Deribit quotes sit off a fitted SVI surface
Spend a scarce resource at the right moment apex-racing-live-strategy: the pit window, traded against tyre and fuel lob-engine: TWAP / VWAP / POV execution schedules
Separate signal from noise f1-performance-intelligence: telemetry, read by an AI race engineer rmt-covariance: Random Matrix Theory strips noise out of correlations
Events cluster One safety car and half the field pits on the same lap hawkes-lob: do BTC trades self-excite like order books do?
Milliseconds are the margin A 2-second stop wins the undercut; a 4-second one hands it back limit-order-book: no locks on the hot path · market-pipeline: 35 ms end to end

🏎️ On track

An F1 trilogy, built in race order: predict the tyre, read the car, make the call.

Stint Repo What it does
1 · Predict predictive-tire-engine Tyre degradation predictor with a D3 dashboard on live telemetry
2 · Read f1-performance-intelligence Telemetry dashboard with an AI race engineer on the radio
3 · Decide apex-racing-live-strategy Race strategy simulator: tyre and fuel modelling, pit-stop optimisation

📈 In the market

Microstructure: where prices actually get made

Repo What it does
limit-order-book Deterministic limit order book and matching engine in C++20. Determinism is tested, not hoped for
lob-engine Price-time priority LOB in std-only Rust, plus TWAP / VWAP / POV execution algorithms
hawkes-lob Hawkes process model testing whether BTC trades self-excite
market-pipeline Binance WebSocket → Redis → FastAPI, 35 ms end to end

Volatility and risk: where prices get questioned

Repo What it does
svi-scanner Fits an SVI volatility surface to Deribit options, then hunts for where the market disagrees with it
rbergomi-engine Rough-volatility pricing: Monte Carlo with control variates, calibrated to live SPX options
rmt-covariance Covariance cleaning with Random Matrix Theory vs Ledoit-Wolf, with walk-forward backtests
cognitive-convergence-detector Flags when institutional signals converge: crowded positioning as an early warning for systemic risk
151-trading-strats 151 strategies across 18 asset classes, after Kakushadze & Serur (2018)

🧮 Under the bonnet

The equations these repos are built on. If you read these before the tables, we'll get along.

SVI smile · svi-scanner. Total implied variance at log-moneyness $k$, in Gatheral's raw parameterisation:

$$w(k) = a + b\left(\rho\,(k-m) + \sqrt{(k-m)^2 + \sigma^2}\right)$$

Rough Bergomi · rbergomi-engine. Variance driven by a Volterra process whose Hurst exponent $H$ sits near $0.1$, far rougher than Brownian motion:

$$V_t = \xi_0(t)\,\exp\left(\eta\sqrt{2H}\int_0^t (t-s)^{H-\frac{1}{2}}\,dW_s - \frac{\eta^2}{2}\,t^{2H}\right)$$

Hawkes intensity · hawkes-lob. Every trade raises the odds of the next one, and the effect decays. The process stays stable while the branching ratio $\alpha/\beta < 1$:

$$\lambda(t) = \mu + \sum_{t_i < t} \alpha\, e^{-\beta\,(t - t_i)}$$

Marchenko–Pastur · rmt-covariance. With $N$ assets and $T$ observations, $q = N/T$, the eigenvalues of a pure-noise correlation matrix stay inside these bounds. Anything above $\lambda_+$ is worth a look:

$$\lambda_\pm = \left(1 \pm \sqrt{q}\right)^2$$

The pit-stop inequality · apex-racing-live-strategy. The back-of-envelope version: box on lap $n$ when what the old tyres will lose over the rest of an $N$-lap race is more than the stop costs. It is optimal stopping in a fireproof suit:

$$\sum_{j=n}^{N} \left(\delta_{\text{old}}(j) - \delta_{\text{new}}(j)\right) > t_{\text{pit}}$$

More probability than finance: Projects holds experiments in probability calibration, decision theory and betting.

🔧 Pit crew for other people's cars

Greenfield repos are the easy part. Getting a change merged into someone else's codebase is the part I'm proudest of: 11 merged so far, mostly in quant libraries and developer tooling.

Quant and research

Compilers, runtimes and tooling

  • swiftlang/swift#93473: retry each clone/update in update-checkout, instead of re-fetching all 51 repositories when one flakes
  • affaan-m/ECC#3590: accept JSONC comments in opencode.json while checking config membership during ecc install
  • morluto/rea#4219: honour package-main selection for trailing-slash directory references
  • morluto/rea#4511: keep CommonJS require(`mod`) dependencies visible in the source graph
  • tt-a1i/archify#986: add class, tree, timeline and waterfall promoted-type recipes
17 open PRs in the pit lane, awaiting review
Project PR
swiftlang/swift#93581 clearer errors for inherited-only type attributes
sympy/sympy#30901 short-circuit is_irreducible for univariate polynomials over CC
openai/tiktoken#623 restore manylinux2014 x86_64 wheels
google-research/timesfm#552 actionable errors when optional backends fail to import
microsoft/qlib#2386 drop pkg_resources from collect_info.py
goldmansachs/gs-quant#409 size the default correlation window on cleaned returns
google/adk-go#1903 send live tool responses through the sender goroutine
crewAIInc/crewAI#8490 filter pull requests before limiting GitHub issues
dagster-io/dagster#34361 exclude dbt v2 unit tests from fusion result events
ray-project/ray#67476 bump the starlette floor past known CVEs
openyurtio/openyurt#2843 fall back to an interface address when there is no default route
bloomberg/bde#320 fix MSVC /bigobj flags for bsl and bdlar
jaegertracing/jaeger#9839 align built-in skill descriptions with the index
jaegertracing/jaeger#9842 restore the MCP tool limit tunables
morluto/rea#3525 recover structured tool arguments sent as JSON text
jankrepl/deepdow#152 __sub__ / __rsub__ on the Loss class
topoteretes/cognee-community#202 Raindrop.io data-source connector

🔮 Live: my chances of getting hired

A prediction market on my own commit count. A GitHub Action quotes a range every midnight IST and settles the trade the next night.

Hire probability 32.33% (analyst rating: BUY). 368 commits in 30 sessions · 12/day · never missed a day. Streak: 9.

38 sessions · 89% hit rate · best streak 18 · 24 exact / 6 near / 4 beat / 4 miss

📊 2026-10 earnings report: 31 sessions, 87% hit rate, probability +23.7pts. Another month, another set of predictions nobody asked for.

Date (IST) Forecast Shipped Result Δ pts Hire probability
2026-11-07 (today) 3–4 ⏳ Market open
2026-11-06 3–4 3 ✅ Exact hit +1.25 32.33%
2026-11-05 3–4 4 ✅ Exact hit +1.50 31.08%
2026-11-04 3–4 4 ✅ Exact hit +1.50 29.58%
2026-11-03 3–5 2 🟢 Near hit +0.90 28.08%
2026-11-02 3–5 3 ✅ Exact hit +1.00 27.18%
2026-11-01 3–6 4 ✅ Exact hit +0.97 26.18%
2026-10-31 3–6 5 ✅ Exact hit +1.03 25.21%
2026-10-30 3–6 3 ✅ Exact hit +0.60 24.18%
2026-10-29 3–6 4 ✅ Exact hit +0.67 23.58%
2026-10-28 5–6 3 ❌ Miss +0.25 22.91%
2026-10-27 5–6 5 ✅ Exact hit +1.33 22.66%
2026-10-26 5–8 6 ✅ Exact hit +1.25 21.33%
2026-10-25 5–8 6 ✅ Exact hit +1.25 20.08%
2026-10-24 3–8 6 ✅ Exact hit +1.25 18.83%
How does this work? (a.k.a. why is this in my README)
  • Every day at 00:05 IST a GitHub Action forecasts a range for the day: the 7 day trailing window, trimmed — the smallest and largest are dropped, so one monster day can’t turn every forecast into a shrug. It lands about half the time.
  • Counts are the commits that still exist on my repos' default branches, so git log agrees with me. GitHub's contribution graph never retracts a commit — rebased and amended work stays counted forever, and it claimed 74 for a day with 38 commits in it.
  • The next midnight it fetches my real commit count and settles the trade.
  • Points follow the work: 0 for a day with no commits, up to 1 for matching the top of the range, and up to 1.5 for beating it. Streaks add a small bonus.
  • Landing inside the range is a hit, 1 under is a near miss, further under is -0.25, and no commits on a day that expected work is -0.5.
  • Shipping more is never punished. Beating the top of the range is the best possible day, and the score keeps climbing with the overshoot.
  • Market manipulation means one thing only: 10+ commits within 60 minutes in this profile repo — the only way to game the contribution graph. Overachieving a low forecast across real repos is not a crime. Penalty: -1.5 pts.
  • Visitors: 👍/👎 on today's voting issue to predict whether the bot hits. No prize, just bragging rights.
  • Monthly: on the 1st, an earnings report summarises the previous month.
  • Probability is 100% fiction. The 100% real part: I actually ship code, and I'm actually looking for a job.

🧰 In the garage

Off the racing line, but still running.

18 more repos: AI tooling, fintech, and native apps

AI tooling and agents

Repo What it does
mcp-vetter-agent AI agent that audits MCP servers before you connect to them
Codeinsight Ask questions about any repo in plain English; see the architecture it infers
edge-mem Offline-first edge knowledge engine with Qdrant-backed cloud federation
intellex Natural-language requests → clean, source-backed datasets
vizql Visual SQL explainer: watch a query execute step by step
vizarch System architecture diagrams from plain English, as SVG
commit-archaeology Commit history → feature eras, who broke what, and the bus factor
dependency-time-machine Any repo + any past date → that project's snapshot, plus what shipped since
impact-lens Impact and sustainability media analysis, before/after comparison
J.A.R.V.I.S Finds issues matching your skills, plans the contribution, drafts the PR

Fintech

Repo What it does
ptm-recovery-agent Recovers failed Paytm payments, measuring true incremental lift
rzp-recovery-agent Same for Razorpay: causal, not just "recovered count"
FinCortex_Finvigators AI CFO assistant: spend, cashflow forecasting, planning

Platforms, native apps and utilities

Repo What it does
ORION Real-time geopolitical risk dashboard: energy supply chains and conflicts
textdistance-rs Rust port of textdistance: 43 algorithms, 77–1788× faster than Python
agent-office-app macOS SwiftUI app running multiple AI agents with streaming, cost tracking and task queues
PRESENT macOS menubar attendance tracker with safe-skip maths and lecture reminders
internship-tracker Scrapes 270+ companies and sends daily digests via Telegram

🛠 Setup sheet

C++20 Rust Python TypeScript Swift D3.js FastAPI Redis PostgreSQL Docker

Racing: tyre models, telemetry, strategy Quant: microstructure, volatility, execution Maths: stochastic processes, random matrix theory, optimisation

📻 Team radio

Open to full-time roles in quant research, trading systems, or anywhere a strategy call is really a maths problem. Motorsport included.

  • GitHub: @hemv-857 (you're here)
  • Email / LinkedIn: in the profile sidebar

Skip the cover letter and give me a concrete problem: a matching-engine latency bug, a wing of the vol surface that won't fit, or a one-stop that should have been a two-stop. I'll have opinions before the call ends.

Box, box. · MIT

Pinned Loading

  1. rzp-recovery-agent rzp-recovery-agent Public

    Recovers failed Razorpay payments using randomized control groups to measure true incremental lift

    Python

  2. cognitive-convergence-detector cognitive-convergence-detector Public

    Tracks when institutional trading signals converge — a marker of crowded positioning and systemic risk

    HTML

  3. mcp-vetter-agent mcp-vetter-agent Public

    AI agent that audits MCP servers for security issues before you connect to them

    TypeScript

  4. ORION ORION Public

    Geopolitical risk dashboard tracking energy supply chains and global conflicts in real time

    TypeScript 1

  5. rmt-covariance rmt-covariance Public

    Covariance matrix cleaning using Random Matrix Theory vs Ledoit-Wolf, with walk-forward backtests

    Python

  6. 151-trading-strats 151-trading-strats Public

    151 Trading Strategies — Interactive quant research terminal. 151 strategies, 18 asset classes, backtesting, options pricing, and glossary. Based on Kakushadze & Serur (2018, SSRN #3247865).

    TypeScript