Skip to content
Markov

Methodology & data sources.

Where every number on Markov comes from, how it’s computed, how fresh it is, and which ones are models. If a panel can’t say where a number came from, it doesn’t show the number.

Measured, computed, modeled.

Three kinds of number, each with its own look, so you can tell them apart without reading the fine print.

Measured

Read directly from a venue’s public feed: a price, a resting order, a fill, a liquidation. Shown as a plain number, drawn with solid lines.

64,180.5Example

Computed

Fixed arithmetic on measured data, with nothing assumed about the market: session VWAP, the regime score, an annualized funding rate. We state the formula and any approximation.

Σ(price × volume) ÷ Σ volume

Modeled

An estimate of something no venue reports, made under stated assumptions: dealer gamma levels. Prefixed ≈ with a dotted underline, drawn dashed, its basis on hover or keyboard focus.

approximately 63,500 (Modeled — example only, not a real level)Example

The freshness chip.

Every data panel carries one: source, state and freshness. The state is a shape first and a colour second, so it reads in greyscale.

live
Streaming now, from the source named on the chip.
building, since you opened
Recording from the moment you opened the page, or from where stored history ends. The chart draws a dashed line where live data begins.
delayed, fixed lag
Arrives on a known lag, and the chip says how long.
stale, quiet
Quieter than it should be. The panel dims and says when it last heard from the source.
blocked here, HTTP 451
The venue refuses your network. The panel names the venue, says what still works, and keeps retrying.

Every source, one by one.

What each surface shows, where it comes from, how it’s computed and which machine fetches it. Most of the free tools fetch straight from the venue in your browser, so those numbers never pass through us.

