INDX
Documentation

How INDX works

What the protocol does, how to use it, and the mechanisms underneath — written for someone deciding whether to trust it with their money.

What INDX is

INDX builds rules-based index products on Robinhood Chain. An index is a published set of rules deciding which assets qualify, how much of each is held, and when that is reviewed. One index share gives you proportional ownership of everything the index holds, and you can redeem it for those assets at any time.

The unusual part is what happens to the assets while you hold them. A bounded portion of the Reserve is deployed as liquidity into the constituents’ own markets. The fees that activity earns come back to the index. So the index is not only exposure to a market — it is part of that market’s plumbing.

Read this firstThis page explains how the system is built and what it is permitted to do. It is not advice and contains no predictions. Where a live number would normally sit, the parameter is named instead: live values belong in the app, where they are read from the chain and can be checked, rather than typed into a document where they cannot.

Live on Robinhood Chain

INDX launched on Robinhood Chain mainnet (chain 4663) on 24 September 2026. Its first index, Small Cap Utility, is open for deposits at indx.world/app.

What is live

  • Deposits and withdrawals: in USDG with one click, or in kind with the tokens themselves.
  • The index: ten small-cap Robinhood Chain utility projects, plus USDG, at the weights below.
  • The Engine: nine INDX-owned Uniswap v4 pools with the INDX hook. Up to 5% of the index is put to work in them, and the trading fees they earn go back into the index.
  • Pricing: Chainlink, plus time-averaged prices from each token’s own pools.
  • Governance: a 2-of-3 Safe owns every contract (see below).
  • Your portfolio: your INDX, its value, and the slice of each token it represents.

Coming soon

  • History: charts, 24-hour flow, the activity feed and market price need the history indexer, which is next.
  • Claimable earnings: the fee distributor is deployed but switched off, so every fee compounds into the value of INDX instead.
  • Benchmark level: deployed, to be configured by the Safe.
  • A second index: RWA + Tokenization is in research.

Settings at launch

Deposit cap50,000 INDX in total (about $50,000 at launch), raised by the Safe as the index proves itself
Minimum USDG deposit$25: one deposit buys ten tokens, so its network fee is about the same at any size
Engine Depth limit5% of the index
WeightingBy square root of market cap, no token above 15%
Engine fees0.30% base, moving between 0.05% and 2% as a token drifts from its target
TimelocksEngine changes wait at least 1 hour; methodology changes 24 hours

The basket

TokenAddressTargetEngine
ORBIO0xAa07…28A313.4%Engine market
Index0x5691…987010.7%Engine market
WALLET0x0339…9E1b9.5%Engine market
DELTA0xe8ff…a7919.5%Engine market
musebook0x91A2…0bA38.7%Engine market
STANDARD0x88ad…90628.6%No Engine market
PRISM0x2002…77778.5%Engine market
STATICS0x2d8d…EAdd7.4%Engine market
HOOKR0x18E6…ff5c7.0%Engine market
PROLOGUE0xb997…32776.7%Engine market
USDG0x5fc5…d16810.0%Held as reserve cash

STANDARD’s token restricts transfers through the Uniswap v4 PoolManager, so it is held in the index without an Engine market.

Governance

Every contract is governed by a 2-of-3 Safe, 0x71d0CA25cb7CF759977e99453E5Ea097024f2aD6. It took ownership of all 27 contracts in a single handover transaction. A separate guardian key, 0x3931…46AA, can pause in an emergency but can change nothing and cannot unpause. Withdrawing in kind can never be paused.

Contracts

Every contract’s source is published and verified (exact match) on Sourcify, and readable on Blockscout.

