Market

Protocol

rob0 issues and redeems against a fixed 20 ETH exponential curve through Uniswap v4 on Robinhood Chain.

Overview

rob0 is an ERC-20 issued against native ETH. Its only minter is Rob0Hook, set once after deployment. The token has no owner, proxy, blacklist, transfer fee, treasury, governance function, controller, pause state, or upgrade path. Anyone can mint or redeem through the fixed router.

Rob0SwapRouter settles exact-input trades through Uniswap v4 PoolManager. The pool carries no liquidity. It exists to invoke the hook and settle ETH and rob0.

wallet → router → PoolManager → hook → token

Curve

Cumulative curve ETH maps to fair circulating supply. The maximum supply K is 21,000,000 rob0 and the scale S is 20 ETH.

Q(E) = K × (1 − e−E/S)E(Q) = S × ln(K / (K − Q))P(E) = S × eE/S / K
Maximum supply
21,000,000 rob0
Curve scale
20 ETH
Mint closes
20,790,000 rob0

Trading

Mint

The router settles ETH to PoolManager. The hook retains 0.30%, advances the curve with the remainder, and mints rob0 to the recipient.

Redeem

The router settles rob0 to PoolManager. The hook applies the inverse curve, retains 0.30%, burns the input, and returns ETH to the recipient.

Secondary market

A separate no-hook ETH/rob0 v4 pool provides standard market liquidity. It shares currencies and PoolManager with the curve pool while keeping independent price and LP state.

Rob0ArbitrageExecutor multicalls both price legs inside one PoolManager unlock. It validates the first output, final output, deadline, and gross ETH profit before releasing proceeds. The bot includes buffered maximum gas cost in that profit floor. Rob0MarketMaker owns a full-range position in the market pool. The bot reads that position and its wallet inventory after every restart, then mints, redeems, adds, or removes inventory to keep market liquidity near its configured capital target.

curve pool → rob0 → market pool → ETH profit

Limits

Single mint
5 ETH maximum
Minimum curve value
0.000000001 ETH after fees; full final redemption stays open
Trade protection
Minimum output and deadline on every router call
Cooldown
Same-block mint and burn rejected for the recorded caller
Curve liquidity
Additions to the hook pool always revert
Secondary liquidity
Bot operator manages the position; recovery owner can disable it and remove all
Retained fees
Locked in Rob0Hook
Router protection
0.50% quote tolerance and a 10-minute frontend deadline
Arbitrage protection
Two minOut checks, profit floor, and deadline

Risks

The contracts and bot are unaudited. Fixed-point rounding, custom PoolManager deltas, sequencer ordering, RPC failures, public transaction races, compromised operator or recovery keys, and deployment mistakes can cause loss. Stale arbitrage transactions can revert and still spend gas.

An independent security review is required before a mainnet deployment accepts user funds.