# Adjacent Equity-Perpetual and Public Equity Mark Mathematics Methodology

**Adjacent Markets, Inc.**

Version 1.0

## Table of Contents

- [1. Overview](#1-overview)
- [2. Definitions](#2-definitions)
- [3. Accepted Quote Assets](#3-accepted-quote-assets)
- [4. Methodology and Rules](#4-methodology-and-rules)
  - [4.1 60-second calculation order](#41-60-second-calculation-order)
  - [4.2 Official window](#42-official-window)
  - [4.3 Mathematical representation](#43-mathematical-representation)
- [5. Constituent Venues and identity](#5-constituent-venues-and-identity)
  - [5.1 What identity is](#51-what-identity-is)
  - [5.2 The screen a specification must pass](#52-the-screen-a-specification-must-pass)
  - [5.3 Default eligible perp venue](#53-default-eligible-perp-venue)
  - [5.4 Cash source](#54-cash-source)
- [6. Contingency calculation rules](#6-contingency-calculation-rules)
- [7. Parameters](#7-parameters)
- [Related](#related)
- [Appendix A. Worked example: Tesla, 21 Sep 2026](#appendix-a-worked-example-tesla-21-sep-2026)
  - [A.1 Pre-open 60-second cycle (retrieved)](#a1-pre-open-60-second-cycle-retrieved)
  - [A.2 Official cash (prior Index Calculation Day)](#a2-official-cash-prior-index-calculation-day)
  - [A.3 Illustrative regular-session cycle](#a3-illustrative-regular-session-cycle)
  - [A.4 Primary oracle unusable, no backup named](#a4-primary-oracle-unusable-no-backup-named)
  - [A.5 Private valuation (not Tesla)](#a5-private-valuation-not-tesla)

## 1. Overview

This methodology publishes a USD price for one named company's equity. That price can come from the company's equity-perpetual oracle, from its listed common stock, or from both.

The **Equity-Perp Mark** `M^(perp)` is the venue **oracle** of the designated equity-perpetual listing, after identity and staleness screens. It is published every 60 seconds, including when U.S. equity markets are closed.

The **Public Equity Mark** `M^(cash)` is the listed common of that issuer. On the 60-second clock, during the regular U.S. session, it is the NBBO mid of that listing. In the official window, it is the official closing price of that listing. A private-valuation claim has no public-equity mark.

These are marks, not indices. Adjacent uses "index" for Total Return and Price Return baskets.

A product methodology consumes the published marks. On each clock it names which mark it uses and which mark is failover.

Individual specifications inherit this document.

## 2. Definitions

**Accepted Quote Asset:** A quote or collateral asset approved to stand 1:1 with USD. Listed in Section 3.

**AIC:** Adjacent Index Committee.

**Backup listing:** Another equity-perpetual of the same claim, used only if the Primary listing's oracle fails its screen. Backup is a perp listing, not the cash listing.

**Calculation Agent:** Retrieves venue and listed-equity data and computes the marks. Retrieval clock is the Calculation Agent's clock.

**Calculation Time:** Any time at which the 60-second marks are computed. Default every 60 seconds.

**Cash listing:** The named listed common for the Public Equity Mark (ticker, class, primary market). Named only for a listed-issuer claim. Not a perp listing.

**Claim type:** Either **listed issuer** (a U.S. listed common exists) or **private valuation** (no listed common; no public-equity mark).

**Constituent Venue:** A perp venue named in the specification as eligible. Default eligible name: TradeXYZ (HIP-3). AIC adds or removes names.

**Effective Time (`T`):** End of the official window. Default 16:00 America/New_York.

**Equity-Perp Mark (`M^(perp)`):** The venue oracle of the named equity-perpetual listing, after identity and staleness screens. Published in USD.

**HIP-3:** Hyperliquid's protocol for builder-deployed perpetual markets.

**Index Calculation Day:** Monday through Friday excluding U.S. equity holidays.

**Listed common:** The named class of common shares of the issuer (for Tesla, NASDAQ:TSLA Class A). Dual listing on two venues is one class.

**NBBO:** National Best Bid and Offer on the consolidated U.S. tape. Regular session only, 09:30 to 16:00 America/New_York.

**NBBO mid:** `(NBB + NBO) / 2` on a two-sided, uncrossed NBBO.

**Official close:** The official closing price of the named listing on that Index Calculation Day.

**Primary listing:** The first-choice equity-perpetual for the Equity-Perp Mark. The specification names this listing as the oracle source.

**Private valuation:** An equity-perpetual whose underlying claim is an unlisted issuer's valuation. Fallback is the last valid oracle.

**Public Equity Mark (`M^(cash)`):** The listed-common mark. 60-second print: NBBO mid. Official print: official close.

**Regular session:** 09:30 to 16:00 America/New_York on an Index Calculation Day.

**Retrieval Lag Threshold:** Default 10 seconds. An oracle snapshot whose venue timestamp is older than this, relative to the Calculation Agent clock, is unusable that cycle. A snapshot with no venue timestamp is treated as current at Retrieval Time.

**Retrieval Time:** The Calculation Agent clock time of the snapshot.

**Specification:** This methodology applied to one named claim. It names the issuer, Primary listing, and, if listed issuer, the cash listing. An inheriting index methodology may contain one or more specifications.

## 3. Accepted Quote Assets

A USD close and a USDC oracle may enter the same specification only because both assets are accepted as 1:1 with the numeraire. AIC adds or removes names.

| Asset | Where it shows up | 1:1 with USD | Status |
| --- | --- | --- | --- |
| **USD** | Listed cash; some perp collateral | Numeraire | Accepted |
| **USDC** | Native Circle USDC; TradeXYZ / HIP-3 collateral | Yes, if 1:1 redeemable through the issuer | Accepted |

1. Published unit is always USD.
2. Convertibility is 1:1.
3. Peg break, redemption halt, or wrapping halt is a Market Failure Event only when AIC declares it.
4. Splits, reverse splits, and similar corporate actions enter as the oracle feed and the official close print them.

## 4. Methodology and Rules

### 4.1 60-second calculation order

At each Calculation Time, in this order:

1. **Identity:** Read the specification: issuer, claim type, Primary listing, backup listings, cash listing if listed issuer. If identity is withdrawn, or an amendment breaks the bind: hold the last valid marks with marker `[*]`, report to AIC. AIC relists or discontinues.
2. **Perp snapshot:** Retrieve the Primary listing's oracle. A snapshot older than the Retrieval Lag Threshold is unusable. A non-numeric, non-finite, or non-positive oracle is unusable. Venue `markPx`, `midPx`, last trade, premium, and funding are monitoring fields.
3. **Perp failover:** If the Primary oracle is unusable, retrieve backup listings in the order the specification names. Use the first oracle that passes the same screen. If no eligible oracle remains, perp calculation failure.
4. **Perp mid-cycle print:** If a usable oracle remains, `M^(perp)_t` is that oracle, converted 1:1 into USD.
5. **Cash 60-second screen (listed issuer only):** Compute `M^(cash)_t` only if every condition holds: claim type is listed issuer; Retrieval Time is inside the regular session; the NBBO is two-sided and not crossed; each side has size; bid-ask spread is not greater than 50 basis points of the mid. Then `M^(cash)_t = (NBB + NBO) / 2`.
6. **Cash 60-second failure:** If any condition in step 5 fails, hold the last valid `M^(cash)`. If the regular session is closed, no failure marker. If the regular session is open and the screen fails, hold with marker `[*]` and report to AIC. A product that names the perp as failover uses `M^(perp)_t` for that sleeve. A private-valuation claim skips steps 5 and 6.

A vacant backup leaves the Primary listing in place. Calculation failure for the perp mark is only when no usable oracle remains.

### 4.2 Official window

On an Index Calculation Day, at Effective Time `T` (default 16:00 America/New_York), with retrieval through 16:15:

1. Repeat Section 4.1 steps 1–4. The official Equity-Perp Mark is that cycle's screened oracle.
2. For a listed-issuer claim, the official Public Equity Mark is the official close of the named listing for that day. If that close is missing, hold the last valid official cash mark with `[*]`.
3. A private-valuation claim has no official cash mark.

Weekend and holiday 60-second perp marks continue. The prior official cash print remains the official cash mark until the next Index Calculation Day.

### 4.3 Mathematical representation

Let `o_t` be the first screened oracle in Primary-then-backup order.

`M^(perp)_t = o_t`

If no such `o_t` exists, perp calculation failure (Section 6).

During the regular session, when the cash screen in Section 4.1 step 5 passes:

`M^(cash)_t = (NBB_t + NBO_t) / 2`

At Effective Time `T` on an Index Calculation Day, for a listed-issuer claim:

`M^(cash)_T = C_T`

where `C_T` is the official close of the named listing.

Calculations use unrounded source prices. The published value is rounded to two decimal places.

## 5. Constituent Venues and identity

### 5.1 What identity is

The specification names the issuer and the equity-perpetual that is that issuer's equity. Default fields: issuer, claim type (listed issuer or private valuation), Primary listing, backup listings, and, if listed issuer, the cash listing (ticker, class, primary market).

### 5.2 The screen a specification must pass

On every Calculation Time, in this order:

1. **Designated claim:** One issuer, one claim type, one Primary listing. A backup must be the same issuer and the same claim type.
2. **Listed vs private:** If the claim is listed issuer, a cash listing must be named. If the claim is private valuation, no cash listing is named and `M^(cash)` is out of scope.
3. **Same class:** The cash mark is one named share class. A dual listing of that class is the same listing.
4. **Claim type:** A valuation-style perp is a different claim from the listed-issuer perp of the same company's common after that common lists. Failover is only among listings of the same claim type.

### 5.3 Default eligible perp venue

Default eligible Constituent Venue: **TradeXYZ** (HIP-3). A specification may name a TradeXYZ listing as Primary (for Tesla, `xyz:TSLA`). AIC may add venues to the eligibility list. A venue not on the list may be named in a specification only after AIC adds it. Eligibility is not a requirement that every named venue print every cycle.

### 5.4 Cash source

The 60-second public-equity mark is the NBBO of the cash listing. Official close is the official closing price of the named listing's primary market.

## 6. Contingency calculation rules

**Delayed or missing oracle:** A Primary oracle not available at Retrieval Time, or older than the Retrieval Lag Threshold, is disregarded that cycle. The first passing backup is the mark. If every named listing is missing or unusable, perp calculation failure.

**Delayed or missing cash:** Outside the regular session, hold the last valid `M^(cash)` with no failure marker. During the regular session, if the NBBO is missing, one-sided, crossed, or wider than 50 basis points, hold the last valid `M^(cash)` with `[*]`.

**Erroneous data:** Non-numeric or non-positive oracle; unparsable payload; crossed or one-sided NBBO. Dropped.

**Calculation failure:** Publish the previous value of that mark with marker `[*]`. If none, gap.

**Market failure:** AIC-declared peg, redemption, or wrapping halt on a required Accepted Quote Asset, or an outage that leaves no usable Primary or backup oracle. Previous perp value with `[*]`.

**No restatement of 60-second prints:** Intraday 60-second marks are final. A failed cycle gaps or carries `[*]`.

**Official close restatement:** The official cash mark may be overwritten the same Index Calculation Day, before 23:59:59 America/New_York. That happens only if the listing exchange restates the close or the Calculation Agent published the wrong close, and the new value differs by more than 1.00 USD. No failure marker. After that cutoff, no restatement.

## 7. Parameters

| Parameter | Default |
| --- | --- |
| Recalculation | 60 seconds |
| Official Effective Time `T` | 16:00 America/New_York; retrieve through 16:15 |
| Price unit | USD; publish 2 decimal places |
| Default perp venue | TradeXYZ (HIP-3) |
| Perp failover | Primary, then named backups in spec order; no average |
| Retrieval Lag Threshold | 10 seconds |
| NBBO max spread | 50 basis points of mid (drop when strictly greater) |
| 60-second cash session | 09:30–16:00 America/New_York, Index Calculation Days |
| Official cash | Official close of the named listing |
| Hold on perp failure | Previous `M^(perp)` with `[*]` |
| Hold on cash, session closed | Previous `M^(cash)`, no failure marker |
| Hold on cash, session open | Previous `M^(cash)` with `[*]` |
| Restatement (official cash) | Same day, only if the new close differs by more than 1.00 USD; exchange or agent error only |

## Related

- [Adjacent Event Contract Real-Time Rate Mathematics Methodology](https://cdn.sanity.io/files/ddr9slt2/production/a85890e68d25ac741caaf256b31134318feeb647.pdf)
- [Event Contract Reference Rate Methodology](https://cdn.sanity.io/files/ddr9slt2/production/5d9a472b54ceb98518c871be989fa5a39197af35.pdf)
- [Adjacent Event Contract Index Mathematics Methodology](https://adjacent.markets/static/math/methodology)

## Appendix A. Worked example: Tesla, 21 Sep 2026

> *Illustrative Calculation Times. Not official prints. Not IOSCO-signed. Primary listing = TradeXYZ `xyz:TSLA`. Claim type = listed issuer. Cash listing = NASDAQ:TSLA Class A. No backup listing is named.*

**Relevant claim.** Tesla, Inc. listed Class A common, and the equity-perpetual whose underlying economic claim is that common.

**Calculation Time for A.1 (`t`).** 2026-09-21 13:18:04 UTC (09:18:04 America/New_York). Regular session has not opened. This is a 60-second cycle.

### A.1 Pre-open 60-second cycle (retrieved)

**Perp snapshot.** TradeXYZ HIP-3 `POST https://api.hyperliquid.xyz/info` `{"type":"metaAndAssetCtxs","dex":"xyz"}`, universe name `xyz:TSLA`.

| Field | Value | Role |
| --- | --- | --- |
| `oraclePx` | 370.42 | **Input.** Screened oracle. |
| `markPx` | 370.64 | Monitoring only. |
| `midPx` | 370.65 | Monitoring only. |
| `premium` | 0.0006074186 | Monitoring only. |
| `funding` | 0.0000141761 | Not in the mark. |
| `prevDayPx` | 363.17 | Perp previous day. Not the Nasdaq close. |

Identity held. Oracle positive, finite, treated as current at Retrieval Time (no venue timestamp on the payload). No backup required.

`M^(perp)_t = 370.42`. Publish **370.42**.

**Cash 60-second.** Regular session is closed (09:18 ET). Last valid official cash mark is the Nasdaq regular-session close of 18 Sep 2026, **364.27**. Hold **364.27** as `M^(cash)` with no failure marker (session closed). A consuming index that names the perp as the 60-second mark uses 370.42 for the sleeve. A consuming index that names cash as the 60-second mark holds 364.27 until the regular session opens.

### A.2 Official cash (prior Index Calculation Day)

The last completed Index Calculation Day at this retrieval is Friday 18 Sep 2026. Official Public Equity Mark for that day is the official close of NASDAQ:TSLA. The regular-session close used in this appendix is **364.27**. A live Calculation Agent uses the Nasdaq Official Closing Price for that date.

The official Equity-Perp Mark for 18 Sep 2026 is the screened oracle at that day's Effective Time, not reconstructed here.

### A.3 Illustrative regular-session cycle

Same Primary oracle 370.42. Suppose Retrieval Time is 15:45 America/New_York on an Index Calculation Day and the TSLA NBBO is NBB 370.28 × 1,000, NBO 370.48 × 12,000.

Spread = 0.20 / 370.38 = 5.4 basis points, under 50. Two-sided, not crossed. `M^(cash)_t = 370.38`. Publish **370.38** on the cash series and **370.42** on the perp series. A product may choose either as sleeve primary.

If that NBBO were 368.00 / 372.00, spread = 400 / 370.00 = 108 basis points, which exceeds 50. Cash screen fails. Hold last valid cash with `[*]`. Perp remains 370.42.

### A.4 Primary oracle unusable, no backup named

Same specification, no backup listing. Primary oracle missing or stale beyond 10 seconds. Perp calculation failure. Hold previous `M^(perp)` with `[*]`. Cash follows Section 4.1 steps 5–6 independently. A consuming product that names cash as backup uses `M^(cash)`.

### A.5 Private valuation (not Tesla)

A specification that names a private-valuation claim retrieves only the designated oracle. If that oracle fails, hold last valid oracle with `[*]`.

## Version History

- v1 (2026-09-30): Published v1
- v0.1 (2026-09-21): Initial draft