ContractAddressWhat it does
INDX token0x100D…206fYour share of the index. Minted when you deposit, burned when you withdraw.
Vault0x73Ba…096bHolds every asset in the index. Deposits land here; nobody can withdraw from it except by redeeming shares.
Router0x6a4e…323DDeposits and withdrawals in kind, and the share price (NAV).
One-click deposit0x5417…5818Turns USDG into the whole basket in one transaction, and back again.
Swap router0x4FCa…B2CBThe routes the one-click deposit uses to buy and sell each constituent.
Engine0x18B2…0a66Sets each market’s fees from where its token sits against its target weight.
Engine hook0x6CEd…00C0The Uniswap v4 hook on every INDX pool: applies the Engine’s fees on each trade.
Reserve controller0x9A3C…b5BCMoves Depth between the Vault and the Engine markets, within the Vault’s limits.
Price registry0x2CA3…4534Where every price comes from, with staleness and depth checks.
Chainlink adapter0x3fFE…0aBdUSDG and ETH prices from Chainlink.
Uniswap v3 TWAP0xE37a…3AC9Time-averaged prices for constituents that trade on Uniswap v3.
Uniswap v4 TWAP0xd74C…1b8ATime-averaged prices for constituents that trade only on Uniswap v4, recorded every five minutes.
Methodology0xB1aC…1A56The index rules: eligibility, weighting, caps and review cycle.
Asset registry0x8Be6…3140Which tokens the index may hold.
Market metrics0x92DB…e647Market cap, liquidity and volume for each constituent, posted daily.
Rebalance manager0xc569…eD0aProposes and schedules rebalances.
Rebalance executor0x3839…FE7bCarries out scheduled rebalances in bounded steps.
Fee distributor0x7CFE…e8CEPays out any share of fees routed to holders.
Benchmark0xE675…f556Reference index level. Deployed, not yet configured.

Engine markets

One market contract per pool, each wired to the Engine hook and guarded so Depth only goes in when the pool agrees with the oracle price within 1%.

MarketAddress
ORBIO / USDG0x3AD7…7a2a
Index / USDG0x5821…C946
WALLET / USDG0xa62E…778a
DELTA / USDG0x6B4f…deE5
musebook / USDG0x7970…ffaF
PRISM / USDG0xC4B2…1210
STATICS / USDG0x9567…6360
HOOKR / USDG0xa550…248e
PROLOGUE / USDG0x2581…48b8

What makes it different

Five things, each of which is a design decision with a cost, not a marketing line.

1. The index earns from the market it tracks

Most index products are pure exposure: they buy the constituents and wait. Small-cap markets are thin, so buying into them means paying the spread and then sitting behind it. INDX places a bounded slice of the Reserve into those markets as liquidity, which means the index collects part of the spread instead of only paying it, and the markets it depends on get deeper.

The cost: capital deployed into a market can come back worth less than it went in. That is ordinary for liquidity provision and it is not hedged away here. The exposure is bounded by two ceilings so a bad outcome is a dent rather than the index.

2. The rules are fixed before the capital arrives

Eligibility, weighting, concentration limits and the review schedule are written into a versioned methodology that exists onchain before anything is bought. Changing it is a governance action behind a timelock, and every screening result is attributed to the version that produced it.

The cost: the index cannot react to a market event faster than its review schedule allows. That is the trade being made deliberately — rules that can be changed quickly are not rules.

3. The Reserve cannot be withdrawn by anyone

There is no administrative withdrawal path out of the Reserve. Not a disabled one, not a timelocked one, not a multisig-gated one: the function does not exist. A test reads the deployed contract’s ABI and fails the build if a function matching one ever appears.

Governance configures parameters inside fixed caps. It cannot move Reserve assets, and it cannot mint shares against nothing.

4. One asset in, the whole basket out

Buying a ten-asset index normally means ten trades, ten spreads and ten chances to get the proportions wrong. Supplying a single asset does it in one transaction, and buys in the proportions the Reserve already holds so that minting cannot be used to skew the index.

The cost: you pay spread on every leg. Minting in kind is still cheaper if you already hold the constituents, and it stays the primary route rather than being deprecated in favour of the convenient one.

5. The app never shows a number nobody measured

Every figure in the app is read from the chain or from an indexer built out of chain events. Where a value has not been read, the app shows an em dash and says why — it does not show a zero. Those are different claims and the interface keeps them apart everywhere.

What you seeWhat it means
Not read. Nothing is being claimed about this value.
0Measured, and the measurement is zero.
No indexer connectedHistory cannot be read. Not a statement that nothing has happened.
LiveRead from the chain just now.
SoonThis figure needs the history indexer, which is coming next.

Getting started

