UnderlyingUnderlying
MarketsStocksLaunchRewardsDocs
MarketsStocksLaunchRewardsDocs
UnderlyingCommodity
Market Exchange
$UNDERHow it worksExplorer

How Underlying works

Everything the exchange does, from the stock coins every market is priced in to the fees that buy back $UNDER. Written for traders and creators; the contract addresses are at the end.

Launch a market
On this pageOverviewStock coinsLaunching a marketThe curveBasketsMigrationReal liquidity from block oneTrading and routingFeesHolder rewards$UNDERThe keeperContractsFAQ

Overview

Underlying is a stock-denominated exchange on Robinhood Chain. Every market launched here is paired with a coin that tracks a real listed company instead of a stablecoin, so a token's price is quoted in Apple, Nvidia or Coca-Cola, and its holders are paid their share of trading fees in that stock.

37 stock coins

Each one is pegged to a live reference price by an on-chain feed and a single-sided Pons pool. Buy or sell any of them for USDG at the feed price.

Markets on a curve

A launch mints one billion tokens and opens at a $5,000 market cap. At $35,000 it migrates into a permanent Pons pool.

Fees that pay holders

40% of every fee goes to a market's holders, 30% buys back and burns $UNDER, 30% runs the exchange. Nothing to claim.

Pick coinsLaunch at $5,000Trade on the curveMigrate at $35,000Pons pool

Stock coins

A stock coin is an ERC-20 whose price is held at the commodity's reference price. One GLD is one troy ounce of gold, one ZC is one bushel of corn, one FRIES is one medium order of fries at the US menu price.

How the peg holds

Each coin has an entry in the price feed contract and its own Pons V3 pool against USDG. The pool holds liquidity on one side only: an ask of protocol-minted coin one tick above the feed price, and a bid holding every dollar that ask has collected one tick below it. A buyer never pays below the oracle and a seller never receives above it. When the reference price moves across a tick line, or one side is used up, the keeper withdraws both ranges, moves the empty pool to the new price, and places them again. The pool address never changes, so the coin is always buyable and sellable at the feed price plus the pool fee.

Price updatesevery 60swhen the reference moves
Feed staleness limit1 houra stale asset stops trading until refreshed
Categories7metals, energy, agriculture, livestock, technology, consumer, healthcare

Where prices come from

Listed equities (metals, energy, grains, softs, livestock) follow their front-month futures quotes, converted to USD per catalogue unit. Equity coins follow the last close on their primary listing, converted to USD per share, and hold that print while the exchange is shut. The commodities page shows the live reference price, the on-chain price, and how many markets are paired with each coin.

Why stocks? A stablecoin pair makes a token's price a dollar figure and nothing more. A stock pair gives the market a second dimension: holders of a corn-paired token are paid in corn, and the token's USD price moves with both its own demand and the corn price.

Launching a market

One form, one transaction. Name the token, upload an image, choose what it is paired with, set the fee, and make the first buy. The contract mints the whole supply and opens the curve in the same call.

Supply1,000,000,000 tokens, fixed. 800 million sell on the curve; 200 million are reserved for the pool at migration.
PairingAny stock coin, or a basket of up to 5 with weights you choose (each at least 5%).
Opening cap$5,000, fixed in the pair coin at creation so it does not drift with the commodity price afterwards.
Migration cap$35,000. When the last curve token sells, the market migrates into its pool in the same transaction.
Trading fee1% to 3%, chosen by the creator and enforced on the curve and, after migration, by the pool itself.
First buyAt least $1, paid in ETH or USDG and swapped into the pair coin inside the launch transaction.
MetadataThe image and metadata are pinned to IPFS and the metadata URI is written on chain at creation. It never changes.
Creator shareNone. Creators earn like every other holder. Markets launched before 8 September 2026 keep the 30% creator share they were created with.

The curve

Before migration a market trades on a virtual-liquidity constant-product curve held by the launchpad. There is no pool yet: the contract holds the unsold tokens and the coin paid in, and prices every trade against virtual reserves sized so the market opens at the opening cap and completes at the migration cap.

Token price in the pair coinprice = virtualQuote / virtualBaseUSD priceprice × commodity USD price

Buys move tokens out of the curve and coin into it; sells do the reverse. Because the caps are fixed in the coin when the market is created, a rally in the commodity lifts every market paired with it in USD terms without changing where the market sits on its curve. Progress to migration is simply the share of the 800 million curve tokens that have been sold.

Completing buy. The buy that takes the last curve token is only charged for what the curve could take; the rest of the coin is returned in the same transaction, and the market migrates before the buyer's tokens arrive.

Baskets

A market can be backed by up to 5 stock coins at once. The creator picks the coins and their weights; the curve is then denominated in a basket unit made of those coins in those proportions.

The basket unit

