Tokenized equity arbitrage/Robinhood Chain · 4663
Find the spread.Complete the cycle.
Discover price differences across tokenized-stock pools, simulate routes, and execute supported arbitrage cycles in one transaction.
Scanning and simulation run on live mainnet pool data. On-chain execution is not enabled: the executor contract has not been deployed to a public network.
- 01Discover
- 02Quote
- 03Simulate
- 04Execute
- 05Settle
01 — How it works
Five stages. One transaction.
Scroll to take the planet apart. Its bands become market lanes, two real pools of one stock — named in the drawing, at their live prices — disagree, a route is drawn between them, and the loop closes. Or it does not happen at all.
01 / 05
Discover
The canonical Uniswap V2 and V3 factories are asked for every verified Stock Token against USDG and WETH, in every enabled fee tier. Pools between two stocks come from factory events and are re-checked against the factory. One stock, several pools — each keeping its own price.
factory.getPool · factory.getPair · PoolCreated
02 / 05
Quote
All pool state is read at a single block, normalised for token order and decimals, and compared only within the same verified asset. A gap between two spot prices is a signal, not a result: the candidates go to the on-chain quoter, which walks the real ticks and returns amounts with pool fees and price impact already inside.
one source block · QuoterV2 · exact integer math
03 / 05
Simulate
The exact executor call — same route, same amount, same minimum — is run as an eth_call against current state before any signature is requested, and again immediately before signing. A simulation that passes is an estimate at one block. It is never shown as a completed trade.
eth_call of the real calldata · quote expiry · re-check before signing
04 / 05
Execute
The first pool releases its output before it is paid. Inside that authenticated callback the remaining swaps run with exactly what was received, and the first pool is repaid to the unit. You supply no tokens and grant no allowance — only gas. If any step falls short, the whole transaction reverts, and a reverted transaction still costs gas.
flash swap · callback bound to one pool + one payload · atomic
05 / 05
Settle
Profit is whatever the settlement-token balance actually grew by — never a figure a pool reported. The protocol share of positive profit is split off, your minimum is enforced after that share, and the rest goes to the address that signed. Success appears only after a confirmed receipt.
balance delta · min profit · CycleExecuted event
02 — Markets, read from the chain
The same stock, priced in several places at once.
A tokenized stock can trade against USDG and against WETH, in several fee tiers, on V2 and V3. Each pool keeps its own price. VolveStock reads all of them at one block and shows where they disagree.
Stock Tokens in registry
—
issuer registry, beacon-verified
Stocks with a live pool
—
active liquidity at this block
Canonical pools found
—
— V3 · — V2
Depth-verified pools
—
— flagged hollow
Indicative on-chain pool prices. Raw spread is the gap between the cheapest and dearest verified pool — it is not profit.
03 — The desk
Scanner. Router. Executor.
Three programs, each with one job and a hard edge where it hands over to the next. Drag the windows around — they spring back. The clock, the head block and the spread board are live; the rest describes what each program does and what it refuses to do.
flash arbitrage desk
<same token, several pools>
uniswap v2uniswap v3usdgwethchain 4663
Widest raw spreads between a stock's own pools
reading pools …
Raw spread = dearest ÷ cheapest verified pool − 1, before price impact and fees. It is not profit.
Scanner
Open the market table →- reads
- factory.getPool · getPair · PoolCreated, then slot0 / liquidity / reserves in batches
- checks
- pool membership against the factory; token identity against the issuer beacon
- reports
- price, fee tier, +1 % depth, comparable spread, source block, last good update
- refuses
- to compare different issuers, or mix quote currencies without a same-block reference
Router
Scan routes →- searches
- 2–4 hops · same chain · supported assets only · bounded budget · no pool twice
- quotes
- QuoterV2 per hop through initialized ticks — price impact and pool fees already inside
- reports
- borrowed amount, repayment, cycle profit, protocol fee, gas, net result, block, expiry
- refuses
- to call a spot gap a profit, or a route net-positive when gas cannot be valued
Executor
Read the mechanics →- accepts
- V2 and V3 flash-swap cycles over canonical pools and allow-listed tokens
- enforces
- deadline · min profit after fee · exact repayment · callback bound to one pool + payload
- pays
- the caller only, in the settlement token, from the measured balance delta
- refuses
- arbitrary calldata, foreign recipients, fee-on-transfer tokens, unsolicited callbacks
--:--:-- UTC
reading head block …
Band
sequencer
Version 0.1
Not deployed. Not audited.
Reads Robinhood Chain.
04 — One transaction, or many
The same gap, closed two ways.
On the left, the engine's real answer for the best-ranked cycle at the latest scanned block — usually “nothing qualifies”. On the right, the same live route done by hand: its capital and its transaction count.
Live engine output for the best-ranked cycle at that block. A quote is an estimate; a reverted transaction still costs gas.
The same live route done by hand: capital and transaction count come from the quote on the left; no gas or price figure is invented. Both paths compete with other traders.
05 — Costs, stated once
You pay gas. The protocol takes a share of profit, and only of profit.
Protocol fee
10%
of positive cycle profit
Fixed in the contract at deployment and capped at 10% by an immutable constant, leaving 90% to the address that signed — before that address's own gas. Never charged on trade size. A cycle that reverts pays no protocol fee. The app shows the value read from the deployed contract; until one is deployed it shows this proposed value, labelled as such.
Pool fees
0.01–1%
per hop, set by each pool
Every Uniswap pool keeps its own fee from the swap. Quoter outputs already have them taken out, so they are never subtracted a second time in any figure you see.
Gas
ETH
paid by the sender
Estimated from the actual call before you sign and converted to the settlement token through the deepest WETH/USDG pool at the same block. Your on-chain minimum-profit threshold cannot see gas, so set it above the estimate. A reverted transaction still costs gas.
- A
- Raw price spread
- Gap between spot prices of two pools. A signal, never a result — it ignores price impact.
- B
- Simulated cycle profit
- Quoter output for one amount through specific pools, minus the amount borrowed. Pool fees and price impact are already inside it.
- C
- Estimated net result
- Cycle profit minus the protocol share and the estimated gas, valued in the settlement token. If gas cannot be valued, no route is called net-positive.
06 — Token
One address, published once, read from the chain.
Token
$VOLVE
The contract address has not been announced. Any address you see elsewhere claiming to be $VOLVE is not from this project. When it is published it will appear here and on X at the same time.
Read from the chain
- Name
- —
- Symbol
- —
- Decimals
- —
- Total supply
- —
- Uniswap V2 / V3 pools
- —
Nothing is shown until there is a contract to read. No supply schedule, utility or price statement is made about $VOLVE on this site.
@VolveStockDoes VolveStock guarantee a profit?
No. A simulation is an estimate made at one block. Blocks arrive roughly ten times a second, other traders see the same pools, and a route that qualified a moment ago may not qualify at inclusion. A cycle that no longer pays reverts — you keep your principal because you never supplied any, but you still pay gas for the reverted transaction.
What is the difference between spread, cycle profit and net result?
Raw spread is the gap between two spot prices; it ignores price impact and cannot be traded at size. Simulated cycle profit is what the on-chain quoter returns for a specific amount through specific pools, with pool fees and price impact already inside. Estimated net result subtracts the protocol share and the estimated gas cost. Only the last one tells you whether a route is worth sending.
Do I need to deposit or approve tokens?
No. A cycle is funded by a flash swap: the first pool releases its output before it is paid and is repaid inside the same transaction. You connect a wallet, pay gas in ETH and receive any profit in the settlement token. There is no allowance to grant and nothing to withdraw later.
Where do the prices come from?
Directly from Uniswap V2 and V3 pool contracts on Robinhood Chain, read at a single block. They are indicative on-chain pool prices. They are not an official stock-market feed and they are not an oracle suitable for valuing collateral.
Why does the scanner so often say “No qualifying route”?
Because that is usually the truth. These pools are watched by other arbitrageurs, and after pool fees, the protocol share and gas, most gaps are not worth a transaction. VolveStock reports that result as it is instead of decorating the page with opportunities that do not exist.
Is the executor contract audited?
No. It has an extensive local and mainnet-fork test suite, but passing tests are not an independent audit. The deployment and review status is stated in the documentation and updated only when it actually changes.
What is the $VOLVE contract address?
The only authoritative address is the one in the Token section of this site, which is validated on-chain before it is shown, and the one posted by the project’s X account (@VolveStock). While that section says “CA: Soon”, no address has been announced and any address shown elsewhere is not from this project. No supply, utility or price statement is made about the token here.
Is VolveStock affiliated with Robinhood?
No. VolveStock is independent. It reads public contracts on a public chain and the public Stock Token registry. “Robinhood” is used only to name the network and the tokens.