Pond Street Ledger

Why a Stock Token Needs a Price Oracle, and What Happens When the Exchange Closes

A token that tracks a share does not know what that share is worth. Something has to tell it, and that something is a chain of reporting, aggregation and publication with specific, documented failure points.

✓ 1593.efrogs.eth2026-10-188 min

The problem in one sentence

A blockchain is a closed accounting system. It knows balances, transfers and whatever logic has been written into its contracts, and it knows nothing else. A token that is supposed to represent a share of a listed company carries no inherent knowledge of what that company's shares last traded for, because that fact lives on an exchange matching engine several legal jurisdictions away. Every piece of onchain machinery that cares about the price, a lending pool deciding whether to liquidate, a perpetual futures venue computing funding, a redemption contract paying out in stablecoins, has to be told. The thing that tells it is a price oracle, and the design of that oracle determines more about the product's risk than the token standard does.

What an oracle actually is

An oracle is not a feed in the market data sense. It is a contract on the chain holding a number and a timestamp, plus an off-chain process authorised to update them. The number is usually not a single exchange's last trade. A typical design collects quotes from several independent reporters, each pulling from one or more data vendors, then takes a median or a volume-weighted blend, then writes that to the chain when one of two conditions is met: enough time has passed since the last write, or the value has moved more than a set percentage away from what is already published. That second condition is called a deviation threshold, and it exists because writing to a blockchain costs money. Publishing every tick of a liquid equity would cost more in fees than the product earns.

The consequence is that an onchain price is almost never the current price. It is the last price that was far enough from the previous one to justify the gas, or the last scheduled heartbeat, whichever came first. A one percent deviation threshold means the published number can be stale by up to one percent of value before anything happens, and in a fast move the oracle lags the market by however long it takes to detect, aggregate and confirm a transaction. Smart contracts built on top of this are, in effect, trading against a slightly old photograph.

Why equities are harder than crypto

Crypto oracles have an easy structural advantage: their underlying markets never close. A reference price for a major token can be sourced continuously from dozens of venues, and if one venue prints a bad tick the median absorbs it. Listed equities have none of that. They trade on a primary exchange for roughly six and a half hours on weekdays, with pre-market and after-hours sessions that are thinner and wider, and then they stop entirely for nights, weekends and public holidays. Roughly two thirds of the hours in a week have no continuous equity price at all.

That is a real problem, because the tokens do not stop. They sit in automated market maker pools and lending contracts that are open every hour of the year, and this desk has previously documented that the majority of tokenised stock trading takes place while the underlying market is shut. So the oracle has to answer a question the underlying market is not answering: what is this share worth on a Saturday afternoon. There are three common answers and each trades something away.

Three ways to price a closed market

The first answer is to freeze. The oracle publishes the official closing price and holds it until the opening auction. This is honest about what is known, and it is what most regulated valuation processes do. The cost is that any onchain venue referencing it is quoting a number everyone agrees is wrong the moment overnight news lands, which invites a well-informed counterparty to take the other side of a stale quote. Venues that freeze usually have to widen spreads, raise collateral requirements or suspend trading entirely over the weekend, which is a direct subtraction from the headline promise of round-the-clock markets.

The second answer is to infer. The oracle derives a price from instruments that do trade: index futures, a liquid ETF with overlapping exposure, a foreign listing of the same issuer, or the token's own onchain order book. This keeps the number moving, but it quietly changes what the token tracks. A single name inferred from an index future inherits the index's behaviour, not the company's, and a price taken from the token's own pools is circular, because the pool is supposed to be priced by the oracle. Circular pricing is the mechanism behind a meaningful share of historical oracle exploits: push the thin market, and the oracle reports the push as truth.

The third answer is to quote a maker. A designated market maker commits to two-way prices out of hours and the oracle publishes the midpoint of what that firm is willing to trade at. This produces a live, tradeable number, which is the most useful kind. It also makes the product's integrity dependent on one commercial party that can widen, withdraw or be wrong, and it reintroduces exactly the single point of failure that a public chain was supposed to remove.

Where it breaks

The failure modes are documented and repetitive. Staleness is the ordinary one: a feed stops updating because a reporter fails, a data licence lapses, or gas conditions make writes uneconomic, and contracts keep consuming a number from hours ago. Good designs mitigate this by refusing to act on a price older than a maximum age, which converts a bad-price failure into a frozen-product failure. That is usually the right trade, but it means a user can be unable to exit precisely when they most want to.

Corporate actions are the subtler one. A stock split, a reverse split, a spin-off or a special dividend changes the price of the underlying by a mechanical amount overnight. If the token's supply or the oracle's adjustment factor is not updated in the same instant, the feed reports a collapse that is not a collapse, and every liquidation engine downstream acts on it. This is why serious feeds carry an adjustment layer sourced from corporate actions data rather than from trade prints, and why halts, delistings and trading suspensions need explicit handling instead of being treated as a long silence.

Then there is the gap between the price and the thing. An oracle reports the exchange price of the share. What a token holder actually owns is a claim on an issuer, and the value of that claim depends on whether redemption works, who the custodian is, and whether the issuer is solvent. During stress those two numbers separate. The oracle will keep printing the exchange price while the token trades at a discount to it, because the market is pricing the wrapper and the oracle is pricing the contents. Any product that treats the oracle number as the token's value has assumed the wrapper is riskless.

What to watch

When assessing a tokenised equity product, the questions worth asking are mechanical rather than philosophical. How many independent reporters contribute, and can any one of them move the median on its own. What is the deviation threshold and the heartbeat, and therefore how stale can the number legally be. What happens at 16:01 on a Friday, and is the out-of-hours price frozen, inferred or quoted. Who adjusts for corporate actions, and on what timetable. What does the contract do when the feed is older than its maximum age, and who holds the key that can replace the feed address. The answers are usually in documentation rather than marketing, and they describe the actual product more accurately than any description of the token standard.