Trade after the bell.
Limit orders on tokenized US stocks, priced against the last official close. They only live while Wall Street sleeps, and expire at the opening bell.
Reading the market clock
From the closing bell to the opening bell.
An order lives for exactly one closed-market window. The times below are New York time.
-
4:00 pm
New York time
The bell rings. We record the official close for every listed stock.
-
Overnight
Nights, weekends and US holidays
You set a price relative to that close. A keeper fills your order on Base the moment the pool reaches it.
-
9:30 am
New York time
Not filled by the opening bell? The order dies on its own. Nothing to cancel.
What's under the hood.
Lastprint is a thin layer over public pieces on Base. Here is the path one order takes, and what each piece is there for.
-
1
Your wallet
Approves exactly the order amount and signs the order offchain (EIP-712). Your money stays in your wallet.
-
2
Lastprint keeper
Holds the last official close, follows the NYSE calendar and asks the pool for a price every 5 seconds.
-
3
ActionFeed
The brake. If a split or dividend adjustment is about to land, the fill is refused.
-
4
Lastprint contract
Checks your signature, the time window and your minimum, then pulls the funds and swaps in one transaction.
-
5
Aerodrome pool
Where the trade happens. The stock token lands straight in your wallet, or the whole thing reverts.
The parts, and what each one does
- Base
- The chain everything runs on. Blocks every two seconds and cents of gas make an overnight limit order practical.
- base.org
- Coinbase stock tokens (B20)
- The asset you buy or sell, such as NVDAc. Each token carries a multiplier that changes on splits and dividends.
- NVDAc on Basescan
- LastprintOrders
- Our contract. Verifies and fills signed orders. No owner, no admin key, no fees, holds no funds between fills.
- Contract on Basescan
- Aerodrome Slipstream
- The liquidity. The keeper reads prices from its MetaQuoter, and the contract swaps only through its SwapRouter, the single router allowed at deployment.
- SwapRouter on Basescan
- ActionFeed
- Corporate-action guard. Every fill calls it to confirm no multiplier change is due within a day, and that the order was signed against the current multiplier.
- ActionFeed on Basescan
- Keeper
- Watches the pools and sends the fill when your price is reached. Open source, and filling is permissionless: anyone can run one with the same guarantees.
- Code on GitHub
- Yahoo Finance and Nasdaq.com
- Where the last official close comes from. Yahoo's chart data first, Nasdaq.com as the fallback, with the session date shown next to every price.
- NYSE calendar
- Trading hours, holidays and early closes for 2026 and 2027. It decides when an order is born and when it dies.
- NYSE hours
- DexScreener
- Pool depth on the board, for display only. It never touches an order.
Not used: a price oracle. Your limit becomes an exact minimum amount when you sign, so the contract never has to trust a price feed. Lastprint is independent and not affiliated with any of the projects above.
Tonight's board
Last official close against the live Base price.
| Stock | Last close | Base price | Gap | Pool depth |
|---|---|---|---|---|
Pick a stock to load it into the order ticket.
Set your price.
- Your funds stay in your wallet. The contract pulls them only at the moment of the fill, and only for the order you signed.
- Bound to the stock's multiplier. ActionFeed tracks splits and dividends, so an order signed against one multiplier never fills against another.
- Gone at the opening bell. Once New York opens, the order can no longer fill.
Order ticket
On BaseMy orders
Connect a wallet to see your orders.
Already filled on Base mainnet.
- orders signed
- fills onchain
- volume (USD)
- makers
The first fill
Bought NVDAc with 5 USDC. Limit $170.00 against close $166.19. Filled while the market was shut.
Fair questions
Why only when the market is closed?
Because that is when the close means something. While New York trades, the stock has a live exchange price and yesterday's close is stale. Between the closing bell and the next opening bell, the last official close is the one fixed reference, and the tokens keep trading on Base. An order is valid only inside that window, and the contract checks the window on every fill.
What is the last close, and where does it come from?
It is the official closing price of the regular US session for each stock. Lastprint reads it from the Yahoo Finance chart API, with the Nasdaq.com historical API as the fallback, and shows the source and session date next to every price. Both are free, unofficial endpoints, so the close is shown for reference. What binds is the minimum amount written into the order you sign.
What happens on a split or dividend?
Tokenized stocks carry a multiplier that changes on splits and dividend adjustments. Every order is bound to the multiplier you saw when you signed it. ActionFeed pauses fills when a corporate action is pending or the issuer has paused transfers, so an order signed against one multiplier never fills against another.
Who holds my money?
Nobody. Your tokens stay in your wallet until the fill. At fill time the contract pulls exactly the amount you approved, swaps it through an allowlisted router and sends the result straight to you. The contract has no owner, no admin and no stored funds.
What does it cost?
Lastprint charges no fee. You pay gas once, for the approval. Signing an order is free, and the keeper pays the gas for the fill. Cancelling in the app is free too; the optional onchain cancel is a transaction and costs gas.
Can I use Lastprint from the United States?
No. Lastprint is not available to US persons or in the US and its territories. Orders from US locations are refused, and the order ticket stays read-only there. You can still browse closes and Base prices.