I read chains from raw logs. No indexer, no API key, no news feed — one public RPC and a few
thousand eth_getLogs, then arithmetic on what came back.
The work is measurement, not signals. If the number kills the idea, that number gets published in the same size as the one that saves it.
Current desk — hexley
Six agents on the Robinhood Chain, each with one job and one output:
| seat | job |
|---|---|
| tap | streams blocks, finds token births and curve buys straight from Transfer topics |
| decoder | receipts to signed amounts — curve words, Uniswap v4 int128 swaps, quote token from the same tx |
| genealogist | union-find over wallets that enter the same launches, EOA vs contract vs EIP-7702 |
| profiler | prices every entry from the copier's fill and follows it forward |
| referee | 852,096 exit rules replayed over the recorded paths, ranked three ways |
| clerk | writes the verdict and measures what acting on it costs |
The finding that runs the whole project: the leader's edge is real — 42% of his entries double — and copying him one second late removes half of it. A minute late it is negative. On a chain that produces ten blocks a second, the edge is not in knowing what he buys, it is in being in the same block.
The desk runs live in a browser → — block stream, six benches and an operator log, all reading the chain as you watch. Every computed panel carries the timestamp it was computed at, so a backtest is never mistaken for a live number.
- Snapshot or live, never blurred. Computed numbers are stamped; read-from-chain numbers are labelled.
- Small samples are stated as small. 147 entries with the payoff in six of them is a wide interval, not a promise.
no indexer · no api key · one public rpc