Live now

  • Candles

    MeasuredLive now

    Chart

    Candle snapshots when the chart opens, then Hyperliquid’s live candle stream at 1, 5 or 15 minutes. A live candle that arrives after a gap (a reconnect, a laptop waking from sleep) triggers a backfill of the missed bars before it is drawn.

    Source
    Hyperliquid
    Freshness
    Live, streaming
    Fetched by
    Your browser → Hyperliquid
  • Resting liquidity

    MeasuredLive now

    Chart · Liquidity layer and depth profile

    Two subscriptions to the book: 4 significant figures for detail near price, 3 for the wider range, about 20 price levels a side each. Each 1-minute column of the heatmap is the time-averaged resting size per price row over that minute; the depth profile at the right edge is the latest book.

    It shows size that is resting, not intent. Orders can be pulled before price reaches them, and one venue’s book is not the whole market.

    Source
    Hyperliquid order book (l2Book)
    Freshness
    Several book updates a second, drawn at most once a second; up to 12 hours kept in your tab
    Fetched by
    Your browser → Hyperliquid
  • Whale prints

    MeasuredLive now

    Chart · Whales layer and tape

    Fills are folded into one print per aggressive order (same time, side and taker wallet), so an order that sweeps many makers counts once, at its volume-weighted price. Prints from $10k are kept; bubbles start at each coin’s threshold ($100k for BTC and ETH by default, and you can change it).

    Side is the taker’s: an aggressive buy or an aggressive sell. Wallets are public Hyperliquid addresses, not identities.

    Source
    Hyperliquid trades
    Freshness
    Live
    Fetched by
    Your browser → Hyperliquid
  • Liquidations

    MeasuredLive now

    Chart · Liquidations layer; Liquidations page

    Binance’s forceOrder stream: forced liquidations that actually printed, longs marked below the bar and shorts above. Binance sends at most one liquidation per symbol per second, so every Binance total is a floor, not a full count. Stored history from Markov’s collector adds Bybit.

    These are liquidations that happened. Markov doesn’t draw projected “liquidation levels”, which are a guess about where leverage sits. The Liquidations page also keeps what it has seen on your device, so its map fills in over repeat visits.

    Source
    Binance USDⓈ-M futures; Bybit in stored history
    Freshness
    Live. Binance refuses some regions, including the US (HTTP 451): the tools say so and keep retrying every 15 seconds
    Fetched by
    Your browser → Binance
  • Open interest

    MeasuredLive now

    Chart · OI pane; Derivatives page

    On the chart: Hyperliquid’s asset context, open interest × mark price in USD, sampled every 30 seconds, with the collector’s stored samples (one per bar) before that when history is available. On the Derivatives page: Binance’s openInterest and openInterestHist endpoints.

    Source
    Hyperliquid (chart) · Binance (Derivatives)
    Freshness
    Every 30 s on the chart; every 60 s on Derivatives
    Fetched by
    Your browser → Hyperliquid, Binance
  • Funding

    MeasuredLive now

    Chart · Funding pane; Derivatives page

    On the chart: Hyperliquid’s hourly funding settlements. On the Derivatives page: Binance’s current rates, ranked by distance from its default 0.01% per 8 hours so the unusual ones come first. Where Binance refuses your region, the table falls back to Hyperliquid and labels it; the two are never mixed.

    The annualized figure is a straight-line estimate that assumes the current rate holds. It is arithmetic, not a forecast.

    Source
    Hyperliquid (chart) · Binance, with a Hyperliquid fallback (Derivatives)
    Freshness
    Every 5 min on the chart while the pane is on; every 60 s on Derivatives
    Fetched by
    Your browser → Hyperliquid, Binance
  • Session levels

    ComputedLive now

    Chart · Levels layer

    Prior UTC day high, low and close (only when that day is nearly complete in the data), the 00:00 UTC open, and session VWAP: Σ(typical price × volume) ÷ Σ volume over today’s 15-minute candles. That VWAP is a candle approximation of the trade-by-trade figure, and is labelled as one.

    They are measured from real candles, so they draw as solid lines. Modeled levels will draw dashed.

    Source
    Hyperliquid 15-minute candles
    Freshness
    Every 2 min while the Levels layer is on
    Fetched by
    Your browser → Hyperliquid
  • Market heatmap

    MeasuredLive now

    Heatmap page

    Crypto: the largest coins by market cap and their 24-hour change, from CoinGecko in your browser, with stablecoins and wrapped tokens left out. Forex: ECB reference rates from Frankfurter, through Markov’s edge cache. Stocks, indices, commodities and futures need a Finnhub key and say “not live yet” until it is set.

    Tile size is market weight; colour is the recent move. The futures tab shows ETF proxies (SPY for ES, QQQ for NQ…), not CME futures prices, and names them that way.

    Source
    CoinGecko · Frankfurter (ECB reference rates) · Finnhub
    Freshness
    Every 60 s; Markov’s edge holds a board for up to 2 min
    Fetched by
    Your browser → CoinGecko; Markov’s edge → Frankfurter, Finnhub
  • Regime score

    ComputedLive now

    Regime Compass and the strategies, on TradingView

    Three reads of price, each rescaled to −100…+100 and blended 40/35/25: volatility percentile (ATR as a share of price, ranked against its own history), Kaufman’s efficiency ratio (net travel over total path) and persistence (a variance ratio of n-bar against 1-bar returns). Above the threshold reads Expansion; below the negative threshold, Compression.

    It is derived from price only: an expansion/compression proxy, never dealer gamma. It evaluates on confirmed bars, so it doesn’t repaint.

    Source
    Price
    Freshness
    Each confirmed bar
    Fetched by
    Computed inside TradingView (Pine)

Not live: positioning

Modeled. Nothing is shown until the data behind it is approved or licensed.

  • Gamma levels · BTC and ETH

    ModeledAwaiting Deribit approval

    Nowhere yet

    Not shown anywhere, and not estimated or sampled in the meantime. Once approved: gamma per strike from end-of-day open interest and implied volatility, with dealer positioning signed by a heuristic convention (calls +, puts −) that can be wrong in speculative regimes. Call wall, put wall and gamma flip will draw dashed, with values prefixed ≈ and their basis on hover.

    Positioning is regime and risk context. The backtest evidence we’ve seen suggests its independent edge largely disappears once the volatility regime is known, so we never frame it as a signal.

    Source
    Deribit options (approval pending)
    Freshness
    Once a day, from end-of-day open interest
    Fetched by
    Markov’s positioning engine (in development)
  • Gamma levels · ES and NQ

    ModeledNeeds a data licence

    Nowhere yet

    Options positioning mapped onto ES and NQ with a live index-to-futures basis. Not available until the options data is licensed. Whether the first version uses options on the futures themselves or index options mapped onto them isn’t decided.

    Source
    Licensed options data
    Freshness
    Once a day, from end-of-day open interest
    Fetched by
    Markov’s positioning engine (in development)

Rolling out

The collector.

