Nobody publishes, in real time, how much crude oil the world is holding in storage. Yet the biggest tanks quietly announce it to anyone watching from orbit. I built OTM-Agent to read them — and then to reason about what it sees.
The trick is the floating roof. The largest crude tanks are built with a lid that floats directly on the oil and sinks as the tank drains. From above, that changing geometry gives the level away: as the roof descends, the tank wall casts a growing crescent of shadow across it. A brimming tank shows almost none; a near-empty one shows a deep well of shadow. Measure the shadow and you can estimate the fill.
Why radar, not cameras. Ordinary satellite photos are blinded by clouds and darkness — a problem, since a lot of oil sits at foggy, rainy ports. So OTM-Agent reads Sentinel-1, a C-band synthetic-aperture radar that sees through cloud cover and works at night, revisiting each site every six to twelve days. The result is a steady, weather-proof signal where optical imagery would go dark for weeks.
What it watches. The system tracks 13 floating-roof tanks across four of the world's key storage hubs — Cushing in the United States, Rotterdam, Fujairah, and Singapore — on a pipeline that reaches back to 2017. Every day it refreshes the tank signals and lays them against WTI crude prices, and the dashboard shows how the two move together.
Where the "agent" comes in. This is the part I care about most. It would be easy to stop at a chart. Instead, an LLM-orchestrated agent sits on top of the data: it has a library of skills it can call, a tiered memory — what it saw recently, the durable facts it has learned, and the analysis routines that have worked before — and a persona that shapes how it reasons. You can ask it a question in plain language, and it pulls the relevant data, runs the analysis, and explains what it finds.
Keeping the agent honest. An agent that reads markets is a wonderful way to fool yourself, so most of the engineering went into discipline, not cleverness. Three guardrails matter.
A hard out-of-sample wall. Nothing dated after May 1, 2025 is allowed into training; the following year-plus is a holdout the model has never seen. That is not a promise on a slide — it is enforced by tests that scan every database query in the pipeline and a runtime client that throws an error the moment a query reaches past the cutoff.
No remembering the future. When the agent replays history to be evaluated, its memory is time-filtered so that at each past moment it can recall only what it actually knew then. Sixteen dedicated tests exist for the sole purpose of proving it cannot peek ahead.
A reward that pays for being right. Its scoring rewards calls that match the price move that actually followed, penalizes invented skills and reckless position sizes, and charges for the API cost of thinking — so cleverness that does not pay off earns no credit.
Why it matters. Commodity intelligence has always been expensive and closed, the province of firms that can afford a data desk. Public radar, a modest cloud bill, and an honestly-evaluated agent put a version of it in the open. It is the same conviction behind another project of mine — measuring data centers' heat from space: when the physical world is observable, measure it directly instead of waiting for someone to report it. The tanks were always broadcasting. The real question was whether I could build something disciplined enough to listen.
The whole system is open — the live dashboard, the architecture, the evaluation methods, and the benchmark suite.
Project links