You need a wallet that supports Robinhood Chain and some of the network’s native token for gas. Nothing else — there is no account to create, no allowlist and no sign-up.

  1. Open the appUse the Launch app button, or go straight to /app/. Everything is readable before you connect anything.
  2. Connect a walletConnect wallet in the sidebar. The app requests your address and the current chain, nothing else. It never asks for a seed phrase or a private key, and no part of it will ever have a field for one.
  3. Check the networkIf your wallet is on the wrong chain the app says so and offers to switch. It will not silently read the wrong chain and show you figures from it.
  4. Read before you actEvery page works read-only. The Reserve, the constituents, the Bands and the methodology parameters are all visible without a transaction.
Nobody will ever ask you for a seed phraseNot INDX, not support, not a moderator, not a form on this site. Any message that does is an attempt to steal from you, whatever it looks like it came from.

How to deposit in kind

Minting supplies assets to the Reserve and issues you shares against them. Because the Reserve backs the share, what you supply is what the index holds.

  1. Go to Deposit / WithdrawThe button sits at the bottom of the app sidebar, and at the top of the overview.
  2. Choose in-kindSupply the constituents in the proportions the index currently holds. The app shows you the exact list and amounts required for the number of shares you want.
  3. Approve each assetAn ERC-20 approval per constituent, once. Your wallet shows each one. Approving is not the mint — it authorises the Router to move that asset when the mint runs.
  4. Set your minimumThe minimum shares out field is your protection. If the transaction would issue fewer shares than that, it reverts rather than filling. Leaving it at zero means accepting any outcome.
  5. SubmitOne transaction mints. The app shows the resulting share balance read back from the chain, not the number it predicted.

Why in-kind

Supplying the constituents directly means nothing is bought on your behalf, so none of your capital is spent on slippage getting into the index. Where a single-asset convenience route is offered, it converts for you and prices that conversion with an explicit bound you set — the app shows the bound before you sign and the transaction fails rather than filling outside it.

How to deposit USDG

Minting in kind means holding every constituent before you start. The single-asset route does that part for you: you supply one asset, the protocol buys the basket on your behalf in the proportions the Reserve already holds, and mints against what it acquired.

  1. Pick the asset and amountThe app shows how the amount will be split across the constituents before you sign. That split is the Reserve’s current composition, priced — it is not a prediction of what the swaps will fill at.
  2. Check your minimum sharesThe app fills this in for you: the INDX your deposit buys at today’s price, less 5%. If any leg fills badly and you would get fewer, the whole transaction reverts and your USDG stays with you. Change it if you like; 0 accepts any amount.
  3. Confirm twiceYour wallet asks first to approve the USDG (exactly the amount you are depositing), then for the deposit itself. The minimum deposit is $25: one deposit buys ten tokens, so its network fee is about the same at any size.
  4. SubmitOne transaction: split, swap each leg, mint, and return anything that could not be spent.

Why it buys proportionally

The mint itself does not require proportions — the Router values whatever arrives and issues shares against that value, so a lopsided basket would still be fair to you. It would not be fair to everyone else: minting would become a way to push the index’s composition toward whatever you happened to buy, without paying the rebalancing cost. Buying in proportion to what the Reserve already holds means a single-asset mint leaves composition exactly where it found it.

What it is not

  • Not a second way into the Reserve. It holds no privileged role and touches no Vault function. It buys the basket and then queues up behind the same in-kind mint everyone else uses. There is one door.
  • Not free. You are paying spread on every leg. Minting in kind costs nothing in slippage, and remains the cheaper route if you already hold the constituents.
  • Not available for the first mint. With no shares outstanding there is no composition to buy in proportion to, so the opening mint is in kind by design rather than by accident.
Venues are approved one pair at a timeEach swap route is an allowlist entry governance sets. An unapproved pair reverts rather than falling back to some other venue, and a venue that under-delivers costs you nothing but gas, because the share minimum catches it.

How to withdraw

Withdrawing burns your INDX and returns your proportional slice of everything the Reserve holds. It is the mechanism that makes the share worth what it is backed by, and it is available at all times. On Deposit / Withdraw, the Withdraw tab offers two ways:

