Reference Mark Methodology
Why spot prices aren't enough
Tokenized equities trade in young, shallow onchain pools. A single small swap can move spot price by whole percentage points, and a screenshot of a DEX quote captures whatever that last swap did. A citable reference price has to be unmoveable by one trade. That is what the AltStreet Mark is built for.
The pipeline
- Every 15 minutes, we sample each tracked pool: a 15-minute time-weighted average price (TWAP), the instantaneous spot price, in-range liquidity, and the Chainlink price of the underlying equity where a feed exists.
- Daily at 21:05 UTC, we compute one reference mark per token: the median TWAP of all qualifying samples inside the 19:00–21:00 UTC fixing window.
- Marks publish with their evidence inline: samples used, samples excluded and why, and any caveat flags.
Two TWAP trust models — labeled, never mixed
Not all TWAPs carry the same guarantees, so every sample states which method produced it:
onchain_oracle— read directly from a Uniswap V3 pool's observation oracle (observe()). The chain itself computed the time-weighting; manipulating it requires holding a price across the full window against arbitrage.sampled— a synthetic TWAP built from our own 15-minute spot series, used on venues without an onchain observation oracle: Orca Whirlpools on Solana, and Uniswap v4 pools (v4 removed the built-in oracle; it exists only where a pool opts into an oracle hook). Weaker trust model, honestly labeled.
Why the fixing window, and why median
A fixed 19:00–21:00 UTC window overlaps late US equity trading hours, when the underlying reference is freshest, and makes every day's mark comparable to every other day's. A rolling "latest price" would be easier to game and impossible to cite.
The median — not the mean — of the window's samples means a single manipulated or turbulent sample cannot drag the mark. Moving the median requires moving most of the window, which means holding a distorted price on a public AMM for an hour against arbitrage.
Liquidity gates and flags
Every sample is checked against per-token thresholds. Two flags are disqualifying — flagged samples never enter a mark or a spread:
- LOW_LIQUIDITY— the pool's in-range liquidity is below its configured floor. A drained pool can show any price; it gets to show it somewhere else.
- QUOTE_DEPEG— the stablecoin quote asset is off its dollar peg. A "5% premium" that is really a depegged USDC is not information about the equity.
Two flags are caveats — they ride along on the data rather than excluding it, because a real anomaly is information:
- SPOT_TWAP_DIVERGENCE — spot has moved more than 2% off the TWAP: turbulence or an attempted push, happening now.
- EXTREME_PREMIUM — the token trades more than 10% away from its underlying. Verify before citing; the premium itself may be the story.
A caveat flag present on the majority of a mark's samples is promoted onto the mark itself.
When no mark is published
If too few qualifying samples exist in the fixing window — an RPC outage, a drained pool, a depegged quote — the day's mark is withheld, and the gap is visible in the history. A withheld number costs a chart point; a bad number costs the credibility the whole dataset is built on.
Premium vs underlying
Where Chainlink publishes a feed for the underlying equity (Chainlink is Robinhood Chain's official oracle provider), each mark reports the median premium/discount of the token versus that feed. Feeds are checked against their heartbeat — a stale feed omits the premium rather than poisoning it.
OpenAI remains private and has no consensus underlying, so no premium is reported for its promotional reference token. SpaceX has traded publicly as SPCX since June 12, 2026; its xStock is eligible for a premium calculation once a supported underlying feed is configured. Until then, the premium field is omitted rather than inferred from a stale private-market mark.
Cross-venue spreads
Symbols tracked on multiple venues (Robinhood Chain, Solana xStocks, Base) get a live pairwise spread matrix. Integrity rules:
- A venue more than 30 minutes stale never enters a spread — no phantom arbitrage against a dead feed.
- Liquidity-gated or depegged venues never enter a spread — no "37% arb" against a drained pool.
- The published headline pair always states which venue is rich; flipping direction recomputes the ratio rather than negating it.
Executable depth and net spreads
A mid-price spread means nothing if the pools can't absorb a real trade. Depth is probed at $1,000 / $10,000 / $50,000 on both sides of every tracked pool:
quoter_exact— on Uniswap V3 venues, the swap is actually simulated through the pool's quoter contract, so the effective price at size is exact.liquidity_estimate— on Orca Whirlpools, a constant-liquidity, fee-adjusted estimate from in-range liquidity. One estimate leg downgrades the whole executable number to estimate-grade, and it says so.
Sizes a pool cannot absorb are absent, never extrapolated — absence is itself the depth signal.
The executable spread for the widest venue pair is buy-on-cheap / sell-on-rich at matched size, net of price impact, pool fees, and gas — before venue-access, bridging, and hedging costs. That scope is stated on every number: a defensible partial figure beats a fake all-in one.
What the token legally represents
A tokenized stock is not the stock. Each tracked token carries a curated structure record: issuer, legal form (many are tokenized debt securities conveying economic exposure only), backing, holder rights, jurisdictional restrictions, and redemption terms — every entry sourced to issuer documents and review-dated. Unsourced entries cannot ship: the daemon refuses to boot on them.
For private-reference tokens, secondary-market indications from venues like Forge, Hiive, or EquityZen are recorded with a mandatory ask / bid / completed-trade distinction and their structure context (SPV wrapping, fees, share class). Any comparison is published as an implied exposure premium/discount— never as "the price of SpaceX" — because the token and the indication are different instruments.
Access
Daily marks, 30 days of history, and this methodology are free — they are the citation layer. The intraday TWAP series, full history, the spread screener, alert rules, and CSV export are part of the Pro and API plans.
