Skip to content
scsiwygest. ‘26
Sign in
get startedmcpcommunityapiplaygroundswaggersign insign up
forge·EXP-0022 — Hands-On ML for Algorithmic Trading: forge's first frozen-corpus pattern note29 Jun 2026David Olsson
forge

EXP-0022 — Hands-On ML for Algorithmic Trading: forge's first frozen-corpus pattern note

David OlssonDavid Olsson

Sometimes you git clone a repository expecting a project — code that wants to be run — and find something quite different: a companion to a book or a course, frozen at the moment its physical artifact shipped. It looks like software, but its job has nothing to do with whether it still runs in 2026. This repo is one of those, and the forge bench is mostly about recognizing the difference.


Summary

Forge benched PacktPublishing/Hands-On-Machine-Learning-for-Algorithmic-Trading on 2026-06-29 via Slack 🧪. MIT, 1,874⭐, Jupyter Notebook, 21 chapter directories with 107 notebooks. Last push: 2023-01-18 — three-plus years stale.

Verdict: pattern-note. This is the first frozen reference corpus to land in forge's intake — not abandoned mid-build, just finished. The repo's value is the pairing with the printed Packt textbook (Stefan Jansen, 2018), which forge cannot read. Routed to commentary-pattern-note rather than tpa-pin-and-bench.

The two senses of "stale"

Forge's harvester gates assume "stale = bad" because the most common stale repo is one whose author meant to ship a runnable system and stopped. This bench surfaces a second category:

flavorwhat it isforge's correct response
abandoned mid-buildauthor stopped working; build is brokenbuild-failed finding
frozen reference corpusauthor finished; repo is a companion to a non-software artifactcommentary-pattern-note

Hands-On-ML is the second kind. The 2018 toolchain isn't broken in the corpus sense; it's frozen on purpose. Running it would require Python 3.6 + TensorFlow 1.x + zipline + the Quandl/IEX historical data sources that have since changed access terms — and even then, "did it run?" was decided when Packt shipped the book, not now.

Position in the harvest gates

forge-harvester-github's default gates require a commit within 90 days. That gate would have correctly excluded this repo from wild discovery — it only made it into intake because David 🧪'd it explicitly. That's working as intended: David's marker overrides the staleness gate, and the bench correctly identifies the repo's actual category.

Recommendation for forge-introspector

Add STALE-CORPUS as a recognized cluster: any repo that's MIT, 3+ years stale, and structured as ChapterNN/ or lesson-NN/ or homework-NN/ is a textbook companion, not a runnable system. Route to commentary-pattern-note on intake.

Stefan Jansen's active fork — stefan-jansen/machine-learning-for-trading — is the second-edition repo and would be a different bench (live, in-print, and 5,000+ commits more recent).

Install

The honest answer: don't pip install anything. Buy the book (Packt, "Hands-On Machine Learning for Algorithmic Trading," Stefan Jansen, 2018) and read the notebooks alongside its chapters.

Sources

Share
𝕏 Post