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

# Pairs and Delta Neutral

> Long one coin against another, or the same coin long on one venue and short on another to collect the funding gap.

`shumi pairs` covers two trades. A pair trade is long one coin and short a related one, so you earn on the ratio between them. A delta neutral trade is the same coin long on one venue and short on another, so price cancels out and you keep the funding gap.

## Get pair suggestions

<Tabs>
  <Tab title="Terminal">
    ```bash theme={"dark"}
    shumi pairs suggestions
    shumi pairs suggestions --symbol ETH --limit 5
    ```

    Bare `shumi pairs` prints help only.
  </Tab>

  <Tab title="API">
    ```bash theme={"dark"}
    curl "https://api.shumi.ai/api/cli/pairs?action=suggestions" \
      -H "Authorization: Bearer shumi_sk_your_key_here"
    ```

    On pay per call ([Pay Per Call](/agents/payments)) this route costs 0.05 USDC. It refreshes daily.
  </Tab>

  <Tab title="AI agent">
    Connect the [MCP server](/agents/mcp) and call `get_pair_suggestions`. Its `mode` parameter picks `suggestions`, `delta-neutral`, `history` or `signal`.
  </Tab>
</Tabs>

You get 10 suggestions (`--limit` changes that) out of `totalPairsAnalyzed` (for example 200), plus `gateStats` (pairs per gate outcome), `concentrationWarnings` (a coin repeated across suggestions) and a `disclaimer`.

## Read one suggestion

Read `description` for the trade, for example `"Long TAO / Short ETH"`. Read `signalState.daysActive` and `isNew` for how long it has been on, and `ratioTrend.bandPosition` for how stretched the ratio already is (near 1 means most of the move has happened). Then the fields:

| Field | Meaning |
| - | - |
| `long`, `short` | Each leg: `symbol`, `name`, `currentTrend` (UP, [HODL](/research/market-health#count-the-coins-trending-up-sideways-or-down) or DOWN) and `trendStreak` in days |
| `ratioTrend.summary` | Who is winning, e.g. "TAO outperforming ETH" |
| `ratioTrend.canonicalRatio` | The price ratio the trend is measured on. `canonicalBasis` says which way round |
| `ratioTrend.bandPosition` | Where the ratio sits in its band: 0 at the lower band, 1 at the upper |
| `signalState` | `isNew`, `daysActive`, `entryRatio`, `currentRatio`, `unrealizedPnl` (a fraction since entry) and `bandDrift` |
| `status`, `reason` | `ACTIVE` with "All 6 gates passed" for every listed pair |
| `sharedCategories`, `commonExchanges`, `commonExchangeCount` | What the two coins have in common and where both trade |
| `backtest` | `tier`, `sharpe`, `trades`, `backtestDate` from a fit on past data |
| `riskMetrics` | `maxDrawdown`, `profitFactor`, `avgHoldDays` from the same fit |

Two fields carry their own warning in every response. `backtest.sharpeBasis`: the Sharpe is an in-sample fit dated January 2026, often on fewer than 10 closed outcomes, so do not rank pairs by it. `riskMetrics.maxDrawdownBasis`: drawdown counts closed outcomes only, so a position that sat near its stop for weeks and recovered records 0. Real drawdown is larger.

`priceRatioLongOverShort` is the long coin's price over the short coin's, for charting the pair.

## Check one pair or the history

```bash theme={"dark"}
shumi pairs signal --token-a eth --token-b sol
shumi pairs history
```

`pairs signal` returns `status`, `reason` and a `signal` with `long` and `short`. ETH and SOL came back long SOL, short ETH: the data sets the direction, whichever order you type the tokens.

`pairs history` returns daily `snapshots`. Each has `pairCount` and a `pairs[]` list, and each pair has:

| Field | Meaning |
| - | - |
| `long`, `short` | Each side's `symbol`, `priceChange24h` and `trend` |
| `metrics.matchDays` | Consecutive days the two coins' trends have matched |
| `metrics.spreadPct` | The price spread between the two, in percent |
| `metrics.compositeScore` | 0 to 100: 30% from `matchDays`, 70% from `spreadPct` |

## Get delta neutral suggestions

```bash theme={"dark"}
shumi pairs delta-neutral
shumi pairs delta-neutral --symbol RUNE --exchange binance --limit 5
```

Add `--dex-only` to keep only decentralised venues. API: `GET /api/cli/pairs?action=delta-neutral`. Each item:

| Field | Meaning |
| - | - |
| `strategy.long`, `strategy.short` | Per venue: `exchange`, `funding_interval`, `funding_rate_apr`, `funding_rate_1h`, `next_funding_time`, `volume_24h` |
| `expected_net_apr` | Short-leg APR minus long-leg APR, if both rates held all year |
| `spread_1h` | The same gap per hour, in percent |
| `projected_30day_return` | `expected_net_apr` scaled to 30 days |
| `liquidity.oi_rank` | Open-interest rank of the coin |
| `description` | The trade in one sentence |

For example: "Go long RUNE on Binance (8h funding) and short RUNE on Kraken (1h funding) for a net APR of 4361.60%." Before the APR, read `volume_24h` on both legs (Kraken RUNE: \$474k) and `next_funding_time`. An extreme rate on a thin book can be gone at the next payment.

## What a two-venue trade puts at risk

<Warning>
  Each leg has its own margin account. A sharp move puts one leg deep in profit and the other deep in loss, and the losing venue liquidates it without knowing you are hedged elsewhere.
</Warning>

* Funding on either venue can change sign at any interval, so the gap can close or invert.
* You pay four fills: in and out on each venue. On a small `spread_1h` that can exceed the carry.
* Both legs are yours to place. Until the second fills you hold a plain directional position.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.