Moorline

Set the target and the stop. Walk away.

Moorline trades Robinhood Chain Stock Tokens with a take profit and a stop-loss on the same order, and checks every fill against Chainlink. Thin pools, stale pools and sandwiches get a revert, not your money.

Chainlink flooron every fill, in the contract
Bracketstake profit and stop-loss in one order
Stock to stockone transaction
No approveone signature, one trade

One order, two ways out.

Most swap pages can't even hold a limit. Moorline orders carry two prices: sell when the stock reaches your target, or cut it when it drops to your stop. Whichever comes first fills, and the other is gone.

Buying works the same way: buy the dip at one price, or the breakout at another. At the target the fill is never worse than your price; at the stop it fills inside your band of Chainlink.

Sell 2.5 NVDAtarget $230 · stop $205
Placed2.5 NVDA held by the contract, both prices armed
Mon 10:12
Chainlink $219.40, $224.85between the stop and the target: waiting
Tue
Chainlink $230.10the target is hit, the stop is cancelled with it
Wed 15:47
Sold at $230.22$574.98 USDG to your wallet, over the target
Wed 15:47
example orderkeeper fee $0.05 per fill

Your band around the real price.

A usual swap only checks the pool against itself: if the pool is already off, you fill off. Moorline reads Chainlink on chain and sets the minimum out from it, at the band you pick: 0.3%, 0.5%, 1% or 1.5%.

Pool inside the band: the trade fills. Pool outside: the whole transaction reverts and nothing moves.

Usual swap page
Buy NVDA with$1,000
Chainlink$217.07
Pool filled at$224.10
You got4.462 NVDA
Worth at Chainlink$968.60
Filled 3.2% off
Moorline, 0.5% band
Buy NVDA with$1,000
Chainlink$217.07
Pool offered$224.10
Floor from Chainlink4.583 NVDA
Your $1,000untouched
Reverted
same pool, same moment, example numbersband = your setting

Limits that fill at your price or better.

Place a buy under the market or a sell above it. The funds wait in the contract, not with a bot. When Chainlink reaches your price, a keeper fills it on the pool, and the contract checks the fill is no worse than your limit.

If the pool can't meet the limit yet, the order simply waits. Cancel any time, everything comes back.

Buy NVDAlimit $195.00 · $500 USDG
Placed$500 USDG locked in the contract
Mon 14:02
WaitingChainlink $217.07, $206.40, $199.85
Tue
Chainlink $194.80at the limit: the keeper fills it
Wed 16:31
Filled at $194.712.562 NVDA to your wallet, under the limit
Wed 16:31
example orderkeeper fee $0.05 per fill

TSLA to NVDA in one go.

On a usual swap page, rotating from one stock to another is two swaps through USDG, two approvals and twice the waiting. Moorline sells and buys in the same transaction, both legs checked against Chainlink, the fee taken once.

Usual swap page

Approve TSLA
Swap TSLA to USDG
Approve USDG
Swap USDG to NVDA
4 transactions

Moorline

Sign once
TSLA to NVDAsell · USDG · buy, one tx
1 transaction

One signature instead of an approval.

USDG and the Stock Tokens support permit. Moorline takes the allowance as a signature inside the trade, for exactly the amount you trade, so the first trade of any token is one transaction and nothing is left approved forever.

Usual first trade
2 tx · unlimited approval
Moorline
1 tx · exact amount

Pool vs Chainlink, right now.

How far each Stock Token's deepest pool sits from its Chainlink price. Anything outside your band, Moorline won't fill.

StockChainlink24hPoolGap
Loading…

What the usual swap leaves out.

Usual swap pageMoorline
Price protectionslippage vs the pool itselffloor vs Chainlink, on chain
Thin or stale poolfills at whatever it givesreverts
Limit ordersnoneon chain, never worse than the limit
Take profit + stop-lossnoneone order, whichever comes first
Stock to stocktwo swaps through USDGone transaction
First trade of a tokenapprove, then swapone signature, one swap
Chartelsewherecandles with Chainlink and your orders on it

Questions.

Where does the liquidity come from?

The Stock Tokens' own Uniswap v3 pools on Robinhood Chain. Moorline routes through them and checks every fill against Chainlink.

What if markets are closed?

Stock feeds pause between sessions. The floor uses the last Chainlink price, so a pool that runs away over the weekend is refused.

What does it cost?

0.1% of the USDG side, plus the pool fee and gas. Orders add $0.05 for the keeper that fills them.

Is it audited?

No. The router is small and public, but unaudited. Size accordingly.