---
title: "HLE vs T1, Replayed From the Order Book"
description: "Hanwha Life Esports came back from 0-2 to beat T1 3-2 in the LCK Playoffs. A replay of Polymarket's order book and all 19,242 on-chain trades that morning, with the wallets that moved first."
url: https://www.afonsomartins.com/hle-vs-t1-replay
author: Afonso Martins
published: 2026-10-04
updated: 2026-10-04
---

# HLE vs T1, Replayed From the Order Book

## Hanwha Life Esports vs T1, League of Legends, LCK Playoffs, 2 September 2026

Hanwha Life went into this best of five as the favourite, priced at 63.5¢ to win on Polymarket at the scheduled start. T1 took the first two games and HLE's price fell to 19.5¢ at 09:34 UTC, and then HLE won the next three. The replay below is that morning as the market saw it, rebuilt from my own recording of Polymarket's order book and every trade that settled on Polygon.

*(The replay plays on the web page: https://www.afonsomartins.com/hle-vs-t1-replay)*

## How to read it

The white line is HLE's chance of winning the match, and the dashed lines are the markets on each single game. Every dot is one trade, blue when the taker bought HLE and orange when they bought T1, and bigger when more money went in. The panel on the right is HLE's full order book at the replay time, every price level with the shares waiting on it, and "Book glow" paints the history of that book behind the price. A green triangle marks a move of 5¢ or more inside 5 seconds.

## What the money did

**Almost nothing happened before the start.** HLE opened my record at 65.5¢ and was at 63.5¢ at the scheduled start, 08:00 UTC. 96% of the money traded that day came in after that, while the games were being played.

**The 0-2 took HLE from favourite to a one-in-five shot.** The match price fell to about 44¢ when T1 won game 1 and to 22¢ after game 2, with the low of the day, 19.5¢, two minutes later.

**Game 5 drew the most money of the five, $1.29M.** It also had the largest move of the match: at 11:57:53 UTC the price went from 50.5¢ to 78.5¢ in less than five seconds, and eight minutes later HLE had closed the series out 3-2.

In the window shown, 2,438 wallets placed 19,242 trades worth $4.7M on the match and the four game markets, against 1,079 wallets with resting orders.

## Who moved first

The table under the replay ranks wallets by how far the price moved their way in the 30 seconds after each of their trades. I also ran 6 of the checks from the match flow report I designed for [21Core](https://www.afonsomartins.com/how-i-built-21core), each with a rule fixed before looking at the result:

| Check | Result |
|---|---|
| Flow leans into the moves | Clear. Before the 83 sudden moves, 50% of taker money was on the side of the move, against 52% at ordinary moments of the same match |
| The price moves before the start | Clear. 2¢ between my first full book and the start |
| A wallet trades ahead of moves | Clear |
| Underdog money before a game | Clear |
| One wallet carries a market | Clear. No wallet took 15% of any market |
| Fast flow | Flagged. 5 wallets had the price 2¢ or more their way 30 seconds after their trades, and 4 of them made money at settlement, $17k between them |

Fast flow is what a quicker data feed or a good live model looks like from the outside, so a flag here is a reason to look closer and not a finding about anyone. Wallets appear by label only.

## How it is built

**The book comes from my own recorder.** It is 1,036,276 messages from my Polymarket websocket for these five markets, archived in R2 and checked against their sha256 when downloaded. The book is rebuilt every second for the price line, and at full depth every 5 seconds for the panel, 3,781 frames. Built separately, the two agree on the best bid and ask at all 1,838 moments I compared.

**The trades come from the chain.** 37,720 maker fills on Polymarket's exchange contracts, decoded with the research desk's audited fill decoder, are grouped into 19,242 taker trades, one per wallet, transaction, market and side. Block time runs about two seconds behind the trade, so two seconds are taken off every timestamp.

**Game times are read from the markets.** A game ends where its own market first reaches 97¢ either way, and the next game starts from there. Game 5 has no market of its own in my data, so it is read from the match market, which it decided.

The player is the one I built for the 21Core site, ported to this one. The chart draws thousands of trades on a single canvas and slides a curtain across them as the replay runs, so nothing is repainted per frame, and the full book loads after the chart, when the browser is idle.

---

*Related: [Polymarket Esports Desk](https://www.afonsomartins.com/polymarket-esports-desk) · [92¢ to Zero in 25 Minutes](https://www.afonsomartins.com/furia-order-book) · [The research desk](https://www.afonsomartins.com/research-desk)*
