Batch settlement for tokenized stocks on Robinhood Chain, built for the 74% of trades that happen while NYSE is closed. One clearing price, and a verifiable venue baseline on every fill.




Nokturn is intent based batch settlement for tokenized equities on Robinhood Chain.
The problem
In August 2026, 74.1% of the 8.58 million stock token trades on Robinhood Chain happened while NYSE was closed, and 33.2% on weekends. In those hours there is no official reference price, and the Chainlink feeds freeze for 48 to 56 hours every weekend. Off-hours execution is not worse on average. It is worse in the tail. p99 price movement between trades was 1,779 bps off-hours against 209 bps in the open session.
What Nokturn does
- Users sign intents with Permit2, without gas. Nothing leaves the wallet until the batch clears.
- Intents are batched over a window sized to the market session. 10 seconds while NYSE is open, 30 in pre-market and after-hours, 45 overnight, 60 on weekends.
- Opposite sides are matched directly at one clearing price. Only the residual is routed to Uniswap V3.
- Every fill is published on chain next to the venue baseline computed from pool state at the same block, so anyone can recompute it.
- A batch that cannot beat the venue settles at the venue price and charges no fee.
What makes it different
Execution parameters (batch length, price band, exposure caps and the price source) change with the real market session, including holidays, early closes and the weekend feed freeze. On weekends the oracle moves to a 30 minute pool TWAP with a 1,500 bps drift cap. The settlement core is immutable with no proxy, and no key can move user funds.
Try it
- Testnet app, with an in-app faucet. https://app.testnet.nokturn.xyz/trade
- Mainnet app. https://app.nokturn.xyz
- Code. https://github.com/wngstnr-code/nokturn
- Market data. https://dune.com/passchick/nokturn-robinhood-chain-equity-market-structure-august-2026
Status, stated plainly
Contracts are deployed on Robinhood Chain mainnet and verified on Sourcify, with live Chainlink pricing for NVDA, AAPL, TSLA, GOOGL and GME. No solver is bonded on mainnet yet, so no batch has settled there. The full flow runs on testnet with test tokens, and routed and netted batches have settled there from the app. Netting figures we quote (27 to 33% at a realistic early share of flow) are a backtest over real August 2026 trades.
Before the event (August to early September 2026). Research only, no code. We measured the market with our own Dune queries, published them as a public dashboard, and dropped several ideas that the data did not support.
14 September. Implementation started, with CI gates from the first commit (static analysis, coverage, gas snapshot, invariant tests).
Smart contracts. Settlement, SessionManager, ClearingVerifier, PriceOracle, SolverRegistry, AuctionHouse, ClosingPrintFeed, AgentMandate and a factory agnostic UniswapV3Adapter. 431 tests on every push. Nightly fork tests against mainnet pools, Halmos proofs of the clearing and rounding math, Echidna, and differential tests against a Rust verifier.
Backend. Intent coordinator API, reference solver, auction keeper, event indexer into PostgreSQL that serves batch receipts, and a price mirror for testnet.
Frontend. Landing page and trading app with live sessions, batch receipts, auctions, the allowlist and an in-app faucet.
29 September. Contracts deployed to Robinhood Chain mainnet and verified on Sourcify.
1 October. Price feeds executed through the 48 hour time-lock. The mainnet oracle has priced all five stock tokens and USDG since then.
3 October. Full testnet deployment with test tokens, pools whose liquidity is copied from mainnet, and prices mirrored from mainnet Chainlink. Solver and keeper went live, and the first routed and netted batches settled from the app.
4 October. In-app faucet for judges, English documentation, and a published threat model with thirteen residual risks.
Not raised and not currently raising. The team has built Nokturn without outside funding. There is no token, no points and no airdrop, and none is planned. Distribution and the reasoning behind that decision are in the repository docs. We are open to milestone based grants, including the Arbitrum Foundation grant track, to fund a mainnet solver bond, a third party audit and the v1.1 venue adapters.