Circle Arc · chain 5042 · USDC-native
Swap USDC for tokenized stocks on Arc.
StockPools routes USDC into tokenized equity and pre-IPO tokens through the Uniswap v3 pools already live on Arc. Every price on this page is read from pool reserves over Arc RPC at load — not from a static list — and every swap is a transaction you sign in your own wallet.
Prices, reserves and block height on this page come from eth_call against rpc.mainnet.arc.io. Source contracts are listed on Contracts.
Depth is the real risk
—These pools are small. Your fill quality depends entirely on how much USDC sits in the pool you trade against, so StockPools publishes it per market instead of hiding it behind a single "TVL" number.
- Deepest pool
- —
- Thinnest pool
- —
- Pools under 5,000 USDC
- —
- Fee tiers in use
- 0.3% and 1%
What this is
A routing interface over Uniswap v3 pools on Arc. StockPools issued no tokens and holds no custody — it builds the calldata, your wallet signs it.
What you need
A wallet on Arc chain 5042 and USDC. USDC is Arc's native gas token, so the same balance pays for gas and for the swap.
What you get
An ERC-20 stock token in your own wallet, with the transaction hash viewable on explorer.arc.io.
Action · signed onchain
Swap desk
Quotes come from Uniswap QuoterV2 on Arc. The swap calls exactInputSingle on SwapRouter02. Review price impact and minimum received before you sign.
Order
QuoterV2- Rate
- —
- Price impact
- —
- Slippage tolerance
- Minimum received
- —
- Pool fee tier
- —
- Estimated gas
- —
Pool behind this quote
—- Market
- —
- Pool address
- —
- Stock reserve
- —
- USDC reserve
- —
- Pool price
- —
- Depth flag
- —
Before you sign
USDC on Arc has two representations: native 18-decimal for gas and the ERC-20 interface at 0x3600…0000 with 6 decimals. StockPools quotes and transfers strictly through the 6-decimal ERC-20 interface. Never mix the two — the scale difference is 1012.
Proof · onchain pool state
Markets and depth
Every row is read live with slot0() and balanceOf() on the pool contract. Depth is what determines your slippage, so it is published rather than summarised.
Total pooled across all markets, at block —
Markets with a live USDC pool on Arc
Pools holding under 5,000 USDC — treat as thin
| Market | Pool price | Stock reserve | USDC reserve | Fee | Pool | |
|---|---|---|---|---|---|---|
| Reading Arc RPC… | ||||||
Proof · address registry
Contract registry
Everything StockPools touches, with an explorer link for each. StockPools deployed none of these token contracts. They were deployed on Arc by issuer —. This site is a routing interface only: it makes no custody, redemption or share-ownership claim.
Infrastructure
Uniswap v3 + Circle predeploys| Contract | Address | Bytecode |
|---|
Token and pool addresses
12 markets| Market | Token | Pool | Fee |
|---|
Education · mechanics
How routing, fees and failures work
No abstraction layer. StockPools reads the same public contracts you can read, and hands your wallet the calldata for a standard Uniswap swap.
- You pick a market and amountStockPools calls quoteExactInputSingle on QuoterV2 with your exact size, the token pair and the pool's fee tier. The returned amount is what the pool would pay right now.
- ApprovalThe ERC-20 USDC interface must allow SwapRouter02 to move your USDC. If the allowance is short, the first signature is an approve; it only happens when needed.
- SwapThe second signature calls exactInputSingle on SwapRouter02, with amountOutMinimum set from your slippage tolerance. If the pool moves beyond that, the transaction reverts instead of filling you at a worse price.
- SettlementArc has sub-second blocks and BFT finality, so a confirmed transaction is final. StockPools shows the hash and links it to explorer.arc.io.
Fees and costs
- Pool fee (most markets)
- 1.00%
- Pool fee (CRCL deep pool)
- 0.30%
- StockPools interface fee
- 0.00%
- Gas token on Arc
- USDC
- Arc base fee
- 20 gwei, constant
Arc's base fee is denominated in native-USDC wei, so a typical swap costs a fraction of a cent in gas. The pool fee, not gas, is your main cost.
Failure modes
Too little received
The pool moved past your slippage tolerance between quote and execution. Re-quote, or raise tolerance if you accept the worse price.
Transfer amount exceeds allowance
The approval did not land or was for a smaller amount. StockPools will re-request it on the next attempt.
Wrong network
Your wallet is not on chain 5042. The swap panel offers an add/switch-network action; quotes keep working read-only in the meantime.
Insufficient balance for gas
On Arc, gas is paid in USDC. Keep a small USDC buffer beyond the swap amount.
Direct answers to the obvious objections
Is this a simulation or a real onchain swap?
Real. The quote comes from QuoterV2 at 0x7dfd4f31be6814d2906bde155c3e1b146eac1468 and the swap calls SwapRouter02 at 0x53bf6b0684ec7ef91e1387da3d1a1769bc5a6f77. You sign it in your own wallet and the hash opens on explorer.arc.io.
Did StockPools issue these tokens, and are they redeemable for real shares?
No. StockPools issued nothing. The tokens were deployed on Arc by an independent issuer, listed on Contracts. They are onchain tokens priced by pool liquidity — not brokerage shares — and this site makes no redemption or custody claim.
How much slippage should I expect?
It depends on depth, and depth is published per market on Markets. Most pools hold under 14,000 USDC, so a large order moves price sharply. The quote panel shows price impact for your exact size, and flags any pool under 5,000 USDC as thin.