To USDGAs the tokens (in kind)
You receiveUSDGYour slice of each token, plus USDG
CostDEX fees on selling each token, about 1–2%No selling, no DEX fees
Can it be paused?Yes, in an emergencyNever

Both take two wallet confirmations: approve the INDX, then withdraw. The steps for the in-kind route:

  1. Enter the shares to burnThe app previews the exact assets and amounts you will receive, read from the current Reserve.
  2. Check the previewYou receive a slice of every constituent, in kind and pro rata. If Depth has to be unwound to cover your redemption, that happens inside the same transaction.
  3. Set your minimumAs with minting, the bound is yours to set and the transaction reverts rather than filling outside it.
  4. SubmitShares burn, assets arrive.
A halted market cannot block your exitHalting a market stops it accepting new Depth. Removal and fee collection stay open, by design, because a halt that could block a redemption would be a way to trap holders. The redemption path is deliberately the one thing an operator cannot switch off.

How to claim earnings

Coming soonClaimable earnings are not switched on yet: today every fee the Engine earns goes straight back into the index, so it shows up in the value of your INDX. This section describes how claiming will work once it goes live.

Fees the Sleeve earns are split between two routes: one share compounds into the Reserve and lifts the share price for everyone, the other is distributed as claimable tokens. The split is a published parameter.

  1. Open EarningsThe countdown at the top is the live settlement period. It is real without any contract deployed, because the boundaries are fixed UTC times.
  2. Watch it accrueYour accrual grows continuously with the time you hold. There is nothing to stake, lock or opt into — holding the share is the whole action.
  3. Wait for the period to closeAt 00:00, 08:00 or 16:00 UTC the window shuts and its total is fixed permanently.
  4. ClaimOne transaction. The app seals any closed-but-unsettled period first, then claims — claiming without sealing would walk straight past fees you had already earned.

You are paid in the tokens the fees were earned in. Nothing is sold or swapped on your behalf, so none of it is lost to slippage on the way to you. Settled amounts wait indefinitely: no queue, no deadline, nothing expires.

Reading the app

A short guide to the things most likely to be misread.

Target weight vs actual weight
Target is what the methodology says the index should hold. Actual is what it holds right now, which drifts as prices move. Both are shown, and neither is ever presented as the other.
The Band
The permitted range around a target weight. Inside it the Engine leaves inventory alone. A marker for actual inventory is drawn only when a real figure was read — a marker resting somewhere plausible is indistinguishable from a measurement, so it is left out rather than guessed.
NAV per share
The Reserve’s value divided by shares outstanding, read from the chain. Not estimated in your browser.
Four Reserve buckets
Core, Idle Depth, Deployed and Fees are reported separately rather than summed. A single total is the figure that hides problems.
Activity and Flow
Built from chain events by an indexer, never inferred from prices. If no indexer is connected the app says so rather than showing an empty list, because an empty list reads as "nothing happened".

The index and its methodology

Every INDX index begins with a methodology published before any capital enters. It is versioned onchain; changing it is a governance action behind a timelock, and the version number increments so that every screening result and weight computation is attributable to the exact rules that produced it.

What the methodology fixes

Eligibility
The market category, a market-capitalisation ceiling, minimum liquidity, minimum traded volume over 24h, and a minimum age. An asset failing any of these is not ranked lower — it is excluded.
Weighting
Market capitalisation, its square root, equal weight, or liquidity-adjusted. Named in the methodology, not chosen per review.
Concentration limit
A ceiling on any one constituent’s weight, so a single asset cannot come to dominate between reviews.
Review schedule
How often the rules are re-run. Between reviews target weights do not move, whatever prices do.
Staleness bound
The maximum age of the metrics a review may use. Data older than this is refused rather than used, because a screening run on stale inputs produces a confident wrong answer.

How a change lands

  1. ProposeParameters are validated on submission, not on commit. An impossible methodology cannot be queued, let alone enacted.
  2. WaitThe timelock runs in full. There is no expedited path, because the delay is the entire protection.
  3. CommitPermissionless once the delay has elapsed — after the wait there is nothing left to deliberate, so the governor is not a bottleneck.
  4. VersionThe version increments and is emitted. Every later result points back at it.

