Skip to content
Keel
Ledger
64,488,696
Methodology
1.0.8-draft
Age
18s

What depth stands behind this price?

yUSDC against USDC · GDGTVW…ZNTTFF

How much can this asset safely back?

The ceiling is the lower of two independent limits. Which one binds is the part a lender acts on, so both are shown.
  1. Low — this asset
  2. Medium
  3. High
  4. Critical

Lowpartial confidence

A band marked partial is a floor. At least one high-severity check could not be evaluated, so the real band can only be worse than the one shown, never better.

100,078.75 USDC (shortened; full value 100078.7502857874329942025570725 USDC)

Limited by manipulation cost

Liquidation term
450,734.70 USDC (shortened; full value 450734.70525761076478224096925493513538844350817151613 USDC)

Sell-side depth at the liquidation delta, times the haircut.

Manipulation termbinds
100,078.75 USDC (shortened; full value 100078.7502857874329942025570725 USDC)

Order-book-only manipulation cost at the critical delta, times the safety margin.

These bands come from thresholds that were chosen, not calibrated

The thresholds were chosen based on the magnitude of the Blend incident of February 2026 and on conservative judgement, not calibrated against a set of incidents. Every flag is reported separately so that consumers can apply their own thresholds.

Every threshold, as the engine serves it

Where this number comes from
Source
GET /asset/{assetId}/depth → maxSafeCollateral, maxSafeCollateralLiquidation, maxSafeCollateralManipulation
What it is
Awaiting methodology copy.
What it does not account for
Awaiting methodology copy.

What this computation could not do

  • maxReachablePrice and costToMaxReachablePrice are null because an active pool is present: under a constant product curve the price tends to infinity as the base reserve tends to zero, so every target is reachable and a highest price has no meaning

Served by the engine with this response and shown as written.

Where does the price come from?

Two venues can disagree. Both readings are shown, not only the one that won.
Mid price
0.99874597 USDC (shortened; full value 0.99874597502616135 USDC)

Source: order book mid

Spread
0.1034 % (shortened; full value 0.1034146793583068331045535 %)

Undefined unless the price came from a two-sided book

Pool spot price
0.99974271 USDC (shortened; full value 0.9997427101747521 USDC)

Reported whenever an active pool exists, whichever source won

Divergence between the two
0.0996 % (shortened; full value 0.0996991664401857566896667 %)

Null means there is no pool to diverge from, not that the sources agree

Where this number comes from
Source
GET /asset/{assetId}/depth → midPrice, priceSource, spreadPct, poolSpotPrice, priceDivergencePct
What it is
Awaiting methodology copy.
What it does not account for
Awaiting methodology copy.

What volume can it absorb before the price moves?

Three rungs at 2, 5 and 10 per cent, in each direction. The buy side matters for oracle manipulation and the sell side for liquidation.
  • SDEX
  • AMM
  • Sell side, composition not reported

2% from mid

Buy side
400,848.48 USDC (shortened; full value 400848.4861968273705762159021409452 USDC)
Sell side
899,115.96 USDC (shortened; full value 899115.962692783609720100198147774587160517470285720272 USDC)

5% from mid

Buy side
401,701.59 USDC (shortened; full value 401701.5989903399690298457527563955 USDC)
Sell side
899,987.42 USDC (shortened; full value 899987.426207259616576425765526298730971699447473036539 USDC)

10% from mid

Buy side
403,085.64 USDC (shortened; full value 403085.6490049466843194813814189555 USDC)
Sell side
901,469.41 USDC (shortened; full value 901469.41051522152956448193850987027077688701634303226 USDC)

Bars share one scale. The venue split decomposes the buy side; the sell side is drawn as an outline because its composition is not reported.

Where this number comes from
Source
GET /asset/{assetId}/depth → depth[]
What it is
Awaiting methodology copy.
What it does not account for
Awaiting methodology copy.

What would it cost to move the price?

Read cost together with reachability: a figure on an unreachable rung says how far the book goes, not what the move costs.
Cost to move the price by each delta, through all venues and through the order book alone, with whether the target is reachable at all.
MoveTarget priceCost, all venuesCost, order book only
0.5%1.498118 USDC (shortened; full value 1.498118962539242025 USDC)413,175.83 USDC (shortened; full value 413175.8368669142048305849787014722 USDC)400,315.00 USDC (shortened; full value 400315.00114314973197681022829 USDC)
1%1.997491 USDC (shortened; full value 1.9974919500523227 USDC)424,042.14 USDC (shortened; full value 424042.1429875104352794341275211715 USDC)400,315.00 USDC (shortened; full value 400315.00114314973197681022829 USDC)
10%10.986205 USDC (shortened; full value 10.98620572528777485 USDC)533,549.32 USDC (shortened; full value 533549.3228877021175760867451964373 USDC)400,716.11 USDC (shortened; full value 400716.11891018973197681022829 USDC)
100%100.873343 USDC (shortened; full value 100.87334347764229635 USDC)919,711.09 USDC (shortened; full value 919711.0910132779567371595920021006 USDC)400,716.11 USDC (shortened; full value 400716.11891018973197681022829 USDC)

