> ## Content Index
> Fetch the complete content index at: https://onchain-fx.ghost.io/llms.txt
> Use this file to discover other available public pages before exploring further.

# The executable price is the market
- URL: https://onchain-fx.ghost.io/the-executable-price-is-the-market/
- Published: 2026-09-18T00:51:56.000Z
- Updated: 2026-09-18T00:51:56.000Z
- Description: A number without venue, time, size, depth and settlement context is not a price. It is a claim about one.
- Author: Guilherme Bissoli
- Tags: Market Notes, #lang-en

## The question everyone answers too fast

Ask someone what the dollar costs in reais right now and you get an answer in under a second. A number, four decimal places, said with confidence.

Ask where that number came from, for how much size, settling when, and the confidence usually drops.

That gap is the subject of this piece.

I wrote about the machine version of this problem in "Teaching a machine what BRL looks like." That piece built an ontology: REFERENCE PRICE, MARKET PRICE, EXECUTABLE PRICE, CLIENT PRICE, plus the fifteen fields an observation needs before it means anything at all. This piece compresses that ontology into one market thesis, and adds one rung to the ladder that the earlier piece skipped.

## Five prices, not four

The earlier piece named four kinds of price. Working this from the desk side long enough, I think there is a fifth, sitting between reference and market, that deserves its own name: the screen price.

REFERENCE PRICE is published by an official or quasi-official source as a benchmark. The BCB PTAX is one. You settle against a reference price. You do not trade at one.

SCREEN PRICE is the number an app, an aggregator or a rate widget shows you. It is usually built from a market price, sometimes from a reference price, occasionally from both, blended in a way nobody outside the vendor can reconstruct. A screen price carries no venue, no size, and often no real timestamp beyond "just now." It is the price most people mean when they say "the rate."

MARKET PRICE is observed on a specific venue, at a specific timestamp, for a specific size. The last trade on a named exchange. The mid of a named order book. A market price without venue, timestamp and size is not a market price. It is a screen price wearing a market price's clothes.

EXECUTABLE PRICE is a market price plus a firm quote from a firm counterparty, on a size you actually want to trade, minus whatever slippage that size consumes. Most of the numbers people call prices are not executable. They are indicative, until someone tries to trade on them.

CLIENT PRICE is what a specific client actually pays, downstream of an executable price and whatever spread, fee or routing sits on top of it. It is the only price a customer ever really experiences.

## Why the extra rung earns its name

Screen price behaves differently from the other four. A reference price is honest about what it is: a benchmark, computed, not tradable. A market price is honest as long as you keep its three fields attached. Screen price is the one most likely to be mistaken for something it is not, because it borrows the visual authority of a market price and the apparent neutrality of a reference price, while being neither.

Most disputes I have sat through about "your rate is off from Bloomberg," or "the app said one number and the desk quoted another," are a screen price and an executable price being compared as if they were the same object. They never were.

## A price is a record, not a number

"Teaching a machine what BRL looks like" laid out the fields an observation needs before it means anything: instrument, venue, bid, ask, mid, depth, size, timestamp, timezone, reference\_usdbrl, stablecoin\_usd\_price, market\_session, settlement\_context, source, freshness.

I am not going to re-derive that list here. I want to compress it into one sentence, because that sentence is the whole thesis of this piece: a number without venue, time, size, depth and settlement context is not enough to call a price.

Drop venue and you cannot tell a reference number from a tradable one. Drop time and a five hour old quote passes for a live one. Drop size and a price that survives one hundred thousand dollars gets compared to a price that has to survive ten million. Drop depth and a mid becomes a headline. Drop settlement context and a T+0 number gets measured against a T+2 number as if the two days between them cost nothing.

None of those five fields is optional. A price missing any one of them is not a worse price. It is not a price. It is a claim about a price, and claims need to be checked before they get used.

## What comes out the other side

Once an observation carries all five fields, four derived numbers become computable instead of guessed.

The STABLECOIN PREMIUM, the gap between a stablecoin's BRL price and cash USD converted at reference. The BRL DIGITAL BASIS, the spread between the stablecoin implied rate and the reference rate. The EXECUTABLE SPREAD, the bid and ask actually firm on live size for a specific counterparty. And, from the CFO side of this work, the ALL IN ROUTE COST: execution plus capital plus time plus operations plus risk, priced against one specific route.

Every one of those four numbers is arithmetic if the inputs are clean. Every one of them is fiction if the input was a screen price standing in for an executable one.

## Where this actually breaks

I keep running into the same handful of failure patterns.

A position gets marked "at market," when the mark is really a screen price that has gone stale. Nobody notices until the number has to survive contact with an actual trade.

A client compares our quote to a headline number carrying no venue and no size, and concludes the desk is overcharging. The two numbers were never comparable. Nobody told the client that.

A model trained on years of quotes with the venue field silently dropped learns one blended number that corresponds to nothing anyone could have actually traded, on any single day, at any single desk.

None of these are edge cases. They are the default failure mode of treating a price as a number instead of a record.

## What I actually check

Before I call anything a price now, I ask five questions, in order: where was this observed, when, for how much size, how deep was the book behind it, and what does settlement look like from here.

If any answer is missing, I do not have a price. I have a claim that wants to become one.

This is not a call for precision for its own sake. It is a call for treating a missing field as information in itself. A screen price that cannot tell you its venue is telling you something: that whoever built it did not expect you to ask.

## What would change my mind

I would drop the fifth category if screen prices and market prices converged enough, across enough venues, that the distinction stopped mattering in practice. In a market as fragmented as BRL, with the BCB, B3, spot OTC desks and stablecoin venues all quoting the same symbol at once, I do not see that happening soon.

What this piece does not claim: it does not give you a spread, a level or a number to trade on. That was true of the machine piece too, and it stays true here. This is the ontology underneath the trade, not the trade itself. BRL is still where I would start building it.

![Reference price to executable price through venue, bid, ask and depth](https://storage.ghost.io/c/1a/9d/1a9dd23d-73cb-4af4-a073-c42a257a2cc9/content/images/2026/09/MARKET_NOTES_diagram.png)

A price without a venue, size and settlement path is not a price.

---

Read in Portuguese: [O preço executável é o mercado](https://onchain-fx.ghost.io/o-preco-executavel-e-o-mercado/)

**Follow the money through Brazil. Subscribe to ONCHAIN FX Weekly.**