Lesson 9: Expiry & Settlement on Hypercall (Platform Reality)
Promise : Know exactly what happens at expiry so you don't get surprised.
Hypercall Settlement Rules
On Hypercall, options are European-style and cash-settled :
European-style
Exercise only at expiry (not before)
Cash-settled
No asset delivery, cash difference paid
Automatic
No manual exercise required
Expiry Time
Mainnet SpaceX (SPCX) options expire at 4:00 PM ET on their expiry date. Testnet options currently expire at 08:00 UTC .
At expiry:
New orders are rejected
Open orders are cancelled
Positions enter the settlement process
You cannot trade "right at expiry." Once the contract expiry time hits, trading stops immediately.
💡 Plan to close positions before expiry if you don't want to go through settlement.
Instrument Lifecycle
Every instrument progresses through these states:
Active
Normal operation
Enabled
Expired Pending Price
Awaiting settlement price
Disabled
Settled
Settlement complete, positions removed
N/A
ACTIVE Trading enabled Normal operation EXPIRED_PENDING_PRICE Trading disabled Awaiting TWAP price SETTLED Position removed Settlement complete
Settlement Price: 30-Minute TWAP
The settlement price is NOT the spot price at the expiry timestamp. It's a 30-minute TWAP .
Price source
Hyperliquid Oracle (index price)
Window
30 minutes ending at expiry
The oracle samples price for the 30 minutes ending at expiry and computes the average. This prevents last-minute manipulation.
Settlement waits for the finalized TWAP. If the finalized oracle settlement price is not available at the exact expiry tick, the instrument remains in Expired Pending Price . Trading is already disabled and open orders are cancelled, but the cash credit or debit appears only after the retry path receives the finalized price.
"At expiry, the only thing that matters is intrinsic ."
Settlement Value Calculation
Settlement equals intrinsic value at the TWAP price:
Call Options:
Settlement Value = max ( 0 , S − K ) × Q \text{Settlement Value} = \max(0, S - K) \times Q Settlement Value = max ( 0 , S − K ) × Q
Put Options:
Settlement Value = max ( 0 , K − S ) × Q \text{Settlement Value} = \max(0, K - S) \times Q Settlement Value = max ( 0 , K − S ) × Q
Where:
S S S = Settlement price (30-min TWAP)
K K K = Strike price
Q Q Q = Position size (positive for long, negative for short)
Settlement Examples
Position
Settlement Price
Intrinsic
Result
Long 2 BTC-100000-C
$105,000
$5,000/contract
+$10,000 credited
Short 2 BTC-100000-C
$105,000
$5,000/contract
-$10,000 debited
Long 1 BTC-100000-P
$105,000
$0 (OTM)
Expires worthless
Long 1 BTC-110000-P
$105,000
$5,000
+$5,000 credited
Settlement Timeline
Settlement Timeline 30-MINUTE TWAP WINDOW 1 30 min before expiry TWAP sampling begins 2 Expiry time Trading stops Orders cancelled State → Expired 3 Shortly After Settlement processed Cash credited/debited Positions removed
What Happens to Your Position
1. Expiry hits
All open orders cancelled, no new orders accepted
2. Oracle finalizes TWAP
30-minute average calculated, settlement price established. This can complete after the exact expiry tick.
3. Settlement processed
Intrinsic value computed, cash credited/debited
4. Position removed
Position disappears from portfolio, WebSocket confirms
Common Mistakes
Thinking you can trade at expiry
Trading stops exactly at contract expiry. Plan to close before if needed.
Using spot price as settlement
Settlement uses 30-min TWAP, not the spot price at expiry.
Holding short ITM without margin buffer
Short ITM positions cost you money at settlement. Ensure sufficient margin.
Forgetting timezone conversion
Mainnet SPCX expires at 4:00 PM ET; testnet currently differs. Double-check.
Self-Check Test your understanding before moving on.
Q: What exact time do Hypercall options expire?
Show answer Q: What price is used for settlement?
Show answer Q: What happens to open orders at expiry?
Show answer 💡 Tip: Try answering each question yourself before revealing the answer.
See Also
Navigation: ← Lesson 8: Execution on Orderbook | Lesson 10: Margining Basics →