An agent tells you volatility is in a high percentile. That sounds like a finding. It is half of one. A percentile is a rank against a set of past values, and the answer has left out which set. More than one tool on NoVo’s server returns a percentile, and they do not share a window.

What a percentile is

A percentile says what share of past readings sat below the current one. The past readings are the window. Change the window and the same reading gets a different rank. A value can be ordinary against a long history and extreme against a short one. The idea is laid out in what a percentile window means.

The long window

get_volatility_record ranks VIX, VXN and RVX against their own history back to 1990. That is a long window. It includes several crises. A high rank there means high against decades of readings.

The logged window

get_dealer_levels has an iv option. It returns a ticker’s IV rank and percentile against its own logged range. That range is the history NoVo has recorded, which is far shorter than the volatility record. A high rank here means high against the recent record. Rank and percentile are also two different measures, as covered in IV rank versus IV percentile.

An agent that makes both calls for one answer can easily write that volatility is in a high percentile and leave it there. Two different windows have become one sentence.

Other ranked readings

get_short_volume ranks each ticker’s short volume ratio against that ticker’s own recent distribution. The ratio is never quoted raw. A high rank means unusual for that name lately. It says nothing about how the name compares with another.

On the paid crypto side, get_crypto_depth ranks a coin’s funding and open interest against the coin’s own samples, with n beside every percentile. get_crypto_screen ranks coins against the set that could be measured, and names that set in percentile_population. A coin that could not be measured is left out. It is not ranked at zero.

Where a figure carries a sample size, the agent should quote it. A percentile over a handful of samples is fragile. One over thousands is not. The paid get_base_rates tool goes further. Every cell carries n and a usable flag, and a cell below the floor must not be quoted at all. An agent that quotes it anyway has ignored an instruction in the payload.

What to tell the agent

One line does it. With every percentile or rank, state what it was ranked against, how far back, and the sample size if the payload gives one. If you quote more than one percentile, keep each with its own window.

Then check it. Ask how unusual volatility is today. A good answer says the VIX ranks at a given percentile of its history since 1990. A poor answer says volatility is elevated. The second has no window, no figure and nothing you can check, which is the fault described in an answer you cannot check is an opinion.

NoVo’s own guidance to agents says a bare percentile is the easiest way to misrepresent this data. The window is in every payload on the MCP & API. The agent only has to carry it through to the sentence.