A browser tab only sees what happens while it’s open. The collector is Markov’s own recorder: it keeps listening when nobody has the chart open, so the chart can open on recent history instead of an empty canvas.

Stored history draws to the left of a dashed boundary and this tab’s live data to the right. Book history is the time-averaged resting size per price level for each bar. A response carries at most the 500 largest whale prints and the 1,000 largest liquidations in its window; when there were more, the chart says from when, and above what size, its lists are complete.

Records
Every minute, Hyperliquid’s book at both resolutions and each coin’s asset context (mark price, open interest, funding, premium). Continuously, whale prints above a floor and Binance and Bybit liquidations.
Runs on
A Cloudflare Worker with a SQLite Durable Object, independent of anyone’s browser.
Keeps
Seven days of raw records, then deletes them. The chart opens on up to the last 24 hours of it (6 hours on 1-minute candles).
Gaps
Stretches it didn’t record are drawn “not recorded” and left out of every count, layer by layer: a liquidation feed dropping doesn’t blank the book history. Nothing is interpolated.
When it’s down
The chart builds live from the moment you open it, says so, and retries in the background.

Known limits, stated plainly.

  • Options open interest is end-of-day. Every intraday positioning value will be a model, not a measurement.
  • The dealer-positioning sign is a heuristic, a convention rather than an observed dealer book. It can be wrong in speculative regimes.
  • Resting size is not intent. Orders can be pulled before price arrives, and Hyperliquid’s book is one venue’s book.
  • Binance liquidation totals are floors. It sends at most one liquidation per symbol per second.
  • Some venues refuse some regions. Binance returns HTTP 451 to US addresses. The tools name the venue, say what still works, and keep retrying. We don’t suggest workarounds.
  • Session VWAP on the chart is a candle approximation, from 15-minute candles rather than every trade.
  • The heatmap’s futures tab is ETF proxies, not futures prices.
  • Exchange figures can lag, gap or be revised. We show them as reported, with the source.
  • Times are in your browser’s timezone. Crypto’s session boundary on the chart is 00:00 UTC.

What Markov never does.

  • Tell you what to trade.

    No buy or sell calls, no “take this trade”, no signals. Context, never instructions.

  • Publish win rates or accuracy.

    No performance figures, backtest results or hit rates, on the site or in the scripts.

  • Pass a model off as a measurement.

    Modeled values carry ≈, dashed lines and their assumptions. Measured values are plain.

  • Fill gaps with invented data.

    Time nobody recorded is drawn “not recorded” and left out of every count. Nothing is interpolated.

  • Show a number without its source.

    Every panel names its source, its state and how fresh it is. No chip, no number.

  • Place orders or hold funds.

    Markov reads public market data. It doesn’t execute trades, take custody or copy trades between people.

Credits.

Market data
Hyperliquid, Binance, Bybit, CoinGecko, Frankfurter (European Central Bank reference rates), Finnhub.
Charts
TradingView Lightweight Charts, Apache License 2.0. The chart keeps TradingView’s attribution.
Icons
Lucide, ISC License.
Type
Geist and Geist Mono, SIL Open Font License, served from this site.

Names are trademarks of their owners. Markov isn’t affiliated with or endorsed by them.

Coming to ES/NQ · in development

Why options positioning matters.

Price is pushed and pinned by how options dealers hedge. The biggest strikes become walls; the line where dealer gamma flips sign sets the regime of the session.

That structure is computable from the options chain, but it lives in markets you aren’t watching. Markov is being built to draw it where it matters: on the ES and NQ chart you trade.

Open interest is end-of-day; anything intraday is modeled, and we show the assumptions rather than hide them. Positioning is regime and risk context, not a signal.

Above the flip

Dampened

Dealers sell strength and buy weakness. Volatility tends to compress and price to pin toward the big strikes.

Below the flip

Amplified

Dealers hedge with the move. Trends can extend and breaks can run; risk of ruin climbs.

SchematicHow each regime tends to behave — a drawing, not data.
  • Live today · crypto

    The measurable side of the same idea: where size rests, where leverage breaks, who is paying to hold the crowded side. Open the free chart

  • In development · ES/NQ positioning

    Gamma walls and the flip, modeled from options open interest and drawn on your futures. It waits on options-data licensing. How we’ll model it

See every chip on the live chart.

Each layer names its source and freshness right where you read it. No account needed.