At creation one basket unit is worth exactly one dollar: for a 40% gold, 60% corn basket it holds forty cents of gold and sixty cents of corn at that moment's prices. The opening and migration caps are set in basket units, so a basket market opens at $5,000 and migrates at $35,000 exactly like a single-coin market. Afterwards the unit's dollar value drifts with its coins, as the pair coin's does for a single-coin market.

Buying and selling

A trade can go through any leg. Paying with corn converts the corn into basket units at the current prices and buys from the same curve as paying with gold would, so every leg sees the same USD price. Selling returns the leg's coin, as far as the curve holds it. Holders are paid in every coin of the basket, in proportion to what each leg collected.

Migration of a basket

Each leg that collected coin gets its own Pons pool, opened at the same USD price and seeded from that leg's actual reserves plus its share of the reserved supply. A leg nobody paid into gets no pool. After migration the legs are independent pools with their own prices, which is why the exchange routes orders across them for you.

Coins per basketup to 5weights sum to 100%
Minimum weight5%per coin
Pools at migrationone per legsame USD price on every one

Migration

When the last curve token sells, the coin raised and the reserved 200 million tokens move into a Pons pool at the curve's final price, in the same transaction as the completing buy. The liquidity is owned by the launchpad and never withdrawn.

Last curve token sellsPool initialised at final priceFull-range position seededTrading continues on the pool

Two positions are placed: a full-range position from the reserved tokens and the coin that pairs with them at the final price, and a coin-only position just beside the price holding whatever coin remains, so the pool can absorb sells without a gap. The pool's fee is stamped by a hook at initialisation to the fee the creator chose, and every trade on the pool pays it into the same fee ledger the curve used. The pool is a normal Pons pool otherwise: any router can trade it, and the site's pair routers do.

Real liquidity from block one

Since LaunchpadV6 a market is a plain Pons pool with real liquidity from the block it is created. The entire one billion token supply goes into the pool at creation as the launchpad's own positions. Nothing is held back, there is no separate curve and no migration, so every router, aggregator and trading terminal that reads v4 liquidity can route the market immediately.

Launch: pool opens at the $5,000 cap800M tokens in the curve range200M tokens in the reserve rangeAny router trades it, forever

The bonding curve is made of real liquidity. Per basket leg, the leg's share of 800 million tokens sits in one concentrated range from the opening price ($5,000 market cap) to the cap price ($35,000market cap). Buys walk the price up that range and leave the coin paid inside the pool, which is what pays sellers on the way back down. The leg's share of the 200 million reserve sits in a second range above the cap, so the market keeps quoting past it with no cliff and no relaunch.

The creator's fee is the pool's LP fee, stamped by the fee hook when the pool is initialised. It accrues to the launchpad's positions and is collected into the same ledger every earlier version used, so holder rewards and the $UNDER buyback work exactly as before. The pool id, hook and pair router never change over the market's life.

Markets created on V3, V4 and V5 keep working on their own contracts. V5 pools priced their curve inside a hook; those markets remain tradeable through the site and any contract that swaps the pool directly.

Trading and routing

Every market can be bought with ETH, USDG, or any of its coins, and sold back into any of them, always in one transaction.

How an ETH buy travels

ETHUSDGCommodity coinCurve or pool

The launch router swaps ETH to USDG and then to the pair coin through the coin's peg pool, then trades the coin on the curve or the market's v4 pool, and hands the tokens back. Sells run the route backwards. Quotes on the site include every hop, and each trade carries a 1% slippage floor on the amount you receive.

Best price on baskets, automatically

For a basket market the site never asks which coin to go through. On the curve every leg prices the same in USD, so it quotes each leg and uses the one whose swap route loses the least. Once the legs are separate pools it quotes each pool at the full order and at half of it, fits a slippage curve to each, and splits the order across the pools so the combined price is the best available. The split settles in one transaction through the basket router, with one minimum-output check on the total, and the quote shows the split it chose.

Approvals. ETH needs none. USDG and stock coins are approved once per router. The launch tokens trust the launchpad and its routers, so selling through them needs no approval; a split sell through the basket router asks for one approval the first time.

Fees

The creator's fee is charged on every trade, on the curve and in the pool, and split the same way in both places.

40%30%30%
Holders
Paid to the market's holders in the stock coin, weighted by balance.
$UNDER buyback
Swept into ETH, used to buy $UNDER on its pool, and burned.
Protocol
Swept into ETH for the exchange treasury. Runs the keeper, the feeds, and the site.

On the curve the fee is taken in the coin paid in. On the pool, buys pay in the coin and sells pay in the market's own token; the token share is sold for the coin at payout time so holders are still paid in the commodity. Markets launched before 8 September 2026 carry a 30% creator share in place of the buyback; their creators claim it from the account page.

Holder rewards

Hold a market's token and 40% of its trading fees are paid to your wallet automatically, in the stock coin the market is paired with. There is nothing to claim.

Cycle15 minevery market checked each cycle
Pool pays when≥ $100unpaid holder share
Eligible holding≥ $5of the market's token
Minimum payout≥ $1per wallet per cycle

