Perp vs Dated Carry
Compare expected perpetual funding over the dated contract holding window against locked dated-futures basis. Positive carry edge favors the perp carry leg; negative edge favors dated cash-and-carry.
List perp-dated carry rows
The main scanner grid shows Rank, Coin, Venues, Dated Contract, Expiry, Funding APR, Dated Basis, Carry Edge, Best Leg, Liquidity, and Updated. Row details include expected funding to expiry, next funding, funding stability, OI/depth, source timestamps, and the heatmap breakdown.
Query parameters
- Name
coin- Type
- string
- Description
- Optional base coin.
- Name
exchanges- Type
- string
- Description
- Comma-separated exchange filter applied to funding and dated-futures venues.
- Name
minApr- Type
- number
- Description
- Minimum absolute carryEdgePct in percentage points.
- Name
minOiUsd- Type
- number
- Description
- Minimum open interest in USD when available.
- Name
minVolumeUsd- Type
- number
- Description
- Minimum 24h futures volume in USD when available.
- Name
minDepthUsd- Type
- number
- Description
- Minimum executable depth in USD when depth is available.
- Name
marginType- Type
- string
- Description
- Futures margin filter:
linear,inverse, orboth.
- Name
notional- Type
- number
- Description
- Position notional in USD. Defaults to 10000.
- Name
limit- Type
- integer
- Description
- Rows per page. Defaults to 100.
- Name
cursor- Type
- string
- Description
- Opaque cursor from the previous page.
Request
curl -G https://www.sharpe.ai/api/v1/arbitrage/perp-dated-carry \
-H "Authorization: Bearer sk_live_your_key_here" \
-d coin=SOL
Response
{
"data": {
"rows": [
{
"rank": 1,
"coin": "SOL",
"perpVenue": "Bybit",
"datedVenue": "Binance",
"datedContract": "SOLUSDT_260626",
"expiry": "2026-06-26T08:00:00.000Z",
"days": 34,
"perpFundingAprPct": 18.25,
"expectedFundingToExpiryPct": 1.7,
"datedBasisPct": 1.1,
"carryEdgePct": 0.6,
"netCarryEdgePct": 0.41,
"bestLeg": "Perp Carry",
"nextFunding": "2026-05-23T16:00:00.000Z",
"funding7dStabilityPct": 0.3,
"oiDepthUsd": 21000000,
"updatedAt": "2026-05-23T10:30:00.000Z"
}
],
"scannerMeta": {
"kind": "perp-dated-carry",
"status": "ok",
"source": "supabase",
"notionalUsd": 10000
},
"pagination": { "cursor": null, "has_more": false, "total": 1 }
},
"meta": {
"request_id": "req_abc123def456ghij",
"timestamp": "2026-05-23T10:30:00.000Z",
"elapsed_ms": 16
}
}
Formula
perpFundingAprPct = fundingRate * (24 / intervalHours) * 365 * 100
expectedFundingToExpiryPct = perpFundingAprPct * daysToExpiry / 365
carryEdgePct = expectedFundingToExpiryPct - datedBasisPct
netCarryEdgePct = sign(carryEdgePct) * max(0, abs(carryEdgePct) - roundTripFeePct) — the carry edge net of the averaged per-venue round-trip taker fee (roundTripFeePct), keeping the edge's sign and floored at 0. carryEdgePct itself stays gross.