The Reserve

The Reserve is the pool of assets backing every share. It is onchain and readable by anyone. Each unit is in exactly one of four accounting states at any moment — the states are exclusive, and the contract asserts that they sum correctly after every single mutation.

BucketMeaningImmediately available?
CoreConstituent assets held idleYes
Idle DepthSet aside for market-making, not yet placedYes
DeployedCurrently placed in a constituent marketAfter unwinding
FeesEarned and banked, not yet distributed or compoundedYes

Solvency

After every operation that moves value, the Vault re-checks that the sum of the four buckets matches what it actually holds. An operation that would break that equality reverts. This is why the buckets are reported separately in the app: the split is the thing that makes the total checkable.

What cannot happen

  • No administrative withdrawal. The function does not exist and a test fails the build if one is added.
  • No minting against nothing. Only the Router may mint, and only after backing has actually arrived — the contract credits what arrived, not what was requested.
  • No growing the Depth Sleeve without a valuation. If the price source cannot answer, allocation refuses rather than proceeding blind. Shrinking it never requires one, so a broken feed cannot trap capital.

Depth: the Sleeve

Depth is the bounded portion of the Reserve allocated to providing liquidity in the constituents’ own markets.

Two ceilings and a floor

LimitSet atCan governance change it?
Hard capDeployment, immutableNo. Never, by anyone.
Configured capInside the hard capIt may lower it, and raise it only up to the hard cap.
Core floorA minimum share held idleConfigurable, and cannot overlap the cap.

The configured cap and the Core floor are checked against each other: a configuration where the Sleeve ceiling and the Core floor would overlap cannot be set at all, rather than being set and then silently misbehaving.

Per-market limits

Beyond the global bounds, each venue has a maximum share of any one asset’s Sleeve. Concentrating the whole allocation of a constituent in a single market would make the index’s exposure to that venue’s failure total rather than partial.

When it loses

Capital placed in a market can come back worth less than it went in. When that happens the shortfall is realised and recorded against that position as a loss, visibly, rather than being absorbed into the Reserve total where nobody would see it. The app shows realised losses per position.

The Engine

The Engine is the onchain logic managing Depth once it is placed. It does not decide what the index holds — that is the methodology’s job — and it cannot move capital outside its bounds.

Bands
A permitted range around a target weight. Inside it, inventory is left alone. Approaching an edge, the Engine adjusts fees so that the trade pushing it further out is more expensive and the trade bringing it back is cheaper. It steers with price rather than by trading against the market.
Dynamic fees
The fee on each side of a market, moved within a published minimum and maximum, and with a cap on how far it may move in one step. Every change is emitted onchain and appears in the activity feed.
Inventory state
Whether a market is inside its Band, approaching an edge, or outside it. Derived from measurements, and shown as unknown when the measurement is unavailable.
Flow
Trades against a constituent market. Historical Flow is reconstructed from chain events only.

Programmable by design: the v4 hook

The Engine is not a contract sitting beside a market watching it. It is a Uniswap v4 hook — code the pool itself calls on every swap. v4 lets a pool delegate parts of its behaviour to a hook contract, and the Engine takes two of those: it is invoked before a swap and after it.

MomentWhat the Engine does
Before the swapComputes the fee this particular trade should pay, from where the constituent’s inventory sits inside its Band, and returns it as a per-swap override of the pool’s fee.
After the swapObserves the result. It takes no value and returns no balance delta — the permissions it asks the pool for do not include that.

This is what makes the fee genuinely dynamic rather than a setting somebody changes occasionally. A trade pushing a constituent toward the edge of its Band is quoted a worse price than the trade bringing it back, and that happens inside the swap, per swap, without anybody submitting a transaction to adjust anything.

It is also why the Engine can be strict. A hook address in v4 encodes its own permissions in the low bits of the address, so the pool can see what a hook is allowed to do before it calls it. The Engine’s address grants it exactly two: before-swap and after-swap. It cannot take a share of the trade, cannot return a balance delta, and cannot touch liquidity — those permissions are not in its address, so the pool would not honour them if the code tried.