How a cycle works

  1. The keeper collects each market's fees from the curve or pool into the treasury and reads the ledger for what holders are owed.
  2. It scans every holder balance from the market's creation block. Protocol addresses, the pool, and the launchpad are excluded.
  3. Fees taken in the launch token are sold for the coin, so the whole pool is paid in the commodity.
  4. Each eligible wallet receives its share of the pool in proportion to its balance, straight from the treasury, and every payout is recorded.

A basket market keeps one pool per coin and pays each in that coin. The rewards page shows what has been paid to your wallet, what your current holdings are lined up for, and lets you sell any stock coin you hold for USDG at the feed price.

$UNDER

$UNDER is the exchange coin. It launched on Pons with a 1% base fee plus a 2% creator fee and graduated into a Pons pool; the contract address was derived from the launch parameters before the launch, so it could be verified in advance.

Fees in 37 coinsSwept to ETH30% buys $UNDERBurned

Every cycle the keeper converts the buyback share of collected fees to ETH, forwards it to the deployer wallet, and the deployer buys $UNDER on its pool and burns it through the buyback contract. The burn is permanent and visible on chain; the $UNDER page tracks how much has been burned and the ETH spent. A small reserve (2% of holder obligations) is always kept back so payouts never find the treasury short.

The keeper

An off-chain service run by the exchange keeps the on-chain state honest. It never holds user funds and every action it takes is a public transaction.

JobCadenceWhat it does
Price push60sReads reference prices and writes the ones that moved to the feed contract.
Peg repricing60sMoves each coin's single-sided pool when the price crosses a tick line or a side runs dry.
Migrations15 minOpens the pool for any market whose curve completed but was not migrated in the completing transaction.
Fee collection15 minCollects pool fees and sweeps every market's ledger into the treasury.
Holder payouts15 minPays each market's holder pool once it clears the thresholds above.
Treasury conversion15 minConverts the protocol and buyback shares to ETH; the buyback share is spent on $UNDER and burned.

Contracts

Robinhood Chain mainnet, chain id 4663. Every address below is the live one the site uses.

ContractAddressRole
LaunchpadV60x89a890…aae149Current launchpad: the whole supply is real v4 liquidity from creation, routable by any terminal.
Fee hook (V6)0x238484…a41000Stamps each new pool with the creator's fee. Nothing else.
Launch router (V6)0x5354AF…E66b80Creates V6 launches and handles ETH and USDG buys and sells for them.
Basket router (V6)0xA4a304…299831Splits one order across a V6 basket's pools in a single transaction.
LaunchpadV50x569E49…cA23a1Hook-priced curve pools created before V6.
CurveHookV50x3B9d59…75e888The hook on every V5 pool. Prices swaps on the curve before migration, sets the LP fee after.
LaunchRouterV50xC4c8FA…1b8780Creates V5 launches and handles ETH and USDG buys and sells for them.
BasketRouterV50x7EF5be…06B84BSplits one order across a V5 basket's pools in a single transaction.
LaunchQuoterV50xCe9398…031F21View-only curve quotes for V5 markets.
LaunchpadV40x741aE8…6Fc522Basket launches created before V5: curves, migrations, fee ledgers.
LaunchRouterV40x925848…5AAcd1ETH and USDG buys and sells for basket markets.
BasketRouterV40x1ae8E0…aDA348Splits one order across a basket's pools in a single transaction.
LaunchpadV30xA4E6dd…ba0000Single-coin launches created before baskets.
LaunchRouterV30x3c198d…33e88CETH and USDG trading for those markets.
Commodity price feed0x3B7847…159ab7Reference prices for every stock coin.
Pons PoolManager0x8366a3…e40951Holds every migrated market's pool.
$UNDERThe exchange coin.
$UNDER buyback0x4551E4…b9C226Buys $UNDER with the buyback share and burns it.

Each stock coin has its own token, peg pool, and pair router; the coin's dialog on the commodities page links to them.

FAQ

Do I need to claim rewards?
No. Payouts are sent to the wallet holding the tokens every cycle once the market's pool is worth paying. The rewards page shows the history.
What if the commodity price moves?
The market's position on its curve does not change, but its USD price does, because the pair coin is worth more or less. A basket market moves with the weighted value of its coins.
Can liquidity be pulled after migration?
No. The launchpad owns the pool positions and has no function to withdraw them. It only collects the fees they earn.
Why does my basket buy show a split?
After migration each coin of the basket has its own pool. The exchange quoted every pool and found that spreading the order across them gives you more tokens than any one pool would. It is settled as a single transaction.
Can I sell the stock coins I was paid?
Yes, on the rewards page, for USDG at the feed price. You can also hold them: each one tracks its commodity.
Is there a creator fee?
Not on markets launched since 8 September 2026. The share that used to go to creators now buys back and burns $UNDER.