> ## Documentation Index
> Fetch the complete documentation index at: https://sidiorresearchlabs.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# HyperPax DEX

> Network-operated Adaptive Sigmoid AMM with Diamond facets, progressive fees, oracle-pegged pools, and typed SDK support

## Overview

HyperPax DEX is the public protocol name for the network-operated v5-ASAMM system. It is an Adaptive Sigmoid Automated Market Maker built for Paxeer Network chain ID `125`.

<CardGroup cols={3}>
  <Card title="Adaptive Sigmoid Curve" icon="wave-square">
    A tanh-based curve keeps small trades efficient and increases impact for large trades.
  </Card>

  <Card title="Progressive Fees" icon="chart-line">
    Fees scale quadratically with trade size to protect pool liquidity.
  </Card>

  <Card title="Diamond Architecture" icon="gem">
    12 EIP-2535 facets share one AppStorage layout behind a single Diamond.
  </Card>
</CardGroup>

## Core mechanics

### Sigmoid price impact

```text theme={null}
P(x) = P_mid * (1 + k * tanh(a * x / L))
```

| Parameter | Meaning                                   |
| --------- | ----------------------------------------- |
| `P_mid`   | Current mid-price from reserves or oracle |
| `k`       | Maximum price deviation factor            |
| `a`       | Curve steepness                           |
| `x`       | Signed trade size                         |
| `L`       | Pool liquidity                            |

### Progressive fee

```text theme={null}
fee(x) = baseFee + impactFee * (x / L)^2
```

Fees are distributed as:

| Recipient          | Share |
| ------------------ | ----: |
| LPs                | `70%` |
| Protocol treasury  | `20%` |
| Trader rebate pool | `10%` |

## Facets

| Group              | Facets                                                   |
| ------------------ | -------------------------------------------------------- |
| Core               | `DiamondCutFacet`, `DiamondLoupeFacet`, `OwnershipFacet` |
| Pool operations    | `PoolFacet`, `LiquidityFacet`, `SwapFacet`               |
| Pricing and fees   | `FeeFacet`, `OracleFacet`, `OraclePegFacet`              |
| Orders and rewards | `OrderFacet`, `RewardFacet`, `FlashLoanFacet`            |

## Production addresses

| Contract        | Address                                      |
| --------------- | -------------------------------------------- |
| Diamond proxy   | `0x9595a92d63884d2D9924e0002D45C34d717DB291` |
| Router          | `0x635aC031f7d26035FCc8b138b0835fec0cf6b8AA` |
| Quoter          | `0x2092D242Cc5d3673D1644128DBd4D199dE51266e` |
| PositionManager | `0x8f60EcD67Ef9aF953Dfc1a94F03C1D7e4363e092` |
| OrderManager    | `0xB6430A1A4373C14Fa359b242713fBeB4BF2559A4` |
| EventEmitter    | `0x3FCa66c12B99e395619EE4d0aeabC2339F97E1FF` |

## Facet addresses

| Facet             | Address                                      |
| ----------------- | -------------------------------------------- |
| DiamondCutFacet   | `0xE4F3EEcc0c940d5a4Ed8CbC9262bF761F0EB43Dc` |
| DiamondLoupeFacet | `0x24bC6117305709fF35e3b22A387B2F66EdDF3908` |
| OwnershipFacet    | `0x2334B448654c7Eb230F1DDb2C48a23DF6F736d02` |
| PoolFacet         | `0x5C8f4B01467894C7EEC0f57994bE672e317c66d2` |
| SwapFacet         | `0xf0E343F0185E5896914621f3E583A723A8C02020` |
| LiquidityFacet    | `0xb90ED04e330aa93b8D2c6A19343d98B77cFad9CC` |
| FeeFacet          | `0x63D13c9FB4C4c2e05fE5265B3a266C47cc49136b` |
| OracleFacet       | `0xF7595F653d1960BaeD00D54a6f064357C366fba9` |
| OraclePegFacet    | `0xe7Dc930B5D7a439B2bf161B01a03D4fc5184Ff1d` |
| OrderFacet        | `0xfDdf08D5D2CB2d6Ac52ca6b92616651d4921Cf9f` |
| RewardFacet       | `0x3eA125C4B662f2D148f40E736B8816D4574Ce0DB` |
| FlashLoanFacet    | `0x64404C575eB9ED3BB9afF71dD478236B98272c80` |

## Developer usage

Use the Router for swaps and liquidity operations unless you need lower-level Diamond facet calls.

```typescript theme={null}
import { createPublicClient, http } from 'viem'
import { hyperpaxeer } from './chains'

const client = createPublicClient({
  chain: hyperpaxeer,
  transport: http('https://public-rpc.paxeer.app/rpc'),
})

const router = '0x635aC031f7d26035FCc8b138b0835fec0cf6b8AA'
```

## Related protocols

* [HyperPax Perps](/sidiora/perps)
* [Sidiora.fun](/sidiora/fun)
* [Sidiora.ag](/sidiora/ag)