Not yet verified against a live Uniswap v4This is written, compiled and tested — against a mock of v4, not a real PoolManager. The mock proves the shape of every call the Engine makes; it does not prove that v4 accepts them, because v4’s pricing, tick crossing and hook dispatch live inside code no mock here imitates. Fork testing against a real deployment is outstanding, and this is the largest unproven surface in the protocol. It is said here rather than left for somebody to discover.

Fee bounds are enforced twice

The Engine clamps a fee to its configured range, and the market adapter clamps again to an immutable range fixed at deployment. If the Engine’s range were wider than the adapter’s, every update outside the adapter’s bounds would revert and the market would look configured while silently ignoring its Band. Deployment preflight checks for exactly this and refuses to pass.

Settlement mechanics

Distribution runs in fixed eight-hour periods closing at 00:00, 08:00 and 16:00 UTC. The boundaries are aligned to the Unix epoch rather than to the contract’s deployment, which is why they land on round UTC times and why the app can show a truthful countdown with nothing deployed.

Weighted by time held, not by balance at the bell

A period’s fees are divided by share-seconds: each holder’s balance multiplied by the time they held it.

your share  =  period fees  ×  (your share-seconds ÷ total share-seconds)
There is no moment worth timingDividing by closing balance would pay a full period’s fees to capital that arrived one second before the bell, every period, forever. Dividing by time held means arriving a minute before a settlement earns a minute. Nothing is gained by watching the clock, which is the point.

A worked example

Arithmetic, not data. Round numbers chosen so they cannot be mistaken for a reading.

HolderSharesHeld forShare-secondsGets
Ama100the full 8h period100 × 28,800 = 2,880,0002/3
Ben100the final 4h only100 × 14,400 = 1,440,0001/3
4,320,000 total

Ben held the same balance as Ama at the closing instant and receives half what she does, because he held it for half as long. Under a closing-balance scheme they would have received the same amount.

Claiming

Accrual is tracked with cumulative per-period rate sums, so settling a holder who has been idle for hundreds of periods is a constant-time operation rather than a loop over each one. Sealing periods is bounded per call, so a long-dormant contract can always be brought up to date incrementally instead of becoming permanently unsettleable.

Rebalancing

When a review changes target weights, the index moves toward them gradually rather than in one transaction.

  1. ProposeThe new targets are queued with a window in which they must be executed.
  2. RampWeights move toward their new targets over the window rather than stepping. A single large step is a trade anybody can see coming and price against.
  3. Complete or cancelA proposal completes, expires, or is cancelled mid-ramp by the guardian if conditions warrant.

Constituent entries and exits are the same mechanism: an entering asset ramps up from zero, an exiting one ramps down to it.

Governance and its limits

Two roles, deliberately unequal in kind rather than in degree.

GovernorGuardian
PurposeConfiguresStops things
Timelocked?Yes, on everything that mattersNo — an incident needs a response in seconds
Can pauseYesYes
Can unpauseYesNo
Can change a valueInside fixed capsNo
Can move capitalNoNo

Unpausing is governor-only by design. A guardian who could unpause would simply be a governor with extra steps, and the whole point of the split is that the fast role can only ever reduce what the system is doing.

Two-step handover

Transferring the governor role nominates an address; nothing changes until that address accepts. A mistyped address cannot orphan the protocol, and the app reports a pending nomination as pending rather than as a completed handover.

Security model

What the architecture assumes, and what it does not.

Contracts hold the rules
Caps, floors, fee bounds and timelocks are enforced onchain. The interface cannot relax them and neither can an operator.
The interface is not trusted
Every figure the app shows is read from the chain or from events. If the app were replaced wholesale, the protocol would behave identically.
The indexer is not trusted either
It reconstructs history from events. It cannot mint, move or authorise anything, and if it is wrong the chain is still the record.
Price feeds are a dependency
Valuation needs them. Growing Depth refuses without a valuation; shrinking it never requires one, so a failed feed cannot trap capital inside a market.
Deployment is checked, not assumed
A preflight reads a deployed system back and reports every misconfiguration it can find — unset roles, mismatched addresses, overlapping bounds, an asset nobody priced, fee ranges wider than their adapter allows. A protocol is not made correct by deploying correct bytecode; it is made correct by the wiring, which nothing onchain can check on its own.

