Skip to content
KIMP

Edge cases

How the Kimp Index and contracts behave during Upbit halts, halts over expiry, FX gaps, missed quorum and negative premiums.

The index depends on external markets that pause, halt and close. This page defines what the protocol does in each case. The rules are deterministic and enforced by contract where possible.

Summary#

EventIndexMarketSettlement
Missed quorum in an epochPrevious value carried, epoch marked staleNormalStale epoch is not a sample
No finalized update for 5 minutesPrevious value carriedReduce-onlyUnaffected unless during the TWAP window
Upbit halt or suspension of an assetFrozen at last valueReduce-onlySee halt across expiry
Halt across expiryFrozenReduce-onlyTWAP of available samples, with extensions
FX gap up to 72 hoursComputed with last valid FX mid, flaggedNormalNormal
FX gap beyond 72 hoursNo new valuesReduce-only after 5 minutesExtension rules apply
One global venue downMedian of remaining venuesNormalNormal
Fewer than two global venuesNo report from affected reportersReduce-only after 5 minutes if quorum is lostExtension rules apply
Negative premiumSigned value, fully supportedNormalNormal

Upbit trading halt or suspension#

Upbit can halt or suspend trading for a specific asset, for example during a network upgrade or a listing review. A last trade price during a halt does not reflect the market. When a halt is in effect:

  • The index for that asset is frozen at its last finalized value.
  • The market for that asset becomes reduce-only. Positions can be closed at the frozen mark. No new exposure can be opened or increased.
  • Other assets are unaffected.

The index resumes at the first epoch after trading restarts on Upbit.

Halt across expiry#

Contracts settle on the 1-hour TWAP of 60 one-minute samples between 07:00 and 08:00 UTC on Friday. See Settlement TWAP. If a halt overlaps that window:

  1. 1If at least 30 of the 60 samples exist, settlement uses the TWAP of the available samples.
  2. 2If fewer than 30 samples exist, expiry is extended by 1 hour. The settlement window becomes the 60 minutes before the new expiry and the same test is applied.
  3. 3Extensions repeat in 1-hour steps up to 24 hours after the scheduled expiry.
  4. 4If no window reaches 30 samples within 24 hours, the series settles at the last finalized value.

The next weekly series for that asset lists when the extended series settles.

Example#

A halt starts at 07:40 UTC. The window 07:00 to 08:00 has 40 samples. Settlement proceeds at 08:00 on the mean of those 40 samples. Had the halt started at 07:20, only 20 samples would exist, and expiry would move to 09:00.

FX gaps#

The USDKRW reference has no live mid on weekends, some holidays and during feed outages. Reporters carry the last valid FX mid for a maximum of 72 hours. Every value computed with a carried FX mid is flagged in the event data.

After 72 hours, a carried FX mid is no longer valid and reporters stop submitting reports that depend on it. The epochs go stale, and after 5 minutes the affected markets become reduce-only until a valid FX mid is available.

Weekly expiry is on Friday at 08:00 UTC, when FX markets are open, so the carry rule rarely affects settlement.

Missed quorum and staleness#

If fewer than 5 valid reports arrive, the epoch is marked stale and the previous value is carried. After 5 minutes without a finalized value, the market becomes reduce-only. It returns to normal at the next finalized update. See Sampling and median.

Large single-epoch moves#

A move of more than 300 bps from the previous finalized value requires reports from two thirds of the active set. Otherwise it is held one epoch. See the circuit guard in Sampling and median.

Negative premium#

When Upbit trades below the global price, the index is negative. Korean traders call this 역프, the reverse premium. The index is signed and all contract arithmetic uses the signed value. A Short premium position opened at +50 bps and settled at −80 bps gains 130 bps on its notional. There is no floor at zero.

Liquidations during frozen periods#

Liquidation uses the mark, which is the latest finalized value. While an index is frozen or carried, the mark does not move, so positions cannot become liquidatable from index movement alone. They can still become liquidatable if ETH collateral falls in value. See Liquidation.