Reachability on the all-venues ladder is unconditionally true whenever an active pool exists, because a constant product curve has no upper price bound. The order-book-only column is the one that answers whether a target is attainable, and it is the one Keel itself uses.

How far the book actually goes

Furthest price the book reaches
not computed

Null by structure, not by failure: an active pool means every target is reachable and a highest price has no meaning

Cost to walk it that far
not computed

Null for the same reason as the price above

Against genuine volume

Not reported for this asset. Without it there is no comparison between the cost of an attack and the genuine trading it would have to hide inside.

Where this number comes from
Source
GET /asset/{assetId}/depth → manipulationCostCombined[], manipulationCostOrderbookOnly[], oracleResistance
What it is
Awaiting methodology copy.
What it does not account for
Awaiting methodology copy.

Which checks fired, and which could not run?

An unevaluated check is not a check that came back clear. The two never share a treatment.

Triggered(0)

Nothing triggered.

Could not be evaluated(6)

  • MANIPULATION_RATIO_LOW
  • NO_GENUINE_TRADE_30D
  • HOLDER_CONCENTRATION_EXTREME
  • NO_GENUINE_TRADE_7D
  • HOLDER_CONCENTRATION_HIGH
  • WASH_TRADE_SUSPECTED

Nothing triggered, but 6 checks could not run. This is not a clean result.

Where this number comes from
Source
GET /asset/{assetId}/depth → flags[], unevaluatedFlags[], bandConfidence
What it is
Awaiting methodology copy.
What it does not account for
Awaiting methodology copy.

Who holds it, and is it genuinely traded?

Concentration and wash trading bound how much of the depth above is real.
Largest holder
not computed
Top ten holders
not computed
Concentration index
not computed

Herfindahl–Hirschman, over the holder distribution

Volume excluded as not genuine
not computed

Of 30 day volume. A high share indicates suspected wash trading

Volume to supply, 30 day
not computed
Last genuine trade
not computed

No genuine trade was found in the window

Where this number comes from
Source
GET /asset/{assetId}/depth → holderTop1Pct, holderTop10Pct, holderHhi, volumeToSupply, lastGenuineTrade, tradesExcludedPct
What it is
Awaiting methodology copy.
What it does not account for
Awaiting methodology copy.

How has this moved over time?

A single reading cannot separate a thin asset from one that just got thin. This is a stored series, not the historical replay that health reports as unavailable — those are different endpoints.

162 readings from horizon, with no gaps reported. One source per chart.

Band at each reading

Low
162 of 162

Which checks were firing

Whether a finding has been there all along or started recently. Only checks that fired at least once appear.

No check fired at any reading in this window. That is not the same as every check having run: a history point lists what fired, not what could not be evaluated.

Price

Lowest
0.99849220 USDC (shortened; full value 0.9984922041780615 USDC)
Highest
0.99980829 USDC (shortened; full value 0.9998082944023707 USDC)
2026-09-11T17:48:29Z2026-09-18T10:46:08Z
Mid price
0.99874854 USDC (shortened; full value 0.99874854031395205 USDC)

Buy-side depth

What an order can absorb before the price moves against a buyer. The rungs are nested, so one scale covers all three, and the lines darken as the rung widens.

Lowest
394,550.66 USDC (shortened; full value 394550.6668874183757523009860385399 USDC)
Highest
403,855.77 USDC (shortened; full value 403855.7743750652681828290584438796 USDC)
2026-09-11T17:48:29Z2026-09-18T10:46:08ZOne scale across every line on this chart
2% from mid
400,847.62 USDC (shortened; full value 400847.6259245867268539122900906931 USDC)
5% from mid
401,700.73 USDC (shortened; full value 401700.7398040941258189264445963488 USDC)
10% from mid
403,084.79 USDC (shortened; full value 403084.7915947721601135770005207139 USDC)

Cost to move the price by half

The series carries one manipulation rung, at the half per cent delta the engine treats as critical. A reading the engine could not produce breaks the line rather than sitting at zero.

Lowest
393,986.97 USDC (shortened; full value 393986.97098800821815686583831 USDC)
Highest
401,084.93 USDC (shortened; full value 401084.93475805710683063179557 USDC)
2026-09-11T17:48:29Z2026-09-18T10:46:08Z
Manipulation cost, 0.5%
400,314.06 USDC (shortened; full value 400314.06648420022363070671298 USDC)

Collateral ceiling

Lowest
98,496.74 USDC (shortened; full value 98496.7427470020545392164595775 USDC)
Highest
100,271.23 USDC (shortened; full value 100271.2336895142767076579488925 USDC)
2026-09-11T17:48:29Z2026-09-18T10:46:08Z
Max safe collateral
100,078.51 USDC (shortened; full value 100078.516621050055907676678245 USDC)
Where this number comes from
Source
GET /asset/{assetId}/history → points[], gaps[], dataSource
What it is
Awaiting methodology copy.
What it does not account for
Awaiting methodology copy.

What was this computed from?

Ledger
64,488,696

Closed at 2026-09-18T11:00:58Z

Computed at
2026-09-18T11:01:16.051343Z
Data source
horizon
Methodology
1.0.8-draft

The version that produced these figures, not the one this page was built against