Risks

Plainly, and not as a formality.

  • You can lose money. Index shares track a basket of small-cap assets. If those assets fall, the index falls with them. Nothing here prevents that.
  • Market-making can lose money. Capital placed as Depth can return worth less than it went in. The Sleeve is bounded so this cannot take the whole index, but a bound limits damage — it does not prevent it.
  • Smart contracts can have bugs. This protocol is new. Code that is tested is not code that is proven, and an audit reduces risk without removing it.
  • Thin markets behave badly. Small-cap constituents can gap, halt or become illiquid. A redemption during such a period may unwind positions on poor terms.
  • Price feeds can be wrong or stale. A wrong price is worse than a missing one: the system refuses to act without a valuation, but it cannot know that a valuation it received is incorrect.
  • Governance is a trust assumption. Parameters are capped and timelocked and Reserve assets cannot be withdrawn administratively — but whoever holds the governor role can still change what is changeable.
  • New chains carry their own risk. Robinhood Chain, its bridges and its infrastructure are dependencies of everything above.

Common questions

Do I have to stake or lock anything to earn?
No. Holding the index share is the entire action. There is no staking contract, no lock-up and nothing to opt into — accrual is a property of holding the share.
What happens if I hold for only part of a settlement period?
You earn for the part you held. Accrual is by share-second, so a holder who arrives halfway through a period earns half of what an identical holder who was there throughout earns.
Can I always redeem?
Redemption is deliberately the path an operator cannot switch off. A halted market stops accepting new Depth but continues to allow removal, and a redemption that needs Depth unwound will unwind it. What is not guaranteed is the price you get for illiquid constituents in a stressed market.
Where do the fees actually come from?
Third-party trading flow against the constituent markets the Sleeve provides liquidity to. They are revenue, not emissions and not a treasury subsidy. If nobody trades, there are no fees, and a settlement period with no fees distributes nothing and says so.
Why does the app show a dash instead of a number?
Because that value has not been read. It is not zero and it is not hidden — it is unknown, and saying so is the only honest option. A zero in the app means a measurement that came back zero.
Who can change the rules?
The governor, behind a timelock, inside caps fixed at deployment. Nobody can remove assets from the Reserve, raise the hard Depth cap, or skip a timelock.
Is this an investment product I can buy through a broker?
No. It is an onchain protocol you interact with directly from a wallet you control. Nothing here is advice, and you should reach your own view on whether it suits you.

Glossary

Index
Rules-based exposure to a whole market category through one onchain position.
Reserve
The assets economically backing every index share.
Core
The portion of the Reserve held idle and immediately available.
Depth
The bounded portion of the Reserve deployed across constituent markets as liquidity.
Sleeve
The same thing, named where the emphasis is on its limits.
Engine
The onchain logic coordinating Depth, dynamic fees and inventory inside methodology limits.
Bands
The permitted range around a target weight inside which inventory is left alone.
Flow
Trading activity against a constituent market, reconstructed from chain events.
Constituents
The assets an index holds, selected by the methodology.
Methodology
The published, versioned rules defining eligibility, weighting, limits and review schedule.
Target weight
What the methodology says should be held.
Actual weight
What is held right now.
NAV per share
The Reserve’s value divided by shares outstanding.
Share-seconds
Balance multiplied by time held — the denominator a settlement period’s fees are divided by.
Settlement period
A fixed eight-hour window closing at 00:00, 08:00 or 16:00 UTC, whose total is final once closed.
Sealing
Fixing a closed period’s total so it can be claimed against.
Zap
The single-asset mint route: supplies one asset, buys the basket in the Reserve’s current proportions, and mints against it.
Venue
An approved contract the zap may swap through. Allowlisted per pair by governance.
Hook
A contract a Uniswap v4 pool calls at defined moments in a swap. The Engine is one. Publicly the component is called the Engine; "hook" is the v4 mechanism it uses.
PoolManager
The single Uniswap v4 contract that holds every pool and calls hooks. Not yet tested against.
Guardian
The role that can stop things immediately and start nothing.
Governor
The role that configures, behind timelocks, inside fixed caps.