Why one settlement moment a day¶
In one paragraph
Every PUTGO protection settles at the same daily moment: 12:00 UTC, the same for all markets. Expiry is the first settlement time after 7 full days from purchase, so the actual protection period is between 7 and 8 days. At that moment each market reads its own official price once, and every protection expiring that day is judged by the same price: at or below the floor means delivery, above means release. How the price moved during the week, and whether it touched the floor, does not count. Both purchase and settlement require the official price to be fresh: a stale price at purchase means refusal, an unavailable price at settlement means deferral, and a deferral that lasts too long means void and refund. This page explains why the rules are this way and what they mean for you. The rules themselves are on How settlement works; parameter values are on Markets and parameters.
How expiry is aligned¶
The tenor is 7 days, but expiry is not "exactly 7 days after purchase". It is:
That is, count 7 full days first, then look forward to the nearest daily settlement time. Buy on Monday at 10:00 UTC: 7 full days end next Monday at 10:00, and the first settlement time after that is next Monday 12:00 UTC. Buy on Monday at 14:00 UTC: 7 full days end next Monday at 14:00, that day's 12:00 has already passed, so expiry is next Tuesday 12:00 UTC. The actual protection period is therefore between 7 and 8 days, and the page shows the exact expiry time, not "7 days".
The boundary case in which 7 full days end exactly at 12:00 UTC (settle that day, or the next) is not yet decided.
Why not let every protection expire at its own purchase time? Because then every protection would need its own settlement price: two protections bought one minute apart would settle at two different prices, and a few minutes' difference would give buyers expiring on the same day different outcomes. Aligning all expiries to one moment means one price for every protection in a market expiring that day; the outcome does not depend on who came first, and nobody can pick a moment to get a better price.
The rate is charged per protection, regardless of whether the actual period is 7 or 8 days. The extra fraction of a day of protection is not charged for, and the Money Pool is not paid extra for it.
One moment, one price¶
12:00 UTC is a global parameter shared by all markets. At that moment each market reads its own official price once: the NVDA market reads the NVDA price, the UNI market reads the UNI price. That single price decides every protection in the market expiring that day:
Official price ≤ floor → delivery
Official price > floor → release
A price exactly at the floor counts as delivery. The decision looks only at this one price and the floor written into the position; both are numbers onchain that anyone can verify. Settlement is triggered by a transaction, and the sender cannot choose the outcome: given the same price and the same floor there is only one result. Once settled, the result is final; triggering it again changes nothing.
Why look only at the price at the settlement time, and not at the intraday low? For three reasons.
The definition of the protection is "a price floor at expiry". What you bought is "at the moment of expiry, I can sell at no less than the floor". It is not a stop-loss order and it is not protection that "triggers once touched". If the price falls through the floor on Tuesday and is back above it when the protection expires next Monday, your asset is returned as it is, because at expiry it is worth more than the floor. You have not lost anything; there was simply no delivery.
The intraday price is not a number but a line. Whether the price "touched the floor" depends on how often the price feed updates, which trade it uses, and whether there was a brief erroneous print. A single anomalous print for one instant could trigger every protection with a floor nearby, and the Money Pool would have to pay real money at the floor for it. Looking at one price at one agreed moment turns "what is the price" into a question that can be agreed in advance and verified afterwards.
Cost. Protection that looks at the price once at expiry is the cheapest kind; protection that takes effect as soon as the floor is touched costs much more, because it gives the buyer many more chances. PUTGO chooses the former and states the rule plainly: the floor protects the moment of expiry, not every moment of the protection period.
flowchart TD
T["12:00 UTC: read the market's official price"] --> Q{Price fresh and available?}
Q -->|Yes| C{Official price ≤ floor?}
C -->|Yes| D["Delivery: the pool pays USDG at the floor, the asset goes to the pool"]
C -->|No| R["Release: the asset goes back to the buyer, or auto-renews"]
Q -->|No| P["Deferral: to the next settlement time with a price; protection stays in force"]
P -->|Deferred beyond the limit / chain halt| V["Void: asset returned, unreleased premium refunded"]
The official price and freshness¶
Each market has one official onchain price feed. Purchases use its latest value; settlement uses its value at 12:00 UTC. Which price feed will be used on mainnet is not yet decided; whichever it is, the rule is the same: only the value it records at the agreed moment counts, and PUTGO uses no offchain quotes.
At purchase, the price must have been updated within the required freshness window (the value is on Markets and parameters), or the purchase is refused. The reason is direct: the floor is computed from the purchase price. If the feed has not updated for hours while the market has already fallen 10%, a floor computed from the old price could sit above the true current price, and the Money Pool would reserve at that floor and carry the delivery. Refusing is better than carrying that risk. You can never buy protection whose floor is at or above the current price.
At settlement the price must be fresh as well. If the price is unavailable or stale at the settlement time, the market's batch for that day is not forced through at an old price; it is deferred.
Prices on the testnet
The testnet has no official price feed. The PUTGO team runs an automated price updater that writes the mainnet TSLA/USD price into the testnet feed about every 2 minutes, so the testnet price is live even when the US stock market is closed and shows the last mainnet price. See the Testnet guide.
Deferral and void¶
Deferral: when the official price is unavailable or stale at the settlement time, the market's batch for that day is postponed to the next settlement time at which a price is available. Meanwhile:
- expiring protection stays in force and the floor is unchanged;
- premium keeps releasing to the Money Pool second by second;
- the reserved USDG stays reserved;
- the buyer can still exit early.
Deferral is not a repricing; the same protection waits for a usable price. At the settlement time it is deferred to, the official price of that moment decides, and the delivery and release rules are unchanged.
Void: when a deferral exceeds the allowed limit (see Markets and parameters), the chain halts, or governance declares it under the incident procedure, the batch is voided, and for every protection in the batch:
- the protected amount of the asset is returned to the buyer as it is;
- of the part of the premium that goes to the pool, the portion not yet released is refunded to the buyer in proportion to the remaining time, and the released portion stays with depositors;
- the protocol share is not refunded;
- the reserved USDG is freed back to the pool;
- there is no auto-renew.
The refund is linear in time: refund = pool premium × remaining seconds ÷ total seconds, rounded down, where the remaining seconds run from the moment of voiding to the original expiry. In words: depositors keep the premium in proportion to how long the protection was in force, and the part that was not in force goes back to the buyer.
Why return the asset on void, rather than settle at the last available price? Because the last available price may be days old, and settling at it would decide for one side on days when there was no price. Returning the asset and refunding the unused premium is the only approach that does not require guessing a price. The buyer loses the protection for that period (already paid for in proportion to time), and depositors lose a possible delivery (already paid for in proportion to time).
Delivery and release¶
Delivery (official price at or below the floor):
- the pool pays the protection's reserved USDG to the buyer at the floor, and the buyer claims it;
- the protected amount of the asset goes to the pool and is credited to depositors by share;
- the USDG in the pool decreases by exactly the reserved amount.
Release (official price above the floor):
- the protected amount of the asset is returned to the buyer, or auto-renews if so set;
- the reserved USDG is freed back to the pool's unreserved part.
Neither branch charges a delivery fee or any other fee. The premium finishes releasing exactly at expiry.
Delivery is physical: the buyer hands over the asset and receives USDG, rather than receiving the difference "floor minus market price". This means settlement needs no second conversion onchain, and the Money Pool receives the asset itself, which each depositor then handles as they see fit. The Money Pool's money flows are on Money Pool economics.
Auto-renew happens on the release branch: the returned asset takes the official price of that settlement time as its new purchase price (which is fresh by construction), immediately buys a new protection at the floor ratio and rate of that moment, pays a premium again, and its expiry counts from that settlement time. USDG received through delivery is never renewed; when the pool lacks capacity, the market is paused or the batch is voided, nothing is renewed and the asset becomes claimable. Every renewal is a new protection and a new premium.
Time zones and trading hours¶
12:00 UTC does not move with daylight saving time; the corresponding local time in your zone does. For a few common zones:
| Zone | 12:00 UTC corresponds to |
|---|---|
| New York | 08:00 (daylight time) / 07:00 (standard time) |
| London | 13:00 (summer time) / 12:00 (winter time) |
| Beijing, Hong Kong, Singapore | 20:00 |
| Tokyo | 21:00 |
NVDA and UNI are two different kinds of asset. UNI has a price around the clock. NVDA is a tokenized stock whose price ultimately comes from the US stock market, and 12:00 UTC is before the regular US trading session (09:30 to 16:00 New York time) begins. What settlement reads is the value the official price feed carries at that moment: that depends on how the feed updates outside the session (a continuous extended-hours price, or the last traded price), and the mainnet feed is not yet decided. What does not change is the rule: settlement looks only at the feed's value at 12:00 UTC, not at the exchange's opening price and not at the previous close, unless the feed itself carries that value at that moment.
There is also a regularity that follows from the 7-day tenor: expiry falls on the same weekday as purchase, or one day later. Buy on Wednesday before 12:00 and expire next Wednesday; buy on Wednesday after 12:00 and expire next Thursday. Protection bought on a Saturday expires on a Saturday or Sunday, when the stock market is closed. If the feed does not update on weekends, the price at the settlement time is not fresh and the batch is deferred to the next settlement time with a price, usually the next trading day; if the feed keeps carrying a fresh last price through the weekend, settlement goes ahead as normal. The same holds at purchase: while the feed has stopped updating, the freshness rule refuses purchases until it resumes. The product page shows when the price was last updated and your exact expiry time; a glance at those two numbers before buying is enough.
Worked examples¶
All figures are illustrative and follow the NVDA example on the Protect page: price 220 USDG, floor 209 USDG, protected amount 9.92 NVDA, premium 0.08 NVDA of which 0.072 NVDA goes to the pool, reserve 2,073.28 USDG.
Expiry alignment. Buy on Tuesday at 09:00 UTC: 7 full days end next Tuesday at 09:00, expiry is next Tuesday 12:00 UTC, a protection period of 7 days and 3 hours. Buy on Tuesday at 15:00 UTC: expiry is next Wednesday 12:00 UTC, a period of 7 days and 21 hours. Both pay the same premium.
Only the expiry price counts. On Thursday the price falls to 190, below the 209 floor, but the official price at the settlement time is 231: release, and you get 9.92 NVDA back. The other way round: the price stays above 240 all week, drops sharply on the morning of expiry, and the official price at 12:00 UTC is 198: delivery, and you get 2,073.28 USDG.
Exactly at the floor. Official price at 12:00 UTC is 209.0000: delivery, and you get 2,073.28 USDG, the same as at 198.
Deferral. At 12:00 UTC on the expiry day the feed has no fresh price and the batch is deferred. At 12:00 UTC the next day the price is 205: delivery at the original floor of 209, and you get 2,073.28 USDG. During the deferred day the protection stayed in force and premium kept releasing.
Void. The protection is voided on day 3 of an intended 7 (whole days for simplicity; 4 remain): refund = 0.072 × 4 ÷ 7 ≈ 0.0411 NVDA, rounded down. The buyer gets 9.92 + 0.0411 NVDA back, depositors keep the released part of about 0.0309 NVDA, the protocol share of 0.008 NVDA is not refunded, and the reserved 2,073.28 USDG is freed back to the pool.
Auto-renew. With renewal on and an official price of 231 at expiry: the 9.92 NVDA buys a new protection with 231 as the new purchase price, a new floor of 219.45 USDG (231 × 95%), a premium taken again at the rate of that moment, and an expiry at the first 12:00 UTC after 7 full days from that settlement time.
Key takeaways¶
- All markets settle at 12:00 UTC every day; expiry = the first settlement time after 7 full days from purchase, so the actual period is 7 to 8 days and the page shows the exact expiry time. The boundary case where 7 full days end exactly at the settlement time is not yet decided.
- Each market reads its official price once a day; all protection expiring that day settles at the same price, the outcome is decided by that price and the floor alone, and whoever triggers settlement cannot choose it.
- Only the official price at expiry counts: at or below the floor means delivery, above means release. Touching the floor during the week does not count. The floor protects the moment of expiry, not every moment of the protection period.
- A stale price at purchase means refusal; an unavailable price at settlement means deferral with protection staying in force; a deferral beyond the limit or a chain halt means void, with the asset returned, the unreleased premium refunded in proportion to time, and the protocol share kept.
- Delivery is physical: the buyer receives the reserved USDG at the floor, and the asset goes to the pool and is credited to depositors by share. Neither branch charges any extra fee.
- 12:00 UTC does not move with daylight saving time; expiry falls on the same weekday as purchase or one day later; how the feed updates outside trading hours decides whether weekend and off-hours purchases and settlements go ahead, and the mainnet feed is not yet decided.