{
  "data": {
    "a": {
      "slug": "deribit",
      "name": "Deribit",
      "vendor": "Deribit FZE",
      "vendorUrl": "https://www.deribit.com",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Deribit is a crypto options, futures and perpetuals exchange owned by Coinbase, with a JSON-RPC API over WebSocket and HTTP, a FIX API and a test environment at test.deribit.com.",
      "url": "https://www.anchorterminal.com/tools/deribit",
      "markdownUrl": "https://www.anchorterminal.com/tools/deribit.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/deribit.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/deribit.json",
      "dns": "deribit.grade.anchorterminal.com",
      "license": "Proprietary hosted exchange. The API is documented under the Deribit docs with an OpenAPI 3.0 file; no official client library is published",
      "transports": [],
      "packages": [],
      "auth": "api-key",
      "authNotes": "API keys are made in the account settings or with `private/create_api_key`, each with scopes `account`, `trade`, `wallet`, `block_trade` and `block_rfq` at `read`, `read_write` or `none`, plus `ip:ADDR` and `expires` limits. Tokens come from `public/auth` by `client_credentials` (key and secret), `client_signature` (HMAC-SHA256 over timestamp, nonce and data, so the secret never travels) or `refresh_token`. Self-generated Ed25519 or RSA keys let Deribit hold only the public half. The HTTP example passes `client_secret` in the query string (https://docs.deribit.com/articles/authentication, https://docs.deribit.com/articles/access-scope, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The API has no charge of its own; trades pay maker and taker fees per instrument. The fee schedule is on support.deribit.com, which answered our reader with 403, so the lowest-tier rates are unchecked. Deribit's own posts of 14 October and 2 November 2026 give VIP4 to VIP7 taker fees of 1.75 to 1.40 bps on perpetuals and futures from 19 October 2026, and 0 bps maker fees on USDC-settled linear daily options from 5 November 2026 (https://insights.deribit.com/exchange-updates/new-fee-tier-on-perpetuals-and-futures/, checked 2026-11-03).",
      "priceSummary": "0.02% fee",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the OpenAPI file or the articles index (checked 2026-11-03). Accounts are funded by crypto deposit after a browser signup.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://docs.deribit.com/",
      "llmsTxt": "https://docs.deribit.com/llms.txt",
      "openapi": "https://docs.deribit.com/specifications/deribit_openapi.json",
      "capabilities": [
        "exchange.derivatives",
        "exchange.market-data",
        "exchange.spot-trading",
        "exchange.balances",
        "exchange.transfers",
        "market.crypto"
      ],
      "tags": [
        "official",
        "hosted",
        "closed-source",
        "openapi",
        "llms-txt",
        "api-key",
        "sandbox",
        "usage-priced",
        "no-status-page",
        "bug-bounty",
        "rest"
      ],
      "lastRelease": "2026-10-13",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59,
        "grade": "C",
        "agentReady": false,
        "rank": 650,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 9,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 65,
          "payments": 25,
          "reliability": 45,
          "schema": 88,
          "security": 62,
          "transparency": 46
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Deribit's JSON-RPC API has scoped keys with IP and expiry limits, asymmetric signing, an OpenAPI file, numeric rate limits and a 64-entry changelog. There is no official MCP server or client library, the fee schedule, terms and privacy policy sit on a support site that refused our reader, and the status page did not resolve.",
        "bestFor": "An agent trading crypto options, dated futures and perpetuals for an institutional or retail Deribit account, and anyone migrated from Coinbase International Exchange.",
        "strengths": [
          "Keys carry `account`, `trade`, `wallet`, `block_trade` and `block_rfq` scopes at read, read_write or none, with `ip:ADDR` and `expires` limits, and Ed25519 or RSA keys keep the private half off Deribit",
          "OpenAPI 3.0 and AsyncAPI files, llms.txt indexes and Markdown twins for every reference page",
          "Credit-based rate limits with numbers, per sub-account, and an errors page of about 159 codes with retry guidance (10028 back off, 10040 retry, 13009 refresh)",
          "A separate test environment at test.deribit.com with the same API and its own accounts and keys",
          "A dated JSON-RPC changelog since 2020 and an upcoming docs branch that previews the next release"
        ],
        "weaknesses": [
          "No official MCP server, and the GitHub organisation has no public repositories, so no official SDK in any language",
          "The fee schedule, terms of service, privacy policy and restricted-jurisdictions list are on support.deribit.com, which answered 403, so the lowest-tier maker and taker fees are unchecked",
          "status.deribit.com did not resolve for our reader and Coinbase's status page has no Deribit component we could find, so the incident record is unchecked",
          "The HTTP authentication example sends `client_secret` in the query string",
          "Breaking changes such as the 15 September 2026 change to `user.changes` carry no notice period in the changelog"
        ],
        "agentNotes": [
          "Create the key with `trade:read_write` and `wallet:none`, an `ip:` limit and an `expires` value; keep `account:read` unless the task edits subaccounts",
          "Authenticate with `client_signature` or an Ed25519 key over WebSocket rather than `client_credentials` over HTTP, which puts the secret in the URL",
          "Watch the `limits` field of `private/get_account_summary` and back off on error 10028; a session that runs out of credits is closed and must reconnect",
          "Send a `nonce` with orders so a retry after a timeout does not place a second order, and treat `order_not_found` on cancel as a possible fill",
          "Develop against https://test.deribit.com/api/v2 first; production and test need separate accounts and keys"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 65,
          "payments": 25,
          "reliability": 45,
          "schema": 88,
          "security": 62,
          "transparency": 22
        },
        "provenanceScore": 69,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl 'https://test.deribit.com/api/v2/public/get_order_book?instrument_name=BTC-PERPETUAL\u0026depth=5'"
      },
      "letme": {
        "capability": "https://letme.dev/exchange.derivatives",
        "tool": "https://letme.dev/deribit"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Perpetual and futures taker fee, VIP4 tier",
          "unit": "pct",
          "usd": 0.0175,
          "note": "1.75 bps from 19 October 2026 per Deribit's post of 14 October 2026. Base-tier fees unchecked"
        }
      ],
      "provenance": {
        "legalEntity": "Deribit FZE",
        "domain": "deribit.com",
        "domainRegistered": "2014-01-15",
        "endpointOnVendorDomain": true,
        "terms": "https://support.deribit.com/hc/en-us/articles/25944532191645-Deribit-Exchange-Membership-Terms-Deribit-FZE",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://docs.deribit.com/changelogs/jsonrpc",
        "securityTxt": "unknown",
        "checked": "2026-11-03",
        "notes": [
          "Deribit FZE is on VARA's public register, licence VL/23/12/002, active, issued 1 November 2024. Deribit's own post of 29 November 2024 says institutional and qualified investors contract with Deribit FZE and retail clients with DRB Panama, a broker member.",
          "The terms URL comes from a search result title (Deribit Exchange Membership Terms, Deribit FZE, version 26 January 2026); support.deribit.com answered 403 to our reader, so the terms, the privacy policy and the fee and restricted-jurisdictions articles were not read.",
          "RDAP gives deribit.com a registration date of 15 January 2014, registrar MarkMonitor.",
          "status.deribit.com did not resolve on 3 November 2026 and Coinbase's status page showed no Deribit component or incident, so no status page is recorded.",
          "https://www.deribit.com/.well-known/security.txt answered an HTML page with only the site title, so security.txt is unknown. Deribit's bug bounty runs on HackerOne per the support article title and HackerOne's customer story; insights.deribit.com/bug-bounty answered 403.",
          "docs.deribit.com/robots.txt allows everything but /cdn-cgi/ and /_next/, with Content-Signal ai-input=yes. support.deribit.com's robots.txt allows article pages; the 403 is the site's answer, not a robots rule."
        ],
        "score": 69
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/deribit.json",
      "live": {
        "slug": "deribit",
        "securityTxt": {
          "url": "https://deribit.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:54:13.971728133Z"
        },
        "updatedAt": "2026-11-04T15:54:13.971728133Z"
      }
    },
    "answer": "dYdX scores 69.5 (B) on agent readiness against Deribit's 59 (C), and leads in 5 of 7 scored categories. Deribit leads on schema \u0026 documentation and agent ergonomics.",
    "b": {
      "slug": "dydx",
      "name": "dYdX",
      "vendor": "dYdX Trading Inc.",
      "vendorUrl": "https://www.dydx.xyz",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "dYdX is a perpetuals exchange on its own Cosmos chain. Agents read markets and accounts from the indexer REST and WebSocket API at indexer.dydx.trade and place orders as signed chain transactions through the official TypeScript, Python and Rust clients.",
      "url": "https://www.anchorterminal.com/tools/dydx",
      "markdownUrl": "https://www.anchorterminal.com/tools/dydx.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/dydx.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/dydx.json",
      "dns": "dydx.grade.anchorterminal.com",
      "repo": "https://github.com/dydxprotocol/v4-clients",
      "license": "The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc.",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@dydxprotocol/v4-client-js"
        },
        {
          "registry": "pypi",
          "name": "dydx-v4-client"
        }
      ],
      "auth": "mixed",
      "authNotes": "Indexer reads need no credential. Orders, cancels and transfers are chain messages signed with the account's key (a mnemonic or private key in the clients). Permissioned keys let an owner add an authenticator that lets another key act within limits, composed from SignatureVerification, MessageFilter (for example only /dydxprotocol.clob.MsgPlaceOrder), SubaccountFilter and ClobPairIdFilter under AllOf or AnyOf, and removed with remove_authenticator. The dydx.trade interface generates an API wallet with default permission to trade all cross-margin pairs and shows its private key once (https://docs.dydx.xyz/concepts/trading/authenticators, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The indexer and clients have no charge. Trading fees at the lowest tier (under $1 million of 30-day volume) are 5.0 bps taker and 1.0 bps maker, set by governance, uniform across markets, with gas on each transaction; fees flow to validators and stakers (https://docs.dydx.xyz/concepts/trading/rewards, checked 2026-11-03).",
      "priceSummary": "0.05% fee",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or clients (checked 2026-11-03). Accounts are funded with USDC through Noble or an onboarding partner.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": 119,
        "npmWeekly": 86394,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://docs.dydx.xyz/",
      "llmsTxt": "https://docs.dydx.xyz/llms.txt",
      "capabilities": [
        "exchange.derivatives",
        "exchange.market-data",
        "exchange.balances",
        "exchange.transfers",
        "exchange.staking",
        "market.crypto",
        "wallet.onchain"
      ],
      "tags": [
        "official",
        "hosted",
        "open-source",
        "llms-txt",
        "typescript",
        "python",
        "rust",
        "sandbox",
        "usage-priced",
        "status-page",
        "bug-bounty",
        "no-key",
        "rest"
      ],
      "lastRelease": "2026-10-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.5,
        "grade": "B",
        "agentReady": false,
        "rank": 221,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 3,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 83,
          "payments": 60,
          "reliability": 83,
          "schema": 58,
          "security": 78,
          "transparency": 50
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "dYdX gives an agent keyless indexer reads, permissioned keys limited by message type, subaccount and market, a Statuspage with a clean 90 days, published fees and a testnet with a faucet. There is no official MCP server or OpenAPI file, orders are chain transactions signed by the clients, and no one entity operates the hosted endpoints.",
        "bestFor": "An agent trading perpetuals from its own Cosmos wallet or through a permissioned key on an owner's account, outside the US, Canada and UK.",
        "strengths": [
          "Permissioned keys limit a delegated key to chosen message types, subaccounts and markets, exclude withdrawals and transfers, and are removed with `remove_authenticator`",
          "status.dydx.trade lists Indexer, Chain, Order Gateway and Client Libraries components, with only maintenance windows and one partner deposit delay in the last 90 days",
          "Fees public at 5.0 bps taker and 1.0 bps maker at the lowest tier, with rate limits and block limits stated with numbers",
          "Official TypeScript, Python and Rust clients with CI and trusted publishing, and a testnet with a faucet",
          "A Cantina bug bounty up to $1,000,000 sponsored by dYdX Trading Inc. covering the protocol, indexer, web client and client SDKs"
        ],
        "weaknesses": [
          "No official MCP server; the one registry entry is a third party's analytics server",
          "No OpenAPI file for the indexer; error responses are described by HTTP status only, and chain rejections surface as transaction results",
          "No 429 handling or Retry-After documented for the indexer; permissioned keys cannot cap position or order size",
          "The hosted indexer and front end are run by unnamed third parties; dYdX Trading Inc. says it runs none of the components",
          "Restricted to persons outside the United States, Canada and the United Kingdom, with geo-blocking left to each integrator"
        ],
        "agentNotes": [
          "Ask the account owner for an authenticator limited to `/dydxprotocol.clob.MsgPlaceOrder` and `MsgCancelOrder` on one subaccount, and keep its private key out of prompts",
          "Set a unique 32-bit `clientId` on every order and look it up on `/v4/orders` after a timeout; short-term orders expire with `goodTilBlock` (at most 20 blocks ahead)",
          "Stay under 2 stateful orders a block and 20 per 100 blocks; failed placements count, so use short-term orders for active trading",
          "Enable permessage-deflate on the indexer WebSocket; since 26 October 2026 connections without compression may be refused with 426",
          "Check `/v4/geo` and the compliance screen before trading for a person, since the terms exclude the United States, Canada and the United Kingdom"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.5
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 83,
          "payments": 60,
          "reliability": 83,
          "schema": 58,
          "security": 78,
          "transparency": 50
        },
        "provenanceScore": 50,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install @dydxprotocol/v4-client-js",
        "http": "curl https://indexer.dydx.trade/v4/orderbooks/perpetualMarket/ETH-USD"
      },
      "letme": {
        "capability": "https://letme.dev/exchange.derivatives",
        "tool": "https://letme.dev/dydx"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Taker fee, tier 1",
          "unit": "pct",
          "usd": 0.05,
          "note": "5.0 bps of notional; maker 1.0 bps"
        }
      ],
      "provenance": {
        "legalEntity": "dYdX Trading Inc.",
        "domain": "dydx.xyz",
        "domainRegistered": "",
        "endpointOnVendorDomain": false,
        "terms": "https://dydx.exchange/v4-terms",
        "privacy": "https://www.dydx.xyz/legal/privacy-policy",
        "statusPage": "https://status.dydx.trade",
        "changelog": "",
        "securityTxt": "unknown",
        "checked": "2026-11-03",
        "notes": [
          "dYdX Trading Inc. is the entity in the v4 Terms of Use (last updated 12 March 2026), the clients' licence and the Cantina bug bounty. dydx.xyz's terms and privacy policy (6 June 2025) name dYdX International Ltd, Cayman Islands, and its footer reads dYdX International Ltd.",
          "The indexer at indexer.dydx.trade is not on dydx.xyz and the docs say dYdX Trading Inc. runs none of the hosted components, so the endpoint is recorded as off the vendor's domain.",
          "RDAP for dydx.trade answered 404 at the Identity Digital and rdap.org services, so the domain age is unchecked; the vendor domain dydx.xyz was not queried.",
          "status.dydx.trade is an Atlassian Statuspage with five components and an RSS history; its robots.txt disallows /api/ and /embed/, so the history was read from /history.rss.",
          "https://dydx.trade/.well-known/security.txt answered the app's HTML page, so security.txt is unknown. No API changelog; protocol upgrades appear as status maintenance entries."
        ],
        "score": 50
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/dydx.json",
      "live": {
        "slug": "dydx",
        "vendorStatus": {
          "page": "https://status.dydx.trade",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-04T20:05:06.117120724Z"
        },
        "securityTxt": {
          "url": "https://dydx.xyz/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:54:03.349495473Z"
        },
        "updatedAt": "2026-11-04T20:05:06.117120724Z"
      }
    },
    "edges": [
      {
        "by": 38,
        "category": "reliability",
        "leads": "dydx",
        "name": "Reliability",
        "reasons": {
          "a": "Read with the hosted lines on the JSON-RPC API. status.deribit.com did not resolve for our reader on 3 November 2026 and Coinbase's status page showed no Deribit component, so no status page is scored, with the unchecked line below (0). No readable history (5). Rate limits are documented with numbers, 50,000 credits per sub-account refilled at 10,000 a second, and matching-engine tiers of 5 to 30 requests a second by 7-day volume (15). Error 10028 ends the session and the errors page says to back off exponentially; 10040 means retry; the 6 May 2026 release added a `nonce` for idempotent orders (15). No SLA found (0). The API is generally available; only Starbase is limited to selected clients (10). 0 + 5 + 15 + 15 + 0 + 10 = 45.",
          "b": "Read with the hosted lines on the indexer API and the chain endpoints the clients submit to. status.dydx.trade is an Atlassian Statuspage with Frontends, dYdX Chain, Indexer, Order Gateway and Client Libraries components and an RSS history (20). From 1 August to 3 November 2026 the feed has eight items, seven scheduled maintenance windows of 29 minutes to 2 hours (indexer on 9 September, 8 and 15 October, protocol v9.7 on 11 September and v9.8.0 on 12 October, WebSocket compression on 26 and 28 October) and one degraded instant-deposit path through an onboarding partner from 24 to 29 September, outside the trading API. Clean or trivial (30). Rate limits documented with numbers for the indexer, the block limits and the public nodes (15). No 429 shape or Retry-After for the indexer; short-term orders expire by `goodTilBlock` and client IDs let an agent find an order after a timeout (8 of 15). No SLA (0). Mainnet generally available; the Order Entry Gateway is marked testnet-only (10). 20 + 30 + 15 + 8 + 0 + 10 = 83."
        },
        "scores": {
          "a": 45,
          "b": 83
        }
      },
      {
        "by": 35,
        "category": "payments",
        "leads": "dydx",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No machine payment protocol (0). The fee schedule is on support.deribit.com, which answered 403; Deribit's own posts give VIP4 to VIP7 taker fees and the 0 bps linear options maker fee, so partial prices are public but the lowest tier is unchecked (5 of 20). Public market data needs no key and the test environment is free, with no card anywhere (20). A person signs up in a browser with identity checks before any key exists (0). Total 25.",
          "b": "No machine payment protocol (0). Fees public per tier without login (20). Testnet with a faucet and no card anywhere (20). No signup; an agent with a funded wallet trades, subject to the geographic terms (20). Total 60."
        },
        "scores": {
          "a": 25,
          "b": 60
        }
      },
      {
        "by": 30,
        "category": "schema",
        "leads": "deribit",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "OpenAPI 3.0.0 for the whole JSON-RPC surface (Deribit API 2.1.1, about 1.4 million characters) plus AsyncAPI files for the WebSocket side (25). llms.txt with production and upcoming indexes, and a Markdown twin of every page (10). Each operation has a description such as \"Places a buy order for an instrument.\" with parameter notes, and the articles say when to use WebSocket subscriptions over polling, but the reference seldom says when not to use a method (13 of 20). Parameters are typed with enums (order `type` has eight values, `time_in_force` four) and required flags, with `amount` or `contracts` as a documented either-or (13 of 15). Every reference page carries an example request and response, and the errors page lists about 159 codes with retry guidance, though most operations document only a 200 response and the smaller error tables disagree with the full one on two codes (12 of 15). A versioned path (/api/v2), a production and an upcoming docs branch, and a dated changelog of 64 entries since 21 January 2020 (15). Total 88.",
          "b": "No OpenAPI file found for the indexer; the docs publish a types reference of about 200 pages (OrderSide, TimeInForce, OrderStatus and the rest) and the chain's protobuf messages are in the clients (8 of 25). llms.txt and Markdown docs (10). Endpoint pages describe each call and the guides say when to use short-term against long-term orders and the indexer against the node, but descriptions are short (12 of 20). Enums and types on every field in the reference, with pagination and cursor parameters typed (11 of 15). Examples in Python, TypeScript and Rust for each step; errors are described by HTTP status (400 malformed, 404 not found) with no code list (9 of 15). A /v4 path, protocol releases dated on the status page, deprecated rate-limit fields marked, but no API changelog (8 of 15). Total 58."
        },
        "scores": {
          "a": 88,
          "b": 58
        }
      },
      {
        "by": 18,
        "category": "maintenance",
        "leads": "dydx",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a closed service. The JSON-RPC changelog's latest production entry is 13 October 2026 and an entry dated 5 November 2026 describes the next release; Deribit's posts of 14 October and 2 November 2026 change fees (30). Entries of 18 August, 15 September and 13 October 2026, three in 90 days (20). A public changelog and a support site; whether support answers wasn't tested and the support site refused our reader (10 of 15). No official SDK and no MCP registry entry (0). The OpenAPI and AsyncAPI files are maintained with the docs (5 of 10). Total 65.",
          "b": "Read on the clients and the chain. v4-clients was pushed on 29 October 2026 and protocol v9.8.0 shipped on 12 October (30). Protocol v9.7 on 11 September, v9.8.0 on 12 October, v4-client-js tags 3.5.0 and 3.6.0, three or more in 90 days (20). A Discord, a help centre and 36 open issues on v4-clients whose replies couldn't be read (12 of 25). Official SDKs current, the TypeScript client at 3.6.0 and the Python client at 1.1.6 from February 2026 (12 of 15). CI workflows for lint, test, publish and audit, with trusted publishing and provenance on npm (9 of 10). Total 83."
        },
        "scores": {
          "a": 65,
          "b": 83
        }
      },
      {
        "by": 16,
        "category": "security",
        "leads": "dydx",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Keys carry five scopes at read, read_write or none, `ip:ADDR` and `expires` limits, can be disabled, reset and removed by API, and self-generated Ed25519 or RSA keys keep the private half off Deribit. The HTTP `client_credentials` example passes `client_secret` in the query string, a documented option, so 10 off (20 of 30). `trade:read` and `wallet:none` give read-only and no-withdrawal keys and the 5 August 2025 release stopped `account:read` keys reading other keys' secrets; no per-order confirmation and the address allow-list article was unreadable (16 of 20). The API returns no untrusted content (10). `private/list_api_keys`, the transaction log and order history let an operator see what a key did, but no per-key call log was found (8 of 15). A HackerOne bug bounty per the support article title and HackerOne's customer story, neither page read first-hand (insights.deribit.com/bug-bounty answered 403), a VARA licence, and no security.txt on www.deribit.com (8 of 20). Total 62.",
          "b": "Orders are signed by the account key or by a permissioned key the owner adds as an authenticator, limited by message type, subaccount and market with AllOf or AnyOf, and revoked by `remove_authenticator`; no shared secret and nothing in a URL (28 of 30). A key can be confined to placing and cancelling orders on one subaccount with withdrawals and transfers excluded, though not to a position or order size, and the interface's default API wallet trades all cross-margin pairs (16 of 20). The API returns no untrusted content (10). Every action is a chain transaction and the indexer lists fills, orders and transfers per subaccount, and authenticators can be listed; no per-key log (10 of 15). A Cantina bug bounty up to $1,000,000 sponsored by dYdX Trading Inc. over the protocol, indexer, web client and SDKs, an Informal Systems audit; no security.txt and no certification (14 of 20). Total 78."
        },
        "scores": {
          "a": 62,
          "b": 78
        }
      },
      {
        "by": 8,
        "category": "ergonomics",
        "leads": "deribit",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "An API, read for response sizing. `public/get_order_book` takes `depth`, `get_instruments` filters by currency and kind, and history methods take `count` and `offset`, though `get_instruments` returns every instrument for a currency and costs 10,000 credits (18 of 25). Count and offset pagination, time ranges on trade and transaction logs, and WebSocket channels with interval and depth options (16 of 20). Numeric error codes with short names, a `wait` value on some errors, and sample code that branches on them (18 of 20). A `nonce` on orders since May 2026 returns the existing order on retry, a `label` lets an agent find its own orders, and 10040 marks the calls safe to retry; no MCP annotations apply (16 of 20). Few required parameters and sensible defaults (limit and good_til_cancelled), but no official SDK in any language, so every caller signs and frames JSON-RPC itself (6 of 15). Total 74.",
          "b": "An API, read for response sizing. `limit` on list endpoints, candles by resolution, sparklines by period; the order book comes whole (16 of 25). `limit`, `page` on fills, transfers and funding, and height or time cursors (16 of 20). Indexer errors are a status and a sentence; order rejections come back from the chain as transaction results the clients surface (8 of 20). Unique 32-bit client IDs, `goodTilBlock` expiry on short-term orders, cancel by order ID; no MCP annotations apply (14 of 20). Few required fields with market parameters fetched for unit conversion, and official clients in TypeScript, Python and Rust (12 of 15). Total 66."
        },
        "scores": {
          "a": 74,
          "b": 66
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Deribit FZE",
        "b": "dYdX Trading Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary hosted exchange. The API is documented under the Deribit docs with an OpenAPI 3.0 file; no official client library is published",
        "b": "The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc.",
        "name": "Licence"
      },
      {
        "a": "0",
        "b": "0",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-13",
        "b": "2026-10-29",
        "name": "Last release"
      },
      {
        "a": "2026-08-13",
        "b": "2026-03-12",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2025-06-06",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "119 stars, 86k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "dYdX scores 69.5 (B) on agent readiness against Deribit's 59 (C), and leads in 5 of 7 scored categories. Deribit leads on schema \u0026 documentation and agent ergonomics.",
        "question": "Which is better for AI agents, Deribit or dYdX?"
      },
      {
        "answer": "Deribit needs an API key. dYdX takes an API key or an OAuth sign-in.",
        "question": "Do Deribit and dYdX need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Deribit. No hosted endpoint is listed for dYdX.",
        "question": "Can an agent call Deribit and dYdX without installing anything?"
      },
      {
        "answer": "No open-source release is listed for Deribit. dYdX is open source (The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc.).",
        "question": "Are Deribit and dYdX open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 88 against 58",
          "Agent ergonomics, 74 against 66"
        ],
        "also": null,
        "goodFor": "An agent trading crypto options, dated futures and perpetuals for an institutional or retail Deribit account, and anyone migrated from Coinbase International Exchange.",
        "slug": "deribit",
        "watchFor": "No official MCP server, and the GitHub organisation has no public repositories, so no official SDK in any language"
      },
      {
        "aheadOn": [
          "Reliability, 83 against 45",
          "Security \u0026 auth, 78 against 62",
          "Payments \u0026 pricing, 60 against 25",
          "Maintenance \u0026 community, 83 against 65"
        ],
        "also": [
          "Open source"
        ],
        "goodFor": "An agent trading perpetuals from its own Cosmos wallet or through a permissioned key on an owner's account, outside the US, Canada and UK.",
        "slug": "dydx",
        "watchFor": "No official MCP server; the one registry entry is a third party's analytics server"
      }
    ],
    "history": null,
    "job": {
      "capability": "exchange.derivatives",
      "name": "Exchange derivatives"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-deribit.json",
        "title": "Bitfinex API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-dydx.json",
        "title": "Bitfinex API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-deribit.json",
        "title": "Bitget vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-dydx.json",
        "title": "Bitget vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-deribit.json",
        "title": "Bithumb Open API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-dydx.json",
        "title": "Bithumb Open API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-deribit.json",
        "title": "Bitstamp API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-dydx.json",
        "title": "Bitstamp API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-deribit.json",
        "title": "Bybit vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-dydx.json",
        "title": "Bybit vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-deribit.json",
        "title": "Crypto.com Exchange API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-dydx.json",
        "title": "Crypto.com Exchange API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-upbit.json",
        "title": "Deribit vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-uniswap.json",
        "title": "dYdX vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-upbit.json",
        "title": "dYdX vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-deribit.json",
        "title": "Binance API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/binance-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-deribit.json",
        "title": "Coinbase Advanced Trade API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-deribit.json",
        "title": "Coinbase MCP server (Coinbase for Agents) vs Deribit",
        "url": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-uniswap.json",
        "title": "Deribit vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-dydx.json",
        "title": "Binance API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/binance-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-dydx.json",
        "title": "Coinbase Advanced Trade API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-gate-io.json",
        "title": "Deribit vs Gate",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-gemini-exchange.json",
        "title": "Deribit vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-htx.json",
        "title": "Deribit vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-hyperliquid.json",
        "title": "Deribit vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-kraken.json",
        "title": "Deribit vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-kucoin.json",
        "title": "Deribit vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-kucoin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-mexc.json",
        "title": "Deribit vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-okx.json",
        "title": "Deribit vs OKX API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-gate-io.json",
        "title": "dYdX vs Gate",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-gemini-exchange.json",
        "title": "dYdX vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-htx.json",
        "title": "dYdX vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-hyperliquid.json",
        "title": "dYdX vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-kraken.json",
        "title": "dYdX vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-kucoin.json",
        "title": "dYdX vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-kucoin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-mexc.json",
        "title": "dYdX vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-okx.json",
        "title": "dYdX vs OKX API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-dydx.json",
        "title": "Coinbase MCP server (Coinbase for Agents) vs dYdX",
        "url": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-dydx"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 38,
        "deribit": 45,
        "dydx": 83,
        "edge": "dydx",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 30,
        "deribit": 88,
        "dydx": 58,
        "edge": "deribit",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 8,
        "deribit": 74,
        "dydx": 66,
        "edge": "deribit",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 16,
        "deribit": 62,
        "dydx": 78,
        "edge": "dydx",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 35,
        "deribit": 25,
        "dydx": 60,
        "edge": "dydx",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 18,
        "deribit": 65,
        "dydx": 83,
        "edge": "dydx",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 4,
        "deribit": 46,
        "dydx": 50,
        "edge": "dydx",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "dYdX scores 69.5 (B) on agent readiness against Deribit's 59 (C), and leads in 5 of 7 scored categories. Deribit leads on schema \u0026 documentation and agent ergonomics. Both do exchange derivatives.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "deribit": "Deribit's JSON-RPC API has scoped keys with IP and expiry limits, asymmetric signing, an OpenAPI file, numeric rate limits and a 64-entry changelog. There is no official MCP server or client library, the fee schedule, terms and privacy policy sit on a support site that refused our reader, and the status page did not resolve.",
      "dydx": "dYdX gives an agent keyless indexer reads, permissioned keys limited by message type, subaccount and market, a Statuspage with a clean 90 days, published fees and a testnet with a faucet. There is no official MCP server or OpenAPI file, orders are chain transactions signed by the clients, and no one entity operates the hosted endpoints."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/deribit-vs-dydx",
    "json": "https://www.anchorterminal.com/compare/deribit-vs-dydx.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/deribit-vs-dydx.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/deribit-vs-dydx.min.md"
  },
  "markdown": "dYdX scores 69.5 (B) on agent readiness against Deribit's 59 (C), and leads in 5 of 7 scored categories. Deribit leads on schema \u0026 documentation and agent ergonomics. Both do exchange derivatives.\n\n- Deribit: grade C, 59/100, rank #650 of 1349. Markdown https://www.anchorterminal.com/tools/deribit.md · JSON https://www.anchorterminal.com/api/v1/tools/deribit.json\n- dYdX: grade B, 69.5/100, rank #221 of 1349. Markdown https://www.anchorterminal.com/tools/dydx.md · JSON https://www.anchorterminal.com/api/v1/tools/dydx.json\n- Best crypto exchange APIs and MCP servers for AI agents: https://www.anchorterminal.com/best/crypto-exchanges/index.md\n- All 210 exchanges comparisons: https://www.anchorterminal.com/compare/crypto-exchanges/index.md\n\n## Which one, for what\n\n### Deribit (C)\n\nGood for: An agent trading crypto options, dated futures and perpetuals for an institutional or retail Deribit account, and anyone migrated from Coinbase International Exchange.\n\nAhead on:\n- Schema \u0026 documentation, 88 against 58\n- Agent ergonomics, 74 against 66\n\nWatch for: No official MCP server, and the GitHub organisation has no public repositories, so no official SDK in any language\n\n### dYdX (B)\n\nGood for: An agent trading perpetuals from its own Cosmos wallet or through a permissioned key on an owner's account, outside the US, Canada and UK.\n\nAhead on:\n- Reliability, 83 against 45\n- Security \u0026 auth, 78 against 62\n- Payments \u0026 pricing, 60 against 25\n- Maintenance \u0026 community, 83 against 65\n\nAlso in its favour:\n- Open source\n\nWatch for: No official MCP server; the one registry entry is a third party's analytics server\n\n\n## Why the edge\n\n### Reliability: dYdX +38\n\n- Deribit (45): Read with the hosted lines on the JSON-RPC API. status.deribit.com did not resolve for our reader on 3 November 2026 and Coinbase's status page showed no Deribit component, so no status page is scored, with the unchecked line below (0). No readable history (5). Rate limits are documented with numbers, 50,000 credits per sub-account refilled at 10,000 a second, and matching-engine tiers of 5 to 30 requests a second by 7-day volume (15). Error 10028 ends the session and the errors page says to back off exponentially; 10040 means retry; the 6 May 2026 release added a `nonce` for idempotent orders (15). No SLA found (0). The API is generally available; only Starbase is limited to selected clients (10). 0 + 5 + 15 + 15 + 0 + 10 = 45.\n- dYdX (83): Read with the hosted lines on the indexer API and the chain endpoints the clients submit to. status.dydx.trade is an Atlassian Statuspage with Frontends, dYdX Chain, Indexer, Order Gateway and Client Libraries components and an RSS history (20). From 1 August to 3 November 2026 the feed has eight items, seven scheduled maintenance windows of 29 minutes to 2 hours (indexer on 9 September, 8 and 15 October, protocol v9.7 on 11 September and v9.8.0 on 12 October, WebSocket compression on 26 and 28 October) and one degraded instant-deposit path through an onboarding partner from 24 to 29 September, outside the trading API. Clean or trivial (30). Rate limits documented with numbers for the indexer, the block limits and the public nodes (15). No 429 shape or Retry-After for the indexer; short-term orders expire by `goodTilBlock` and client IDs let an agent find an order after a timeout (8 of 15). No SLA (0). Mainnet generally available; the Order Entry Gateway is marked testnet-only (10). 20 + 30 + 15 + 8 + 0 + 10 = 83.\n\n### Payments \u0026 pricing: dYdX +35\n\n- Deribit (25): No machine payment protocol (0). The fee schedule is on support.deribit.com, which answered 403; Deribit's own posts give VIP4 to VIP7 taker fees and the 0 bps linear options maker fee, so partial prices are public but the lowest tier is unchecked (5 of 20). Public market data needs no key and the test environment is free, with no card anywhere (20). A person signs up in a browser with identity checks before any key exists (0). Total 25.\n- dYdX (60): No machine payment protocol (0). Fees public per tier without login (20). Testnet with a faucet and no card anywhere (20). No signup; an agent with a funded wallet trades, subject to the geographic terms (20). Total 60.\n\n### Schema \u0026 documentation: Deribit +30\n\n- Deribit (88): OpenAPI 3.0.0 for the whole JSON-RPC surface (Deribit API 2.1.1, about 1.4 million characters) plus AsyncAPI files for the WebSocket side (25). llms.txt with production and upcoming indexes, and a Markdown twin of every page (10). Each operation has a description such as \"Places a buy order for an instrument.\" with parameter notes, and the articles say when to use WebSocket subscriptions over polling, but the reference seldom says when not to use a method (13 of 20). Parameters are typed with enums (order `type` has eight values, `time_in_force` four) and required flags, with `amount` or `contracts` as a documented either-or (13 of 15). Every reference page carries an example request and response, and the errors page lists about 159 codes with retry guidance, though most operations document only a 200 response and the smaller error tables disagree with the full one on two codes (12 of 15). A versioned path (/api/v2), a production and an upcoming docs branch, and a dated changelog of 64 entries since 21 January 2020 (15). Total 88.\n- dYdX (58): No OpenAPI file found for the indexer; the docs publish a types reference of about 200 pages (OrderSide, TimeInForce, OrderStatus and the rest) and the chain's protobuf messages are in the clients (8 of 25). llms.txt and Markdown docs (10). Endpoint pages describe each call and the guides say when to use short-term against long-term orders and the indexer against the node, but descriptions are short (12 of 20). Enums and types on every field in the reference, with pagination and cursor parameters typed (11 of 15). Examples in Python, TypeScript and Rust for each step; errors are described by HTTP status (400 malformed, 404 not found) with no code list (9 of 15). A /v4 path, protocol releases dated on the status page, deprecated rate-limit fields marked, but no API changelog (8 of 15). Total 58.\n\n### Maintenance \u0026 community: dYdX +18\n\n- Deribit (65): Read as a closed service. The JSON-RPC changelog's latest production entry is 13 October 2026 and an entry dated 5 November 2026 describes the next release; Deribit's posts of 14 October and 2 November 2026 change fees (30). Entries of 18 August, 15 September and 13 October 2026, three in 90 days (20). A public changelog and a support site; whether support answers wasn't tested and the support site refused our reader (10 of 15). No official SDK and no MCP registry entry (0). The OpenAPI and AsyncAPI files are maintained with the docs (5 of 10). Total 65.\n- dYdX (83): Read on the clients and the chain. v4-clients was pushed on 29 October 2026 and protocol v9.8.0 shipped on 12 October (30). Protocol v9.7 on 11 September, v9.8.0 on 12 October, v4-client-js tags 3.5.0 and 3.6.0, three or more in 90 days (20). A Discord, a help centre and 36 open issues on v4-clients whose replies couldn't be read (12 of 25). Official SDKs current, the TypeScript client at 3.6.0 and the Python client at 1.1.6 from February 2026 (12 of 15). CI workflows for lint, test, publish and audit, with trusted publishing and provenance on npm (9 of 10). Total 83.\n\n### Security \u0026 auth: dYdX +16\n\n- Deribit (62): Keys carry five scopes at read, read_write or none, `ip:ADDR` and `expires` limits, can be disabled, reset and removed by API, and self-generated Ed25519 or RSA keys keep the private half off Deribit. The HTTP `client_credentials` example passes `client_secret` in the query string, a documented option, so 10 off (20 of 30). `trade:read` and `wallet:none` give read-only and no-withdrawal keys and the 5 August 2025 release stopped `account:read` keys reading other keys' secrets; no per-order confirmation and the address allow-list article was unreadable (16 of 20). The API returns no untrusted content (10). `private/list_api_keys`, the transaction log and order history let an operator see what a key did, but no per-key call log was found (8 of 15). A HackerOne bug bounty per the support article title and HackerOne's customer story, neither page read first-hand (insights.deribit.com/bug-bounty answered 403), a VARA licence, and no security.txt on www.deribit.com (8 of 20). Total 62.\n- dYdX (78): Orders are signed by the account key or by a permissioned key the owner adds as an authenticator, limited by message type, subaccount and market with AllOf or AnyOf, and revoked by `remove_authenticator`; no shared secret and nothing in a URL (28 of 30). A key can be confined to placing and cancelling orders on one subaccount with withdrawals and transfers excluded, though not to a position or order size, and the interface's default API wallet trades all cross-margin pairs (16 of 20). The API returns no untrusted content (10). Every action is a chain transaction and the indexer lists fills, orders and transfers per subaccount, and authenticators can be listed; no per-key log (10 of 15). A Cantina bug bounty up to $1,000,000 sponsored by dYdX Trading Inc. over the protocol, indexer, web client and SDKs, an Informal Systems audit; no security.txt and no certification (14 of 20). Total 78.\n\n### Agent ergonomics: Deribit +8\n\n- Deribit (74): An API, read for response sizing. `public/get_order_book` takes `depth`, `get_instruments` filters by currency and kind, and history methods take `count` and `offset`, though `get_instruments` returns every instrument for a currency and costs 10,000 credits (18 of 25). Count and offset pagination, time ranges on trade and transaction logs, and WebSocket channels with interval and depth options (16 of 20). Numeric error codes with short names, a `wait` value on some errors, and sample code that branches on them (18 of 20). A `nonce` on orders since May 2026 returns the existing order on retry, a `label` lets an agent find its own orders, and 10040 marks the calls safe to retry; no MCP annotations apply (16 of 20). Few required parameters and sensible defaults (limit and good_til_cancelled), but no official SDK in any language, so every caller signs and frames JSON-RPC itself (6 of 15). Total 74.\n- dYdX (66): An API, read for response sizing. `limit` on list endpoints, candles by resolution, sparklines by period; the order book comes whole (16 of 25). `limit`, `page` on fills, transfers and funding, and height or time cursors (16 of 20). Indexer errors are a status and a sentence; order rejections come back from the chain as transaction results the clients surface (8 of 20). Unique 32-bit client IDs, `goodTilBlock` expiry on short-term orders, cancel by order ID; no MCP annotations apply (14 of 20). Few required fields with market parameters fetched for unit conversion, and official clients in TypeScript, Python and Rust (12 of 15). Total 66.\n\n## Score by category\n\n| Category | Weight | Deribit | dYdX | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 45 | 83 | dYdX +38 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 88 | 58 | Deribit +30 |\n| Agent ergonomics | 13% (16.2 this run) | 74 | 66 | Deribit +8 |\n| Security \u0026 auth | 14% (17.5 this run) | 62 | 78 | dYdX +16 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 25 | 60 | dYdX +35 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 65 | 83 | dYdX +18 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 46 | 50 | dYdX +4 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **59 · C** | **69.5 · B** | |\n\n## Facts side by side\n\n| Fact | Deribit | dYdX |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Deribit FZE | dYdX Trading Inc. |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | API key | OAuth or key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary hosted exchange. The API is documented under the Deribit docs with an OpenAPI 3.0 file; no official client library is published | The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc. |\n| Tools exposed | 0 | 0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-13 | 2026-10-29 |\n| Terms last updated | 2026-08-13 | 2026-03-12 |\n| Privacy policy last updated | no document linked | 2025-06-06 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | none | 119 stars, 86k npm/wk |\n\n## Verdicts\n\n**Deribit.** Deribit's JSON-RPC API has scoped keys with IP and expiry limits, asymmetric signing, an OpenAPI file, numeric rate limits and a 64-entry changelog. There is no official MCP server or client library, the fee schedule, terms and privacy policy sit on a support site that refused our reader, and the status page did not resolve.\n\n**dYdX.** dYdX gives an agent keyless indexer reads, permissioned keys limited by message type, subaccount and market, a Statuspage with a clean 90 days, published fees and a testnet with a faucet. There is no official MCP server or OpenAPI file, orders are chain transactions signed by the clients, and no one entity operates the hosted endpoints.\n\n## Before you call either\n\n### Deribit\n\n1. Create the key with `trade:read_write` and `wallet:none`, an `ip:` limit and an `expires` value; keep `account:read` unless the task edits subaccounts\n2. Authenticate with `client_signature` or an Ed25519 key over WebSocket rather than `client_credentials` over HTTP, which puts the secret in the URL\n3. Watch the `limits` field of `private/get_account_summary` and back off on error 10028; a session that runs out of credits is closed and must reconnect\n4. Send a `nonce` with orders so a retry after a timeout does not place a second order, and treat `order_not_found` on cancel as a possible fill\n5. Develop against https://test.deribit.com/api/v2 first; production and test need separate accounts and keys\n\n### dYdX\n\n1. Ask the account owner for an authenticator limited to `/dydxprotocol.clob.MsgPlaceOrder` and `MsgCancelOrder` on one subaccount, and keep its private key out of prompts\n2. Set a unique 32-bit `clientId` on every order and look it up on `/v4/orders` after a timeout; short-term orders expire with `goodTilBlock` (at most 20 blocks ahead)\n3. Stay under 2 stateful orders a block and 20 per 100 blocks; failed placements count, so use short-term orders for active trading\n4. Enable permessage-deflate on the indexer WebSocket; since 26 October 2026 connections without compression may be refused with 426\n5. Check `/v4/geo` and the compliance screen before trading for a person, since the terms exclude the United States, Canada and the United Kingdom\n\n## Questions\n\n### Which is better for AI agents, Deribit or dYdX?\n\ndYdX scores 69.5 (B) on agent readiness against Deribit's 59 (C), and leads in 5 of 7 scored categories. Deribit leads on schema \u0026 documentation and agent ergonomics.\n\n### Do Deribit and dYdX need an API key?\n\nDeribit needs an API key. dYdX takes an API key or an OAuth sign-in.\n\n### Can an agent call Deribit and dYdX without installing anything?\n\nNo hosted endpoint is listed for Deribit. No hosted endpoint is listed for dYdX.\n\n### Are Deribit and dYdX open source?\n\nNo open-source release is listed for Deribit. dYdX is open source (The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc.).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/deribit-vs-dydx.json, and with the fewest tokens: https://www.anchorterminal.com/compare/deribit-vs-dydx.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"deribit\", \"b\": \"dydx\"}`. From a terminal: `anchor compare deribit dydx`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/deribit.json and https://www.anchorterminal.com/api/v1/tools/dydx.json\n\n## Other comparisons with Deribit or dYdX\n\n- [Bitfinex API vs Deribit](https://www.anchorterminal.com/compare/bitfinex-vs-deribit.md)\n- [Bitfinex API vs dYdX](https://www.anchorterminal.com/compare/bitfinex-vs-dydx.md)\n- [Bitget vs Deribit](https://www.anchorterminal.com/compare/bitget-vs-deribit.md)\n- [Bitget vs dYdX](https://www.anchorterminal.com/compare/bitget-vs-dydx.md)\n- [Bithumb Open API vs Deribit](https://www.anchorterminal.com/compare/bithumb-vs-deribit.md)\n- [Bithumb Open API vs dYdX](https://www.anchorterminal.com/compare/bithumb-vs-dydx.md)\n- [Bitstamp API vs Deribit](https://www.anchorterminal.com/compare/bitstamp-vs-deribit.md)\n- [Bitstamp API vs dYdX](https://www.anchorterminal.com/compare/bitstamp-vs-dydx.md)\n- [Bybit vs Deribit](https://www.anchorterminal.com/compare/bybit-vs-deribit.md)\n- [Bybit vs dYdX](https://www.anchorterminal.com/compare/bybit-vs-dydx.md)\n- [Crypto.com Exchange API vs Deribit](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-deribit.md)\n- [Crypto.com Exchange API vs dYdX](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-dydx.md)\n- [Deribit vs Upbit Open API](https://www.anchorterminal.com/compare/deribit-vs-upbit.md)\n- [dYdX vs Uniswap Trading API](https://www.anchorterminal.com/compare/dydx-vs-uniswap.md)\n- [dYdX vs Upbit Open API](https://www.anchorterminal.com/compare/dydx-vs-upbit.md)\n- [Binance API vs Deribit](https://www.anchorterminal.com/compare/binance-vs-deribit.md)\n- [Coinbase Advanced Trade API vs Deribit](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-deribit.md)\n- [Coinbase MCP server (Coinbase for Agents) vs Deribit](https://www.anchorterminal.com/compare/coinbase-mcp-vs-deribit.md)\n- [Deribit vs Uniswap Trading API](https://www.anchorterminal.com/compare/deribit-vs-uniswap.md)\n- [Binance API vs dYdX](https://www.anchorterminal.com/compare/binance-vs-dydx.md)\n- [Coinbase Advanced Trade API vs dYdX](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-dydx.md)\n- [Deribit vs Gate](https://www.anchorterminal.com/compare/deribit-vs-gate-io.md)\n- [Deribit vs Gemini Exchange API](https://www.anchorterminal.com/compare/deribit-vs-gemini-exchange.md)\n- [Deribit vs HTX trading API](https://www.anchorterminal.com/compare/deribit-vs-htx.md)\n- [Deribit vs Hyperliquid](https://www.anchorterminal.com/compare/deribit-vs-hyperliquid.md)\n- [Deribit vs Kraken API](https://www.anchorterminal.com/compare/deribit-vs-kraken.md)\n- [Deribit vs KuCoin](https://www.anchorterminal.com/compare/deribit-vs-kucoin.md)\n- [Deribit vs MEXC API](https://www.anchorterminal.com/compare/deribit-vs-mexc.md)\n- [Deribit vs OKX API](https://www.anchorterminal.com/compare/deribit-vs-okx.md)\n- [dYdX vs Gate](https://www.anchorterminal.com/compare/dydx-vs-gate-io.md)\n- [dYdX vs Gemini Exchange API](https://www.anchorterminal.com/compare/dydx-vs-gemini-exchange.md)\n- [dYdX vs HTX trading API](https://www.anchorterminal.com/compare/dydx-vs-htx.md)\n- [dYdX vs Hyperliquid](https://www.anchorterminal.com/compare/dydx-vs-hyperliquid.md)\n- [dYdX vs Kraken API](https://www.anchorterminal.com/compare/dydx-vs-kraken.md)\n- [dYdX vs KuCoin](https://www.anchorterminal.com/compare/dydx-vs-kucoin.md)\n- [dYdX vs MEXC API](https://www.anchorterminal.com/compare/dydx-vs-mexc.md)\n- [dYdX vs OKX API](https://www.anchorterminal.com/compare/dydx-vs-okx.md)\n- [Coinbase MCP server (Coinbase for Agents) vs dYdX](https://www.anchorterminal.com/compare/coinbase-mcp-vs-dydx.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Deribit vs dYdX",
        "url": ""
      }
    ],
    "description": "dYdX scores 69.5 (B) to Deribit's 59 (C) for exchange derivatives. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Deribit C 59",
      "dYdX B 69.5",
      "scores"
    ],
    "h1": "Deribit vs dYdX",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/deribit-vs-dydx",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Deribit vs dYdX for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-03",
    "url": "https://www.anchorterminal.com/compare/deribit-vs-dydx"
  },
  "tokens": {
    "markdown": 5200,
    "slim": 2980
  },
  "version": 1
}
