Lull

Concepts

Lulls

What a lull is, how the calendar comes from Pyth's market-hours schedule, and the phases each lull goes through.

Sessions and lulls#

A session is the regular trading day of the underlying stock. For AAPL it runs from 09:30 to 16:00 ET, Monday to Friday, except on market holidays and early closes. A lull is the interval from one session's close to the next session's open. Every order placed in a lull crosses at that one open.

Loading the schedule…

The lull week of AAPLx/USDC in New York time, built from the Pyth market-hours schedule of Equity.US.AAPL/USD. Monday is at the top and the week runs clockwise.

Kinds of lull#

KindStartsEnds
Overnighta weekday closethe next weekday's open
WeekendFriday's closeMonday's open
Holidaythe close before one or more market holidaysthe first open after them

A lull that spans a market holiday is a holiday lull, even when it also spans a weekend.

On an early close, the session ends before 16:00 ET and the lull starts at that earlier close. The day after Thanksgiving, for example, closes at 13:00 ET. The lull clock marks holidays and early closes.

Where the calendar comes from#

Pyth publishes a market-hours schedule with each equity feed. Lull builds its calendar from the schedule of Equity.US.AAPL/USD, the same feed that supplies Popen. The schedule is one string: a time zone, the weekly hours from Monday to Sunday, and dated overrides. In shortened form it looks like this:

America/New_York;0930-1600,0930-1600,0930-1600,0930-1600,0930-1600,C,C;1126/C,1127/0930-1300

C means closed. An override such as 1126/C closes a holiday, and 1127/0930-1300 sets an early close.

All times are wall-clock times in New York, so the calendar follows daylight saving time. The open is 09:30 ET all year. In UTC it is 13:30 in summer and 14:30 in winter.

Each lull is published on chain with four times: close, reveal start, reveal end and open. The program cannot read Pyth's schedule itself. It enforces close < reveal start < reveal end ≤ open, and it accepts a new lull only before that lull's reveal window starts.

Phases#

Loading the current lull…

The current lull of AAPLx/USDC from the Lull API, in New York time. The top bar is the whole lull to scale. The bottom bar enlarges the reveal window and the open.
PhaseWhenWhat you can do
Scheduledon the calendar, not yet on chainsee the countdown
Commitfrom publication until the reveal windowseal orders
Revealopen − 30 min to open − 1 min by defaultreveal sealed orders
Sealedreveal end to open + delay (30 s by default)wait; unrevealed tickets are forfeited
Pricingopen + delay until Popen is capturedwait
CrossingPopen is known and the book is crossingwait
Settledthe cross is finalsee fills, claim, withdraw
Cancelledno valid price in time, or cancelled by the market authority before pricingclaim refunds

Deposits and withdrawals of free balance work in every phase.

A lull goes on chain shortly before the close that starts it. From then until its reveal window opens, the "Order ticket" accepts sealed orders for it. While the market is open, the lull clock counts down to the next lull.

The program checks every window against Solana's clock, which can differ slightly from your device's clock. Leave a margin at the edges of each window.

See Popen for pricing and cancellation, and Sealed orders for what happens in the commit and reveal phases.

Connect a wallet

No Solana wallet was found in this browser. Install one, then reload this page.

Lull asks the wallet to sign each transaction. Hardware wallets that connect over USB are not offered.