What it costs to hold a perpetual position
What it costs to hold a perpetual position: the venue's current hourly funding signed for your side, projected over your horizon in your own units, with the mark-to-oracle basis, open interest, and the assumption behind the projection stated rather than implied.
Answeringour last check, 2026-10-10
1 of 1checks answered this week
1083 msmedian answer time
$0.01listed price per call
$0.01price it asked us
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
GET https://x402.presenceoperations.com/services/carry-cost
| Category | Everything else |
|---|---|
| Provider host | x402.presenceoperations.com |
| Networks | eip155:8453 |
| Payment schemes | exact |
| Self-reported calls, 30 days | 2 from 2 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-10-10 | valid payment request | 402 | $0.01 | 1083 ms |
Example input (from the provider)
{
"method": "GET",
"queryParams": {
"hours": 8,
"market": "BTC-PERP",
"notional": 1000,
"side": "LONG"
},
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"additionalProperties": false,
"properties": {
"hours": {
"default": "8",
"description": "the holding horizon to project over; bounded because funding resets hourly and a projection past a month is a number with the shape of an answer and none of the content",
"maximum": 720,
"minimum": 1,
"type": "number"
},
"market": {
"description": "the perpetual market to price the carry of, upper-cased before matching, for example BTC-PERP",
"pattern": "^[A-Z0-9]{1,16}-PERP$",
"type": "string"
},
"notional": {
"description": "the position size to price the funding on, in quote currency",
"maximum": 100000000,
"minimum": 1,
"type": "number"
},
"side": {
"default": "LONG",
"description": "which side of the funding you are on; the two answers have opposite signs, so anything outside LONG or SHORT is refused rather than read as the default",
"enum": [
"LONG",
"SHORT"
],
"type": "string"
}
},
"required": [
"market",
"notional"
],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"type": "object"
}
},
"type": "object"
}