Solune
Open app

Docs

How Solune works

Solune is an interface and a set of contracts for trading tokenized stocks on Robinhood Chain (chain 4663). Stock tokens trade on-chain every hour of every day, while the stock market they track opens and closes. Solune is built around that gap.

Prices

Stock prices on the page are read straight from Chainlink feeds on Robinhood Chain, all in one Multicall request every 20 seconds. There are no API keys and no cached copies. Next to each oracle price the page shows the live DEX price from GeckoTerminal and the gap between the two, so you can see when a pool has drifted from the reference price.

Chainlink equity feeds update when the price moves by 0.5% or when their heartbeat expires, and they pause outside market hours. The "Updated" column shows the age of every answer. If a value cannot be read, the page shows a dash instead of a guess.

Best route across Uniswap v3 and v4

Every quote checks all four Uniswap v3 fee tiers and every known Uniswap v4 pool for the pair in a single call, then picks the one that pays you the most. Open "All routes checked" under the swap card to see every quote side by side. Swaps are exact input with a minimum output set by your slippage choice, and the quote is refreshed right before you sign.

The session hook

SoluneSessionHook is a Uniswap v4 hook with a dynamic fee. It runs before every swap in a Solune pool and sets that swap's fee from three inputs.

Fees are capped at 5% in the contract. Anyone can read the fee the next swap would pay with quoteFee(poolKey, zeroForOne), and the Hook section of the app shows it live for every pool.

The router

SoluneRouter executes swaps on Uniswap v4 pools (through the PoolManager) and on Uniswap v3 (through SwapRouter02). It accepts native ETH and ERC-20 tokens, enforces your minimum output and deadline, and refunds anything left unused. When the router is live the app routes through it and shows its protocol fee on each quote. The fee is read from the contract, is capped at 1% in code, and funds the work on Solune.

The Solune token

The Solune token launches on Pons, the launchpad on Robinhood Chain. It starts on a bonding curve and moves to a Uniswap v4 pool when the curve fills. The app watches the chain and shows the real contract address, price and status the moment it exists. Always check the address on this site or on our official X account before you buy.

Automatic detection

The app does not wait for a redeploy to learn about new contracts. Every three seconds it reads the chain for contracts created by the project wallet, confirms each one by calling it, and wires it in. The same goes for new hook pools and for the token launch.

Contracts used

ContractAddress
Uniswap v4 PoolManager0x8366a39CC670B4001A1121B8F6A443A643e40951
Uniswap v4 Quoter0x8Dc178eFB8111BB0973Dd9d722ebeFF267c98F94
Uniswap v3 SwapRouter020xCaf681a66D020601342297493863E78C959E5cb2
Uniswap v3 QuoterV20x33e885eD0Ec9bF04EcfB19341582aADCb4c8A9E7
WETH0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73
USDG0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168
Chainlink ETH / USD0x78F3556b67E17Df817D51Ef5a990cDaF09E8d3A9

Solune's own hook and router addresses appear in the Hook section of the app once they are on-chain, with a link to the explorer.

Risks

Solune is independent and is not affiliated with Robinhood Markets, Uniswap Labs or Chainlink.