Earn upfront premium.
In USDC.
Pick a strike and expiry. Lock USDC collateral and receive your premium immediately.
Your maximum loss is fixed before you trade.
- 01request a quoteblack-scholes priced against live pyth spot, valid for 20 seconds
- 02the desk signs itthe contract verifies that signature on-chain before anything moves
- 03collateral locks, premium landspreconfirmed in ~200ms on giwa flashblocks — fast enough for short-lived quotes
- 04expiry settles itselfpyth fixes the price at expiry; claiming later never changes the outcome
which pyth price settles my option?+
the first btc/usd price pyth publishes at or after your expiry timestamp. this is enforced by pyth's parsePriceFeedUpdatesUnique — neither you nor the desk can pick a different tick, and settling later never changes the outcome.
does any btc ever change hands?+
no. positions are cash-settled: at expiry the price difference is paid in usdc out of the locked collateral. btc is only the reference price.
what if the oracle is late or down?+
settlement can be triggered any time after expiry using pyth's archived data, and the price is still the first tick after expiry — so waiting costs nothing. as a documented mvp escape hatch, the owner can settle manually only after a 3-day delay.
can i close a position early?+
not in this mvp — positions run to expiry. your maximum loss is fixed the moment you open, so there is nothing to manage in between.
how is the desk's price set?+
a black-scholes engine prices each quote from live pyth spot; the desk bids below fair value (its spread), which is shown on the ticket. every quote is eip-712 signed, verified on-chain, single-use, and expires in 20 seconds — giwa's ~200ms preconfirmations make that short window practical.
can my quote be front-run?+
no. giwa has no public mempool — only the sequencer sees pending transactions, so a signed quote cannot be seen and traded against before it lands.
what if the desk goes offline?+
open positions are untouched — collateral sits in the contract and settlement only needs the oracle. you just can't open new positions until quoting resumes.