Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same Idempotency-Key with the same body answers the same policy. Required scope: hedge:manage. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.
The Venue key (trdrs_vk_sandbox_… or trdrs_vk_production_…), in preview. It belongs to one venue in one environment and carries the scopes it was created with. The venue's verified owner creates it while signed in. It works on the /api/venues/{venueId} routes and, with trader:read or trader:trade, on the account, market and trading routes, reading the venue's own traders' accounts and routing their orders, each request naming its trader in x-trdrs-trader. A trdrs_sk_… key can't be used in its place. It reaches its venue's routes and its venue's own traders, and the owner manages keys from a signed-in session. Keep it on your server.
A hedging policy you made once, picked by any of your groups. paused and stopped size and send nothing; the emergency stop stops every policy, and each resumes only when you resume it.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"trdrs Engine API","description":"Market data, trading and venue infrastructure: programmatic trading and business integrations through one documented API.","colors":{"primary":"#0a0a0a","light":"#fafafa","dark":"#0a0a0a"},"logo":{"light":"https://mintcdn.com/trdrs/VlyBylpRulgoNVYk/logo.svg?fit=max\u0026auto=format\u0026n=VlyBylpRulgoNVYk\u0026q=85\u0026s=0725a6173d2c03859de4fc3b0a99ea50","dark":"https://mintcdn.com/trdrs/VlyBylpRulgoNVYk/logo.svg?fit=max\u0026auto=format\u0026n=VlyBylpRulgoNVYk\u0026q=85\u0026s=0725a6173d2c03859de4fc3b0a99ea50"},"favicon":"https://mintcdn.com/trdrs/VlyBylpRulgoNVYk/logo.svg?fit=max\u0026auto=format\u0026n=VlyBylpRulgoNVYk\u0026q=85\u0026s=0725a6173d2c03859de4fc3b0a99ea50","api":{"playground":{"display":"simple"}},"appearance":{"default":"dark","strict":false},"background":{"color":{"light":"#ffffff","dark":"#0f0f0f"}},"navbar":{"links":[{"href":"https://trdrs.co/developers","label":"Developers"},{"href":"https://sandbox.trdrs.co/settings/api","label":"Sandbox"}],"primary":{"type":"button","label":"Get started","href":"/build"}},"fonts":{"family":"Inter"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"trdrs","hasAudioNarration":false,"actualSubdomain":"trdrs","customDomains":["docs.trdrs.co"],"gitSource":{"type":"github","owner":"trdrsco","repo":"trdrs-engine","deployBranch":"main","contentDirectory":"packages/developer-docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae8e4b9ba9f106f8addfff4","collectionId":"5d93ccc8-4996-4df4-b4ac-c75bf0ab0455","liveDeploymentHistoryId":"6ae8e4b9ba9f106f8addfff4","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6ae8e4b9ba9f106f8addfff4","clientVersion":"0.0.4045","searchFilterCounts":[{"language":"default","tag":"API reference","count":174},{"language":"default","tag":"Endpoints","count":173},{"language":"default","tag":"Venues","count":130},{"language":"default","tag":"Guides","count":47},{"language":"default","tag":"Trading","count":44},{"language":"default","tag":"Venue accounts","count":22},{"language":"default","tag":"Connect","count":21},{"language":"default","tag":"Get started","count":20},{"language":"default","tag":"Orders","count":19},{"language":"default","tag":"Hedging","count":19}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"html{font-size:90%}"}],"page":{"pagePath":"api-reference/venue-platform-preview/make-a-hedging-policy","slug":"/api-reference/venue-platform-preview/make-a-hedging-policy","pageMetadata":{"title":"Make a hedging policy","description":"Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same `Idempotency-Key` with the same body answers the same policy. Required scope: `hedge:manage`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedging-policies","href":"/api-reference/venue-platform-preview/make-a-hedging-policy","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same \", _jsx(_components.code, {\n children: \"Idempotency-Key\"\n }), \" with the same body answers the same policy. Required scope: \", _jsx(_components.code, {\n children: \"hedge:manage\"\n }), \". Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Make a hedging policy","description":"Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same `Idempotency-Key` with the same body answers the same policy. Required scope: `hedge:manage`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedging-policies","href":"/api-reference/venue-platform-preview/make-a-hedging-policy","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Venue platform preview"],"security":["25dd05b7-8cce-4eac-a70e-025c959eef28"],"summary":"Make a hedging policy","description":"Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same `Idempotency-Key` with the same body answers the same policy. Required scope: `hedge:manage`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","parameters":["b875ffbf-7a7a-4faf-87cb-2b06ecd30bf1","fdd0548d-2899-4a31-b806-783f0ec9bda3"],"requestBody":"90f113fa-ccdc-4437-9607-9daf134769c8","responses":{"201":"d050d694-11a8-439f-b44c-a3dc9ce38ad9","400":"5f435f31-2d45-47b0-9af7-5ba66947b33a","401":"b09d7f75-636e-4a08-9895-c20eb6fbdc9d","403":"07c14a0a-0740-4be3-9635-49609a9fe083","404":"85932427-ef05-4c9f-85fe-cd864c86573d","409":"2b91f730-7534-4c66-a514-00e7d5d04e3a","413":"e86819dc-c24f-422f-9965-d45e170e5140","415":"b0d3ae48-686f-462b-bdb4-75f48c39b210","503":"43586e56-4103-40a6-9512-6808b7c9757b"},"x-codeSamples":[{"lang":"javascript","label":"TypeScript","source":"const res = await fetch('https://app.trdrs.co/api/venues/{venueId}/hedging-policies', {\n method: 'POST',\n headers: {\n 'content-type': 'application/json',\n Authorization: `Bearer ${process.env.TRDRS_VENUE_KEY}`,\n \"Idempotency-Key\": \"example-request-1\",\n },\n body: JSON.stringify({\n \"name\": \"Net 80%\",\n \"terms\": {\n \"mode\": \"net\",\n \"connectionId\": \"00000000-0000-0000-0000-000000000002\",\n \"hedgeAccountId\": \"hedge-fxcubic-1\",\n \"net\": {\n \"ratio\": \"0.8\",\n \"minHedgeNotional\": \"100\",\n \"notionalCap\": \"250000\"\n },\n \"copy\": {\n \"ratio\": \"1\",\n \"basis\": \"fixed\",\n \"minHedgeNotional\": \"10\",\n \"failureLimit\": 3\n },\n \"rules\": []\n }\n }),\n})\nconst data = await res.json()"},{"lang":"shell","label":"cURL","source":"curl -X POST 'https://app.trdrs.co/api/venues/{venueId}/hedging-policies' \\\n -H \"Authorization: Bearer $TRDRS_VENUE_KEY\" \\\n -H 'Idempotency-Key: example-request-1' \\\n -H 'content-type: application/json' \\\n -d '{\"name\":\"Net 80%\",\"terms\":{\"mode\":\"net\",\"connectionId\":\"00000000-0000-0000-0000-000000000002\",\"hedgeAccountId\":\"hedge-fxcubic-1\",\"net\":{\"ratio\":\"0.8\",\"minHedgeNotional\":\"100\",\"notionalCap\":\"250000\"},\"copy\":{\"ratio\":\"1\",\"basis\":\"fixed\",\"minHedgeNotional\":\"10\",\"failureLimit\":3},\"rules\":[]}}'"}],"method":"post","type":"path","servers":["c220e2e5-5b87-4878-bf32-f32a80b66383","62a779df-7768-4e23-9a43-08a84e1271b0"],"path":"/api/venues/{venueId}/hedging-policies","baseUrlOptions":["https://app.trdrs.co","/"],"title":"Make a hedging policy","codeSamples":[{"label":"TypeScript","lang":"javascript","source":"const res = await fetch('https://app.trdrs.co/api/venues/{venueId}/hedging-policies', {\n method: 'POST',\n headers: {\n 'content-type': 'application/json',\n Authorization: `Bearer ${process.env.TRDRS_VENUE_KEY}`,\n \"Idempotency-Key\": \"example-request-1\",\n },\n body: JSON.stringify({\n \"name\": \"Net 80%\",\n \"terms\": {\n \"mode\": \"net\",\n \"connectionId\": \"00000000-0000-0000-0000-000000000002\",\n \"hedgeAccountId\": \"hedge-fxcubic-1\",\n \"net\": {\n \"ratio\": \"0.8\",\n \"minHedgeNotional\": \"100\",\n \"notionalCap\": \"250000\"\n },\n \"copy\": {\n \"ratio\": \"1\",\n \"basis\": \"fixed\",\n \"minHedgeNotional\": \"10\",\n \"failureLimit\": 3\n },\n \"rules\": []\n }\n }),\n})\nconst data = await res.json()"},{"label":"cURL","lang":"shell","source":"curl -X POST 'https://app.trdrs.co/api/venues/{venueId}/hedging-policies' \\\n -H \"Authorization: Bearer $TRDRS_VENUE_KEY\" \\\n -H 'Idempotency-Key: example-request-1' \\\n -H 'content-type: application/json' \\\n -d '{\"name\":\"Net 80%\",\"terms\":{\"mode\":\"net\",\"connectionId\":\"00000000-0000-0000-0000-000000000002\",\"hedgeAccountId\":\"hedge-fxcubic-1\",\"net\":{\"ratio\":\"0.8\",\"minHedgeNotional\":\"100\",\"notionalCap\":\"250000\"},\"copy\":{\"ratio\":\"1\",\"basis\":\"fixed\",\"minHedgeNotional\":\"10\",\"failureLimit\":3},\"rules\":[]}}'"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{"b875ffbf-7a7a-4faf-87cb-2b06ecd30bf1":{"name":"venueId","in":"path","required":true,"schema":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}},"fdd0548d-2899-4a31-b806-783f0ec9bda3":{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","minLength":1,"maxLength":128,"isRequired":true,"description":"A key you choose, 1 to 128 characters, that identifies this write. Send the same key when you retry it, so the write is never applied twice.","uniqueKey":"","typeLabel":"string"},"description":"A key you choose, 1 to 128 characters, that identifies this write. Send the same key when you retry it, so the write is never applied twice."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","maxLength":120,"isRequired":true,"uniqueKey":"name","typeLabel":"string"},"terms":{"type":"object","additionalProperties":false,"properties":{"mode":{"type":"string","enum":["net","copy"],"description":"`net` nets every account the policy covers and hedges a share of what is left in your one hedge account at the hedge market. `copy` holds a share of each customer account's position in that account's own hedge account there.","isRequired":true,"uniqueKey":"terms.mode","typeLabel":"enum\u003cstring>"},"connectionId":{"type":"string","format":"uuid","description":"The hedge market: your connection to the one provider the policy hedges at. A market that provider doesn't list stays on your book.","isRequired":true,"uniqueKey":"terms.connectionId","typeLabel":"string\u003cuuid>"},"net":{"type":"object","additionalProperties":false,"properties":{"ratio":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"terms.net.ratio","typeLabel":"string"},"minHedgeNotional":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"terms.net.minHedgeNotional","typeLabel":"string"},"notionalCap":{"oneOf":[{"type":"string","description":"An exact decimal string, or null where this layer sets no limit.","isRequired":true,"uniqueKey":"terms.net.notionalCap.oneOf.0","typeLabel":"string"},{"type":"null","description":"An exact decimal string, or null where this layer sets no limit.","isRequired":true,"uniqueKey":"terms.net.notionalCap.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"terms.net.notionalCap","typeLabel":"string | null"}},"required":["ratio","minHedgeNotional","notionalCap"],"description":"The net: `ratio`, the share of the net hedged, from 0 to 1; `minHedgeNotional`, the smallest order sent, in US dollars, unless it closes the hedge; `notionalCap`, the largest hedge on one market, in US dollars, or null for none.","isRequired":true,"uniqueKey":"terms.net","typeLabel":"object"},"copy":{"type":"object","additionalProperties":false,"properties":{"ratio":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"terms.copy.ratio","typeLabel":"string"},"basis":{"type":"string","enum":["fixed","budget"],"isRequired":true,"uniqueKey":"terms.copy.basis","typeLabel":"enum\u003cstring>"},"minHedgeNotional":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"terms.copy.minHedgeNotional","typeLabel":"string"},"failureLimit":{"type":"integer","minimum":1,"maximum":20,"isRequired":true,"uniqueKey":"terms.copy.failureLimit","typeLabel":"integer"}},"required":["ratio","basis","minHedgeNotional","failureLimit"],"description":"Copying each trader: `ratio`, the share copied, from 0 to 1, or under the `budget` basis the most it can be, as each account's hedge budget over its max loss sizes it; `minHedgeNotional`, the smallest copy sent, in US dollars, unless it closes the copy; `failureLimit`, how many failed copies in a row stop the trader opening more until you reconcile them.","isRequired":true,"uniqueKey":"terms.copy","typeLabel":"object"},"hedgeAccountId":{"oneOf":[{"type":"string","description":"Your hedge account at the hedge market that the net goes into, an account you bound for hedging, or null until you bind one: the net is then worked out and never sent.","uniqueKey":"terms.hedgeAccountId.oneOf.0","typeLabel":"string"},{"type":"null","description":"Your hedge account at the hedge market that the net goes into, an account you bound for hedging, or null until you bind one: the net is then worked out and never sent.","uniqueKey":"terms.hedgeAccountId.oneOf.1","typeLabel":"null"}],"uniqueKey":"terms.hedgeAccountId","typeLabel":"string | null"},"rules":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"match":{"oneOf":[{"type":"object","required":["kind","instrumentId"],"properties":{"kind":{"const":"instrument","isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.0.kind","typeLabel":"any"},"instrumentId":{"type":"string","isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.0.instrumentId","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.0","typeLabel":"object"},{"type":"object","required":["kind","riskClass"],"properties":{"kind":{"const":"class","isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.1.kind","typeLabel":"any"},"riskClass":{"type":"string","enum":["futures","crypto_derivative","fx_cfd"],"isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.1.riskClass","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.1","typeLabel":"object"},{"type":"object","required":["kind","tag"],"properties":{"kind":{"const":"tag","isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.2.kind","typeLabel":"any"},"tag":{"type":"string","isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.2.tag","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.2","typeLabel":"object"},{"type":"object","required":["kind","over"],"properties":{"kind":{"const":"order_notional","isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.3.kind","typeLabel":"any"},"over":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.3.over","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match.oneOf.3","typeLabel":"object"}],"isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].match","typeLabel":"object"},"mode":{"type":"string","enum":["keep","net","copy"],"isRequired":true,"uniqueKey":"terms.rules.items.[INDEX].mode","typeLabel":"enum\u003cstring>"},"ratio":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","uniqueKey":"terms.rules.items.[INDEX].ratio","typeLabel":"string"}},"required":["match","mode"],"uniqueKey":"terms.rules.items.[INDEX]","typeLabel":"object"},"maxItems":50,"description":"Rules read top to bottom; the first that matches a trade decides, and the policy's mode covers the rest. A rule matches one instrument by your id for it, every instrument of one risk class, every trade of the accounts you gave one tag, or the part of a position opened by an order whose filled notional was over `over` US dollars, and keeps its trades on your book (`keep`, with no `ratio`), nets them or copies them at its own `ratio`, from 0 to 1. At most 50.","uniqueKey":"terms.rules","typeLabel":"object[]"}},"required":["mode","connectionId","net","copy"],"description":"What a hedging policy does. Both modes' terms are stated whatever the mode, since a rule can hedge some trades the other way.","isRequired":true,"uniqueKey":"terms","typeLabel":"object"}},"required":["name","terms"],"example":{"name":"Net 80%","terms":{"mode":"net","connectionId":"00000000-0000-0000-0000-000000000002","hedgeAccountId":"hedge-fxcubic-1","net":{"ratio":"0.8","minHedgeNotional":"100","notionalCap":"250000"},"copy":{"ratio":"1","basis":"fixed","minHedgeNotional":"10","failureLimit":3},"rules":[]}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"Net 80%","terms":{"mode":"net","connectionId":"00000000-0000-0000-0000-000000000002","hedgeAccountId":"hedge-fxcubic-1","net":{"ratio":"0.8","minHedgeNotional":"100","notionalCap":"250000"},"copy":{"ratio":"1","basis":"fixed","minHedgeNotional":"10","failureLimit":3},"rules":[]}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"d050d694-11a8-439f-b44c-a3dc9ce38ad9":{"description":"Success. The response is sent with `Cache-Control: no-store`, so don't cache it.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"policy":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"policy.id","typeLabel":"string\u003cuuid>"},"name":{"type":"string","isRequired":true,"uniqueKey":"policy.name","typeLabel":"string"},"state":{"type":"string","enum":["active","paused","stopped"],"isRequired":true,"uniqueKey":"policy.state","typeLabel":"enum\u003cstring>"},"revision":{"type":"integer","minimum":1,"isRequired":true,"uniqueKey":"policy.revision","typeLabel":"integer"},"versionId":{"type":"string","format":"uuid","description":"The version of its terms in force. Each hedge target names the version that produced it.","isRequired":true,"uniqueKey":"policy.versionId","typeLabel":"string\u003cuuid>"},"terms":{"type":"object","additionalProperties":false,"properties":{"mode":{"type":"string","enum":["net","copy"],"description":"`net` nets every account the policy covers and hedges a share of what is left in your one hedge account at the hedge market. `copy` holds a share of each customer account's position in that account's own hedge account there.","isRequired":true,"uniqueKey":"policy.terms.mode","typeLabel":"enum\u003cstring>"},"connectionId":{"type":"string","format":"uuid","description":"The hedge market: your connection to the one provider the policy hedges at. A market that provider doesn't list stays on your book.","isRequired":true,"uniqueKey":"policy.terms.connectionId","typeLabel":"string\u003cuuid>"},"net":{"type":"object","additionalProperties":false,"properties":{"ratio":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"policy.terms.net.ratio","typeLabel":"string"},"minHedgeNotional":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"policy.terms.net.minHedgeNotional","typeLabel":"string"},"notionalCap":{"oneOf":[{"type":"string","description":"An exact decimal string, or null where this layer sets no limit.","isRequired":true,"uniqueKey":"policy.terms.net.notionalCap.oneOf.0","typeLabel":"string"},{"type":"null","description":"An exact decimal string, or null where this layer sets no limit.","isRequired":true,"uniqueKey":"policy.terms.net.notionalCap.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"policy.terms.net.notionalCap","typeLabel":"string | null"}},"required":["ratio","minHedgeNotional","notionalCap"],"description":"The net: `ratio`, the share of the net hedged, from 0 to 1; `minHedgeNotional`, the smallest order sent, in US dollars, unless it closes the hedge; `notionalCap`, the largest hedge on one market, in US dollars, or null for none.","isRequired":true,"uniqueKey":"policy.terms.net","typeLabel":"object"},"copy":{"type":"object","additionalProperties":false,"properties":{"ratio":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"policy.terms.copy.ratio","typeLabel":"string"},"basis":{"type":"string","enum":["fixed","budget"],"isRequired":true,"uniqueKey":"policy.terms.copy.basis","typeLabel":"enum\u003cstring>"},"minHedgeNotional":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"policy.terms.copy.minHedgeNotional","typeLabel":"string"},"failureLimit":{"type":"integer","minimum":1,"maximum":20,"isRequired":true,"uniqueKey":"policy.terms.copy.failureLimit","typeLabel":"integer"}},"required":["ratio","basis","minHedgeNotional","failureLimit"],"description":"Copying each trader: `ratio`, the share copied, from 0 to 1, or under the `budget` basis the most it can be, as each account's hedge budget over its max loss sizes it; `minHedgeNotional`, the smallest copy sent, in US dollars, unless it closes the copy; `failureLimit`, how many failed copies in a row stop the trader opening more until you reconcile them.","isRequired":true,"uniqueKey":"policy.terms.copy","typeLabel":"object"},"hedgeAccountId":{"oneOf":[{"type":"string","description":"Your hedge account at the hedge market that the net goes into, an account you bound for hedging, or null until you bind one: the net is then worked out and never sent.","uniqueKey":"policy.terms.hedgeAccountId.oneOf.0","typeLabel":"string"},{"type":"null","description":"Your hedge account at the hedge market that the net goes into, an account you bound for hedging, or null until you bind one: the net is then worked out and never sent.","uniqueKey":"policy.terms.hedgeAccountId.oneOf.1","typeLabel":"null"}],"uniqueKey":"policy.terms.hedgeAccountId","typeLabel":"string | null"},"rules":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"match":{"oneOf":[{"type":"object","required":["kind","instrumentId"],"properties":{"kind":{"const":"instrument","isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.0.kind","typeLabel":"any"},"instrumentId":{"type":"string","isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.0.instrumentId","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.0","typeLabel":"object"},{"type":"object","required":["kind","riskClass"],"properties":{"kind":{"const":"class","isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.1.kind","typeLabel":"any"},"riskClass":{"type":"string","enum":["futures","crypto_derivative","fx_cfd"],"isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.1.riskClass","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.1","typeLabel":"object"},{"type":"object","required":["kind","tag"],"properties":{"kind":{"const":"tag","isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.2.kind","typeLabel":"any"},"tag":{"type":"string","isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.2.tag","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.2","typeLabel":"object"},{"type":"object","required":["kind","over"],"properties":{"kind":{"const":"order_notional","isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.3.kind","typeLabel":"any"},"over":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.3.over","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match.oneOf.3","typeLabel":"object"}],"isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].match","typeLabel":"object"},"mode":{"type":"string","enum":["keep","net","copy"],"isRequired":true,"uniqueKey":"policy.terms.rules.items.[INDEX].mode","typeLabel":"enum\u003cstring>"},"ratio":{"type":"string","description":"An exact decimal string, such as `\"12.5\"`, with at most 18 digits after the point and no exponent.","uniqueKey":"policy.terms.rules.items.[INDEX].ratio","typeLabel":"string"}},"required":["match","mode"],"uniqueKey":"policy.terms.rules.items.[INDEX]","typeLabel":"object"},"maxItems":50,"description":"Rules read top to bottom; the first that matches a trade decides, and the policy's mode covers the rest. A rule matches one instrument by your id for it, every instrument of one risk class, every trade of the accounts you gave one tag, or the part of a position opened by an order whose filled notional was over `over` US dollars, and keeps its trades on your book (`keep`, with no `ratio`), nets them or copies them at its own `ratio`, from 0 to 1. At most 50.","uniqueKey":"policy.terms.rules","typeLabel":"object[]"}},"required":["mode","connectionId","net","copy"],"description":"What a hedging policy does. Both modes' terms are stated whatever the mode, since a rule can hedge some trades the other way.","isRequired":true,"uniqueKey":"policy.terms","typeLabel":"object"},"groups":{"type":"array","items":{"type":"string","uniqueKey":"policy.groups.items.[INDEX]","typeLabel":"string"},"description":"The groups that pick it.","isRequired":true,"uniqueKey":"policy.groups","typeLabel":"string[]"},"createdAt":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"policy.createdAt","typeLabel":"string\u003cdate-time>"},"stateAt":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"policy.stateAt","typeLabel":"string\u003cdate-time>"}},"required":["id","name","state","revision","versionId","terms","groups","createdAt","stateAt"],"description":"A hedging policy you made once, picked by any of your groups. `paused` and `stopped` size and send nothing; the emergency stop stops every policy, and each resumes only when you resume it.","isRequired":true,"uniqueKey":"policy","typeLabel":"object"}},"required":["policy"],"example":{"policy":{"id":"00000000-0000-0000-0000-000000000001","name":"Net 80%","state":"active","revision":1,"versionId":"00000000-0000-0000-0000-000000000004","groups":["broker-pro"],"createdAt":"2026-09-14T12:00:00.000Z","stateAt":"2026-09-14T12:00:00.000Z","terms":{"mode":"net","connectionId":"00000000-0000-0000-0000-000000000002","hedgeAccountId":"hedge-fxcubic-1","net":{"ratio":"0.8","minHedgeNotional":"100","notionalCap":"250000"},"copy":{"ratio":"1","basis":"fixed","minHedgeNotional":"10","failureLimit":3},"rules":[]}}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"policy":{"id":"00000000-0000-0000-0000-000000000001","name":"Net 80%","state":"active","revision":1,"versionId":"00000000-0000-0000-0000-000000000004","groups":["broker-pro"],"createdAt":"2026-09-14T12:00:00.000Z","stateAt":"2026-09-14T12:00:00.000Z","terms":{"mode":"net","connectionId":"00000000-0000-0000-0000-000000000002","hedgeAccountId":"hedge-fxcubic-1","net":{"ratio":"0.8","minHedgeNotional":"100","notionalCap":"250000"},"copy":{"ratio":"1","basis":"fixed","minHedgeNotional":"10","failureLimit":3},"rules":[]}}}}},"exampleType":"generated"}},"exampleType":"generated"},"5f435f31-2d45-47b0-9af7-5ba66947b33a":{"description":"`invalid_request`, or a term that isn't one, with its path in `field`, such as `net.ratio` with `ratio_range`.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"b09d7f75-636e-4a08-9895-c20eb6fbdc9d":{"description":"The Venue key or the session is missing, malformed, revoked or expired.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"07c14a0a-0740-4be3-9635-49609a9fe083":{"description":"The credential is valid but can't do this: the key lacks the scope or its creator is no longer an owner, the email isn't verified, a reader tried to write, or the request came from an origin that isn't trusted.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"85932427-ef05-4c9f-85fe-cd864c86573d":{"description":"The venue, account or resource doesn't exist in this environment, or isn't yours to see.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"2b91f730-7534-4c66-a514-00e7d5d04e3a":{"description":"`not_ready` or `conflict` names every blocker in `blockers`: the checks an active policy holds each group that picks it to, as `POST /hedges/activation` states them for an account policy, apart from `instrument_not_on_hedge_market`, since a market the hedge market doesn't list stays on your book; `hedge_account_not_on_hedge_market` and `hedge_account_in_use` for a hedge account that isn't at the hedge market or already carries another hedge. `version_conflict`: the revision you sent is stale. `idempotency_conflict`: the `Idempotency-Key` was used with a different body.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"e86819dc-c24f-422f-9965-d45e170e5140":{"description":"The body is larger than this route accepts.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"b0d3ae48-686f-462b-bdb4-75f48c39b210":{"description":"Send the body as JSON, with `Content-Type: application/json`.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"exampleType":"generated"},"43586e56-4103-40a6-9512-6808b7c9757b":{"description":"trdrs can't complete the request right now, because a part of the venue platform or its credential store is unavailable. Don't assume a write happened: retry it with the same `Idempotency-Key`. `engine_draining` with a `Retry-After` header: the engine you reached is restarting for a release and did nothing. Wait for `Retry-After`, then send the same request again, with the same `clientOrderId` or `Idempotency-Key` where the route takes one: another engine takes it. A write refused before any route takes it says `server draining` as its `error`.","content":{"application/json":{"schema":{"type":"object","description":"The body of every error response. It always carries `error`, an English sentence you can show. A refused trading request also carries `code`, one of the refusal codes, and `params`, the details of that refusal. Translate by `code` and `params`, and show a generic message for a code you don't recognize. Other errors may carry a `code` of their own.","properties":{"error":{"type":"string","description":"What went wrong, as an English sentence.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine code. On a refused trading request, it is one of the refusal codes.","uniqueKey":"code","typeLabel":"string"},"params":{"type":"object","description":"The details of the refusal named by `code`, on a refused trading request.","uniqueKey":"params","typeLabel":"object"}},"required":["error"],"example":{"error":"invalid_instrument"},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"invalid_instrument"}}},"exampleType":"generated"}},"headers":{"Retry-After":{"description":"How many seconds to wait before sending the same request again. A `503` carries it only when the engine did nothing, so the request may be sent again as it is.","schema":{"type":"integer","minimum":1}}},"exampleType":"generated"}},"security":{"25dd05b7-8cce-4eac-a70e-025c959eef28":{"venueKey":{"type":"http","scheme":"bearer","description":"The Venue key (`trdrs_vk_sandbox_…` or `trdrs_vk_production_…`), in preview. It belongs to one venue in one environment and carries the scopes it was created with. The venue's verified owner creates it while signed in. It works on the `/api/venues/{venueId}` routes and, with `trader:read` or `trader:trade`, on the account, market and trading routes, reading the venue's own traders' accounts and routing their orders, each request naming its trader in `x-trdrs-trader`. A `trdrs_sk_…` key can't be used in its place. It reaches its venue's routes and its venue's own traders, and the owner manages keys from a signed-in session. Keep it on your server.","scopes":[],"schemeName":"venueKey"}}},"servers":{"c220e2e5-5b87-4878-bf32-f32a80b66383":{"url":"https://app.trdrs.co","description":"Production"},"62a779df-7768-4e23-9a43-08a84e1271b0":{"url":"/","description":"This engine"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"The Venue key (`trdrs_vk_sandbox_…` or `trdrs_vk_production_…`), in preview. It belongs to one venue in one environment and carries the scopes it was created with. The venue's verified owner creates it while signed in. It works on the `/api/venues/{venueId}` routes and, with `trader:read` or `trader:trade`, on the account, market and trading routes, reading the venue's own traders' accounts and routing their orders, each request naming its trader in `x-trdrs-trader`. A `trdrs_sk_…` key can't be used in its place. It reaches its venue's routes and its venue's own traders, and the owner manages keys from a signed-in session. Keep it on your server.","scopes":[],"schemeName":"venueKey"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"The Venue key (`trdrs_vk_sandbox_…` or `trdrs_vk_production_…`), in preview. It belongs to one venue in one environment and carries the scopes it was created with. The venue's verified owner creates it while signed in. It works on the `/api/venues/{venueId}` routes and, with `trader:read` or `trader:trade`, on the account, market and trading routes, reading the venue's own traders' accounts and routing their orders, each request naming its trader in `x-trdrs-trader`. A `trdrs_sk_…` key can't be used in its place. It reaches its venue's routes and its venue's own traders, and the owner manages keys from a signed-in session. Keep it on your server.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"venueKey","name":"Authorization"}],"title":"venueKey"}]},"originalFileLocation":"api/openapi.json"},"subdomain":"trdrs","siteName":"trdrs Engine API","title":"Make a hedging policy - trdrs Engine API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-02T19:30:14.343Z","originalFileLocation":"api-reference/venue-platform-preview/make-a-hedging-policy.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same Idempotency-Key with the same body answers the same policy. Required scope: hedge:manage. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\">\u003cmeta data-mint-head name=\"application-name\" content=\"trdrs Engine API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Make a hedging policy - trdrs Engine API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same Idempotency-Key with the same body answers the same policy. Required scope: hedge:manage. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"trdrs Engine API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://trdrs.mintlify.app/_mintlify/api/og/v2?division=Hedging\u0026amp;title=Make+a+hedging+policy\u0026amp;description=Makes+a+hedging+policy+from+its+name+and+terms%2C+active.+It+hedges+nothing+until+a+group+picks+it.+The+same+%60Idempotency-Key%60+with+the+same+body+answers+the+same\u0026amp;theme=85063b664f29463f86ec0c0f\u0026amp;signature=4ca217e02b1396bc0dab148b4a31bed0af763db2dd82b81f61f0cfc2289a6e49\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Make a hedging policy - trdrs Engine API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same Idempotency-Key with the same body answers the same policy. Required scope: hedge:manage. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://trdrs.mintlify.app/_mintlify/api/og/v2?division=Hedging\u0026amp;title=Make+a+hedging+policy\u0026amp;description=Makes+a+hedging+policy+from+its+name+and+terms%2C+active.+It+hedges+nothing+until+a+group+picks+it.+The+same+%60Idempotency-Key%60+with+the+same+body+answers+the+same\u0026amp;theme=85063b664f29463f86ec0c0f\u0026amp;signature=4ca217e02b1396bc0dab148b4a31bed0af763db2dd82b81f61f0cfc2289a6e49\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/trdrs/Mc3uPNp5t9BqWGNO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"trdrs Engine API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0a0a0a\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/venue-platform-preview/make-a-hedging-policy.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.trdrs.co/#organization\",\"name\":\"trdrs Engine API\",\"url\":\"https://docs.trdrs.co\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/trdrs/VlyBylpRulgoNVYk/logo.svg?fit=max\u0026auto=format\u0026n=VlyBylpRulgoNVYk\u0026q=85\u0026s=0725a6173d2c03859de4fc3b0a99ea50\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.trdrs.co#website\",\"name\":\"trdrs Engine API\",\"url\":\"https://docs.trdrs.co\",\"publisher\":{\"@id\":\"https://docs.trdrs.co/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy#webpage\",\"url\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy\",\"name\":\"Make a hedging policy\",\"description\":\"Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same Idempotency-Key with the same body answers the same policy. Required scope: hedge:manage. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\",\"dateModified\":\"2026-11-02T19:30:14.343Z\",\"isPartOf\":{\"@id\":\"https://docs.trdrs.co#website\"},\"breadcrumb\":{\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.trdrs.co/api-reference/market-data/get-market-data-limits\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Venues\",\"item\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/read-a-venue\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Hedging\",\"item\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/read-venue-hedge-state\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Make a hedging policy\",\"item\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy#apireference\",\"headline\":\"Make a hedging policy\",\"name\":\"Make a hedging policy\",\"description\":\"Makes a hedging policy from its name and terms, active. It hedges nothing until a group picks it. The same Idempotency-Key with the same body answers the same policy. Required scope: hedge:manage. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.\",\"url\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy\",\"mainEntityOfPage\":{\"@id\":\"https://docs.trdrs.co/api-reference/venue-platform-preview/make-a-hedging-policy#webpage\"},\"dateModified\":\"2026-11-02T19:30:14.343Z\",\"publisher\":{\"@id\":\"https://docs.trdrs.co/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.trdrs.co#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"trdrs Engine API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"trdrs Engine API","nav":{"global":null,"tabs":[{"tab":"Get started","pages":[{"title":"Get started","href":""}]},{"tab":"Guides","dropdowns":[{"dropdown":"Programmatic trading","icon":"code","description":"Trade accounts you hold","groups":[{"group":"Start here","pages":[{"title":"Programmatic trading quickstart","href":"/guides/programmatic-quickstart"}]},{"group":"Trading","pages":[{"title":"Trading overview","sidebarTitle":"Overview","href":"/guides/trading-overview"},{"title":"Place your first order","sidebarTitle":"Place an order","href":"/guides/place-your-first-order"},{"title":"Protect a position","sidebarTitle":"Protect a position","href":"/guides/protect-a-position"},{"title":"Manage working orders","sidebarTitle":"Manage working orders","href":"/guides/manage-working-orders"},{"title":"Close a position","sidebarTitle":"Close a position","href":"/guides/close-a-position"},{"title":"Trade with leverage","sidebarTitle":"Trade with leverage","href":"/guides/trade-with-leverage"},{"title":"Track fills and P\u0026L","sidebarTitle":"Track fills and P\u0026L","href":"/guides/track-fills-and-pnl"}]}]},{"dropdown":"Market data","icon":"chart-line","description":"Read prices, history and streams","pages":[{"title":"Market data overview","sidebarTitle":"Overview","href":"/guides/market-data-overview"},{"title":"Find symbols","sidebarTitle":"Find symbols","href":"/guides/find-symbols"},{"title":"Backfill history","sidebarTitle":"Backfill history","href":"/guides/backfill-history"},{"title":"Stream live market data","sidebarTitle":"Stream live data","href":"/guides/stream-live-data"}]},{"dropdown":"Connect","icon":"link","description":"Build your own trading interface","groups":[{"group":"Start here","pages":[{"title":"Connect","sidebarTitle":"Overview","href":"/guides/connect-overview"},{"title":"Connect quickstart","sidebarTitle":"Quickstart","href":"/guides/connect-quickstart"}]},{"group":"Build","pages":[{"title":"Route your traders' orders","sidebarTitle":"Route your traders' orders","href":"/guides/route-your-traders-orders"},{"title":"Choose your tiles and white-label paper","sidebarTitle":"Tiles and white-label paper","href":"/guides/connect-tiles-and-paper"}]},{"group":"Go live","pages":[{"title":"Pass Connect conformance","sidebarTitle":"Pass conformance","href":"/guides/connect-conformance"},{"title":"Billing for Connect apps","sidebarTitle":"Billing","href":"/guides/connect-billing"},{"title":"Active traders and billing","sidebarTitle":"Active traders","href":"/guides/connect-active-traders"}]}]},{"dropdown":"Venues","icon":"building","description":"Run a prop firm or brokerage","groups":[{"group":"Start here","pages":[{"title":"Prop firms","sidebarTitle":"Prop firms","href":"/guides/prop-firms-overview"},{"title":"Brokerages","sidebarTitle":"Brokerages","href":"/guides/brokerages-overview"},{"title":"Venue quickstart","href":"/guides/business-quickstart"},{"title":"Evaluation quickstart","href":"/quickstart"},{"title":"What your traders get","sidebarTitle":"What your traders get","href":"/what-your-traders-get"}]},{"group":"Set up your venue","pages":[{"title":"Run a venue end to end","sidebarTitle":"Run a venue","href":"/guides/run-a-venue"},{"title":"Venue keys","sidebarTitle":"Venue keys","href":"/guides/venue-keys"},{"title":"Back Office","href":"/guides/back-office"}]},{"group":"Run accounts","pages":[{"title":"Venue accounts","sidebarTitle":"Accounts","href":"/guides/venue-accounts"},{"title":"Send your traders to the trading platform","sidebarTitle":"Send traders to trade","href":"/guides/send-traders-to-the-trading-platform"},{"title":"Paper accounts on provider contracts","href":"/guides/paper-provider-contracts"},{"title":"Hedge venue exposure","sidebarTitle":"Hedging","href":"/guides/venue-hedging"},{"title":"Account analytics","sidebarTitle":"Account analytics","href":"/guides/firm-analytics"},{"title":"Read your usage","sidebarTitle":"Read your usage","href":"/guides/read-your-usage"},{"title":"Receive events on your server","sidebarTitle":"Receive events","href":"/guides/receive-events"}]},{"group":"Connect pre-registration","pages":[{"title":"Show your venue in Connect","href":"/guides/get-listed"},{"title":"Register an account","sidebarTitle":"Register an account","href":"/guides/register-an-account"},{"title":"Follow registrations","sidebarTitle":"Follow registrations","href":"/guides/handle-registration-events"}]},{"group":"Check your integration","pages":[{"title":"Venue requirements","href":"/providers/requirements"},{"title":"Run venue conformance","href":"/providers/test-evidence"},{"title":"Use your results","href":"/providers/submission"}]}]},{"dropdown":"Providers","icon":"plug","description":"Bring a market to trdrs","pages":[{"title":"Provider conformance","href":"/providers/provider-conformance"},{"title":"Shared and private integrations","href":"/providers/publishing"},{"title":"FXCubic","href":"/providers/fxcubic"},{"title":"Run a testnet provider","href":"/guides/run-a-testnet-provider"},{"title":"Publish a datafeed to your traders","sidebarTitle":"Publish a datafeed","href":"/guides/publish-a-datafeed"},{"title":"Provider data","sidebarTitle":"Provider data","href":"/guides/venue-data"}]},{"dropdown":"Trading interfaces","icon":"display-code","description":"Build your own trading screens","pages":[{"title":"Build a front end","sidebarTitle":"Build a front end","href":"/guides/build-a-front-end"}]}]},{"tab":"API reference","groups":[{"group":"Start here","pages":[{"title":"API reference overview","sidebarTitle":"Overview","href":"/api/overview"}]},{"group":"Endpoints","pages":[{"group":"Market data","pages":[{"group":"Prices and symbols","pages":[{"title":"Get market-data limits","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/config","href":"/api-reference/market-data/get-market-data-limits"},{"title":"Search the symbol catalog","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/symbols","href":"/api-reference/market-data/search-the-symbol-catalog"},{"title":"Get symbol details","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/symbol-info","href":"/api-reference/market-data/get-symbol-details"},{"title":"Get the futures catalog","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/instruments","href":"/api-reference/market-data/get-the-futures-catalog"},{"title":"Get server time","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/time","href":"/api-reference/market-data/get-server-time"},{"title":"Get price history","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/history","href":"/api-reference/market-data/get-price-history"},{"title":"Get quote snapshots","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/quotes","href":"/api-reference/market-data/get-quote-snapshots"},{"title":"Stream live bars","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/stream","href":"/api-reference/market-data/stream-live-bars"},{"title":"Stream multiplexed live bars","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/market/streams","href":"/api-reference/market-data/stream-multiplexed-live-bars"}]},{"group":"News and calendar","pages":[{"title":"List news headlines","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/news","href":"/api-reference/news/list-news-headlines"},{"title":"Get a news thumbnail","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/news/image/{id}","href":"/api-reference/news/get-a-news-thumbnail"},{"title":"List calendar events","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/calendar","href":"/api-reference/news/list-calendar-events"},{"title":"Stream news","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/news/stream","href":"/api-reference/news/stream-news"},{"title":"Stream calendar updates","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/calendar/stream","href":"/api-reference/news/stream-calendar-updates"}]}]},{"group":"Trading","pages":[{"group":"Orders","pages":[{"title":"Get the net position","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/trading/position","href":"/api-reference/trading/get-the-net-position"},{"title":"Get what the account may do","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/trading/actions","href":"/api-reference/trading/get-what-the-account-may-do"},{"title":"Match a market for an account","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/trading/match","href":"/api-reference/trading/match-a-market-for-an-account"},{"title":"Preview order margin","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/margin-preview","href":"/api-reference/trading/preview-order-margin"},{"title":"Size an order in money","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/order-size","href":"/api-reference/trading/size-an-order-in-money"},{"title":"Get leverage and margin mode","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/trading/symbol-config","href":"/api-reference/trading/get-leverage-and-margin-mode"},{"title":"Set leverage","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/trading/symbol-config","href":"/api-reference/trading/set-leverage"},{"title":"Set margin mode","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/trading/margin-mode","href":"/api-reference/trading/set-margin-mode"},{"title":"Place an order","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/order","href":"/api-reference/trading/place-an-order"},{"title":"Replace an order","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/replace","href":"/api-reference/trading/replace-an-order"},{"title":"Cancel an order","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/cancel","href":"/api-reference/trading/cancel-an-order"},{"title":"Cancel all working orders","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/cancel-all","href":"/api-reference/trading/cancel-all-working-orders"},{"title":"Protect a position","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/exits","href":"/api-reference/trading/protect-a-position"},{"title":"Change a bracket","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/trading/exits/{id}","href":"/api-reference/trading/change-a-bracket"},{"title":"Withdraw a bracket","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/trading/exits/{id}","href":"/api-reference/trading/withdraw-a-bracket"},{"title":"Close part of a position","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/close","href":"/api-reference/trading/close-part-of-a-position"},{"title":"Flatten a position","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/flatten","href":"/api-reference/trading/flatten-a-position"},{"title":"Flatten the account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/flatten-account","href":"/api-reference/trading/flatten-the-account"},{"title":"Reverse a position","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/trading/reverse","href":"/api-reference/trading/reverse-a-position"}]},{"group":"Account state","pages":[{"title":"List accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/list","href":"/api-reference/account/list-accounts"},{"title":"List the markets an account trades","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/markets","href":"/api-reference/account/list-the-markets-an-account-trades"},{"title":"Get the account summary","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/summary","href":"/api-reference/account/get-the-account-summary"},{"title":"Get the account snapshot","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/snapshot","href":"/api-reference/account/get-the-account-snapshot"},{"title":"List open positions","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/positions","href":"/api-reference/account/list-open-positions"},{"title":"List closed positions","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/positions/closed","href":"/api-reference/account/list-closed-positions"},{"title":"List orders","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/orders","href":"/api-reference/account/list-orders"},{"title":"List order history","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/orders/history","href":"/api-reference/account/list-order-history"},{"title":"List fills for an instrument","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/executions","href":"/api-reference/account/list-fills-for-an-instrument"},{"title":"Get daily P\u0026L history","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/pnl/history","href":"/api-reference/account/get-daily-p\u0026l-history"},{"title":"List closed round trips","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/pnl/round-trips","href":"/api-reference/account/list-closed-round-trips"},{"title":"List brackets","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/brackets","href":"/api-reference/account/list-brackets"},{"title":"Stream account updates","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/stream","href":"/api-reference/account/stream-account-updates"},{"title":"Get history sync status","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/account/sync-status","href":"/api-reference/account/get-history-sync-status"}]},{"group":"Evaluation programs","pages":[{"title":"List evaluation programs","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/challenges","href":"/api-reference/challenges/list-evaluation-programs"},{"title":"Create an enrollment","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/challenges/enroll","href":"/api-reference/challenges/create-an-enrollment"},{"title":"List your enrollments","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/enrollments","href":"/api-reference/challenges/list-your-enrollments"},{"title":"List enrollment events","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/enrollments/events","href":"/api-reference/challenges/list-enrollment-events"}]}]},{"group":"Connect","pages":[{"title":"List the built-in providers and how each is signed into","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect/providers","href":"/api-reference/connect/list-the-built-in-providers-and-how-each-is-signed-into"},{"title":"List Connect’s tiles","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect/tiles","href":"/api-reference/connect/list-connect’s-tiles"},{"group":"Connect links","pages":[{"title":"Create a Connect link","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect/links","href":"/api-reference/connect-apps-preview/create-a-connect-link"},{"title":"Read a Connect link","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect/links/{linkId}","href":"/api-reference/connect-apps-preview/read-a-connect-link"},{"title":"Close a Connect link","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/connect/links/{linkId}","href":"/api-reference/connect-apps-preview/close-a-connect-link"}]},{"group":"Hosted Connect's own routes","pages":[{"title":"Mount a Connect link token","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/mount","href":"/api-reference/connect-apps-preview/mount-a-connect-link-token"},{"title":"List the tiles a Connect session offers","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect-link/sessions/{sessionId}/tiles","href":"/api-reference/connect-apps-preview/list-the-tiles-a-connect-session-offers"},{"title":"List a trader's provider connections","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/connect-link/sessions/{sessionId}/providers","href":"/api-reference/connect-apps-preview/list-a-traders-provider-connections"},{"title":"Open white-label paper in Connect","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/sessions/{sessionId}/paper","href":"/api-reference/connect-apps-preview/open-white-label-paper-in-connect"},{"title":"Start a provider sign-in window","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/sessions/{sessionId}/oauth/{provider}","href":"/api-reference/connect-apps-preview/start-a-provider-sign-in-window"},{"title":"Finish a provider sign-in window","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/sessions/{sessionId}/oauth/{provider}/finish","href":"/api-reference/connect-apps-preview/finish-a-provider-sign-in-window"},{"title":"Complete a Connect provider login","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/connect-link/sessions/{sessionId}/complete","href":"/api-reference/connect-apps-preview/complete-a-connect-provider-login"},{"title":"End a hosted Connect session","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/connect-link/sessions/{sessionId}/frame","href":"/api-reference/connect-apps-preview/end-a-hosted-connect-session"}]}]},{"group":"Venues","pages":[{"group":"Venue details","pages":[{"title":"Read a venue","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}","href":"/api-reference/venue-platform-preview/read-a-venue"},{"title":"Retire the venue","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/retire","href":"/api-reference/venue-platform-preview/retire-the-venue"}]},{"group":"Venue conformance","pages":[{"title":"Read your venue certificate","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/conformance","href":"/api-reference/venue-platform-preview/read-your-venue-certificate"},{"title":"List venue conformance tests","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/conformance/runs","href":"/api-reference/venue-platform-preview/list-venue-conformance-tests"},{"title":"Start a venue conformance test","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conformance/runs","href":"/api-reference/venue-platform-preview/start-a-venue-conformance-test"},{"title":"Read a venue conformance test","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/conformance/runs/{runId}","href":"/api-reference/venue-platform-preview/read-a-venue-conformance-test"},{"title":"Finish a venue conformance test","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conformance/runs/{runId}/close","href":"/api-reference/venue-platform-preview/finish-a-venue-conformance-test"}]},{"group":"Branding and reference data","pages":[{"title":"Read the venue brand","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/brand","href":"/api-reference/venue-platform-preview/read-the-venue-brand"},{"title":"Update the venue brand","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/venues/{venueId}/brand","href":"/api-reference/venue-platform-preview/update-the-venue-brand"},{"title":"Upload the venue logo","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/brand/logo","href":"/api-reference/venue-platform-preview/upload-the-venue-logo"},{"title":"Read the venue instrument reference catalog","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/reference/instruments","href":"/api-reference/venue-platform-preview/read-the-venue-instrument-reference-catalog"},{"title":"Read registered contract facts for a new instrument","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/reference/contract","href":"/api-reference/venue-platform-preview/read-registered-contract-facts-for-a-new-instrument"},{"title":"Search the markets a venue can list","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/reference/symbols","href":"/api-reference/venue-platform-preview/search-the-markets-a-venue-can-list"}]},{"group":"Instruments","pages":[{"title":"List instrument candidates","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/instruments","href":"/api-reference/venue-platform-preview/list-instrument-candidates"},{"title":"List active instruments","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/instruments/active","href":"/api-reference/venue-platform-preview/list-active-instruments"},{"title":"Read an instrument candidate","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/instruments/{candidateId}","href":"/api-reference/venue-platform-preview/read-an-instrument-candidate"},{"title":"Save an instrument candidate","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/instruments","href":"/api-reference/venue-platform-preview/save-an-instrument-candidate"},{"title":"Activate an instrument version","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/instruments/active","href":"/api-reference/venue-platform-preview/activate-an-instrument-version"}]},{"group":"Conditions and groups","pages":[{"title":"List account groups","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/conditions/groups","href":"/api-reference/venue-platform-preview/list-account-groups"},{"title":"List condition profiles","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/conditions/profiles","href":"/api-reference/venue-platform-preview/list-condition-profiles"},{"title":"Apply a condition profile","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/active","href":"/api-reference/venue-platform-preview/apply-a-condition-profile"},{"title":"Create or update an account group","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/groups","href":"/api-reference/venue-platform-preview/create-or-update-an-account-group"},{"title":"Delete an account group","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/venues/{venueId}/conditions/groups/{groupId}","href":"/api-reference/venue-platform-preview/delete-an-account-group"},{"title":"Delete an evaluation","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/venues/{venueId}/conditions/evaluations/{groupId}","href":"/api-reference/venue-platform-preview/delete-an-evaluation"},{"title":"Preview a conditions change","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/preview","href":"/api-reference/venue-platform-preview/preview-a-conditions-change"},{"title":"Publish a condition profile","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/profiles","href":"/api-reference/venue-platform-preview/publish-a-condition-profile"},{"title":"Point a group at a route","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/groups/{groupId}/route","href":"/api-reference/venue-platform-preview/point-a-group-at-a-route"}]},{"group":"Routes","pages":[{"title":"List routes","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/routes","href":"/api-reference/venue-platform-preview/list-routes"},{"title":"Create or update a route","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/routes","href":"/api-reference/venue-platform-preview/create-or-update-a-route"}]},{"group":"Providers and connections","pages":[{"title":"List provider connections","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/connections","href":"/api-reference/venue-platform-preview/list-provider-connections"},{"title":"List discovered provider accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/connections/{connectionId}/accounts","href":"/api-reference/venue-platform-preview/list-discovered-provider-accounts"},{"title":"Read provider validation status","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/connections/{connectionId}/validations/{jobId}","href":"/api-reference/venue-platform-preview/read-provider-validation-status"},{"title":"List provider versions","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/providers","href":"/api-reference/venue-platform-preview/list-provider-versions"},{"title":"Create a provider connection draft","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/connections","href":"/api-reference/venue-platform-preview/create-a-provider-connection-draft"},{"title":"Queue read-only provider validation","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/connections/{connectionId}/validate","href":"/api-reference/venue-platform-preview/queue-read-only-provider-validation"},{"title":"Register a public provider version","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/providers","href":"/api-reference/venue-platform-preview/register-a-public-provider-version"},{"title":"Show or hide a plugged-in provider to this venue's traders","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/connections/{connectionId}/expose","href":"/api-reference/venue-platform-preview/show-or-hide-a-plugged-in-provider-to-this-venues-traders"},{"title":"Read the trdrs-managed provider catalog","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/provider-catalog/directory","href":"/api-reference/venue-platform-preview/read-the-trdrs-managed-provider-catalog"},{"title":"Venue publishing and maintenance retired","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}/publication","href":"/api-reference/venue-platform-preview/venue-publishing-and-maintenance-retired"},{"title":"Venue publishing and maintenance retired","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}/publication","href":"/api-reference/venue-platform-preview/venue-publishing-and-maintenance-retired"},{"title":"Venue publishing and maintenance retired","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}/publication","href":"/api-reference/venue-platform-preview/venue-publishing-and-maintenance-retired"},{"title":"Venue publishing and maintenance retired","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}/publication","href":"/api-reference/venue-platform-preview/venue-publishing-and-maintenance-retired"},{"title":"Venue publishing and maintenance retired","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}/publication","href":"/api-reference/venue-platform-preview/venue-publishing-and-maintenance-retired"},{"title":"Venue publishing and maintenance retired","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/profiles/{companyId}/publication","href":"/api-reference/venue-platform-preview/venue-publishing-and-maintenance-retired"},{"title":"Request dedicated provider setup","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/provider-catalog/releases/{releaseId}/install","href":"/api-reference/venue-platform-preview/request-dedicated-provider-setup"}]},{"group":"Risk policies","pages":[{"title":"List the venue's risk policies","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/risk-policies","href":"/api-reference/venue-platform-preview/list-the-venues-risk-policies"},{"title":"Store a risk policy version","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/risk-policies","href":"/api-reference/venue-platform-preview/store-a-risk-policy-version"},{"title":"Read one risk policy","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/risk-policies/{policyId}","href":"/api-reference/venue-platform-preview/read-one-risk-policy"},{"title":"Publish a risk policy version","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/risk-policies/{policyId}/publications","href":"/api-reference/venue-platform-preview/publish-a-risk-policy-version"}]},{"group":"Stages","pages":[{"title":"Read an account's stage eligibility","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/eligibility","href":"/api-reference/venue-platform-preview/read-an-accounts-stage-eligibility"},{"title":"List stage policies","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/stages/policies","href":"/api-reference/venue-platform-preview/list-stage-policies"},{"title":"Advance an account past a stage","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/stages/{stageId}/advance","href":"/api-reference/venue-platform-preview/advance-an-account-past-a-stage"},{"title":"Put a stage policy in force","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/stages/active","href":"/api-reference/venue-platform-preview/put-a-stage-policy-in-force"},{"title":"Publish a stage policy","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/stages/policies","href":"/api-reference/venue-platform-preview/publish-a-stage-policy"}]},{"group":"Retired account controls","pages":[{"title":"Retired account risk controls","deprecated":true,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/risk-controls","href":"/api-reference/venue-platform-preview/retired-account-risk-controls"},{"title":"Retired account risk controls write","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/risk-controls","href":"/api-reference/venue-platform-preview/retired-account-risk-controls-write"}]},{"group":"Venue accounts","pages":[{"title":"List a venue's accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts","href":"/api-reference/venue-platform-preview/list-a-venues-accounts"},{"title":"List existing accounts with original rules","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/existing-accounts","href":"/api-reference/venue-platform-preview/list-existing-accounts-with-original-rules"},{"title":"Issue an account into a group","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts","href":"/api-reference/venue-platform-preview/issue-an-account-into-a-group"},{"title":"Bind a discovered external account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/bind","href":"/api-reference/venue-platform-preview/bind-a-discovered-external-account"},{"title":"Credit, debit or adjust an account's balance","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/balance","href":"/api-reference/venue-platform-preview/credit-debit-or-adjust-an-accounts-balance"},{"title":"Quote an account payout","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/payout","href":"/api-reference/venue-platform-preview/quote-an-account-payout"},{"title":"Record an account payout","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/payout","href":"/api-reference/venue-platform-preview/record-an-account-payout"},{"title":"Reset an account to its starting balance","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/reset","href":"/api-reference/venue-platform-preview/reset-an-account-to-its-starting-balance"},{"title":"Halt trading on an account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/halt","href":"/api-reference/venue-platform-preview/halt-trading-on-an-account"},{"title":"Resume trading on an account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/resume","href":"/api-reference/venue-platform-preview/resume-trading-on-an-account"},{"title":"Read an account's analytics","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/analytics","href":"/api-reference/venue-platform-preview/read-an-accounts-analytics"},{"title":"Revoke an account grant","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/venues/{venueId}/accounts/{accountId}/grants/{grantId}","href":"/api-reference/venue-platform-preview/revoke-an-account-grant"},{"title":"Read account invitation status","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/grants/{grantId}","href":"/api-reference/venue-platform-preview/read-account-invitation-status"},{"title":"Read an account's open liquidation","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/incident","href":"/api-reference/venue-platform-preview/read-an-accounts-open-liquidation"},{"title":"Read what one account may trade","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/instruments","href":"/api-reference/venue-platform-preview/read-what-one-account-may-trade"},{"title":"Read a customer account's books","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/ledger","href":"/api-reference/venue-platform-preview/read-a-customer-accounts-books"},{"title":"Read one account's effective conditions","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/conditions/accounts/{accountId}/effective","href":"/api-reference/venue-platform-preview/read-one-accounts-effective-conditions"},{"title":"Invite an account recipient","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/grants","href":"/api-reference/venue-platform-preview/invite-an-account-recipient"},{"title":"Move an account between groups","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/accounts/{accountId}/group","href":"/api-reference/venue-platform-preview/move-an-account-between-groups"},{"title":"Set per-account safety limits","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/conditions/accounts/{accountId}/risk","href":"/api-reference/venue-platform-preview/set-per-account-safety-limits"},{"title":"Read recorded account operations","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/activity","href":"/api-reference/venue-platform-preview/read-recorded-account-operations"},{"title":"Read a user’s activity across their accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/accounts/{accountId}/user-activity","href":"/api-reference/venue-platform-preview/read-a-user’s-activity-across-their-accounts"}]},{"group":"Venue traders","pages":[{"title":"Send a trader to the trading platform","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/handoffs","href":"/api-reference/venue-platform-preview/send-a-trader-to-the-trading-platform"},{"title":"Suspend a trader","deprecated":null,"version":null,"openapi":"/api/openapi.json put /api/venues/{venueId}/traders/{trader}/suspension","href":"/api-reference/venue-platform-preview/suspend-a-trader"},{"title":"Lift a trader's suspension","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/venues/{venueId}/traders/{trader}/suspension","href":"/api-reference/venue-platform-preview/lift-a-traders-suspension"}]},{"group":"Hedging","pages":[{"title":"Read venue hedge state","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/hedges","href":"/api-reference/venue-platform-preview/read-venue-hedge-state"},{"title":"Publish a hedge policy","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/policies","href":"/api-reference/venue-platform-preview/publish-a-hedge-policy"},{"title":"Activate, pause or stop a hedge policy","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/activation","href":"/api-reference/venue-platform-preview/activate-pause-or-stop-a-hedge-policy"},{"title":"Preview or persist the next hedge target","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/calculate","href":"/api-reference/venue-platform-preview/preview-or-persist-the-next-hedge-target"},{"title":"Dispatch one prepared hedge intent","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/intents/{intentId}/dispatch","href":"/api-reference/venue-platform-preview/dispatch-one-prepared-hedge-intent"},{"title":"Reconcile an uncertain hedge intent","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/intents/{intentId}/reconcile","href":"/api-reference/venue-platform-preview/reconcile-an-uncertain-hedge-intent"},{"title":"Stop every hedge policy for this venue","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/emergency-stop","href":"/api-reference/venue-platform-preview/stop-every-hedge-policy-for-this-venue"},{"title":"Flatten a hedge destination","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/flatten","href":"/api-reference/venue-platform-preview/flatten-a-hedge-destination"},{"title":"Bind a customer account to its hedge account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/accounts","href":"/api-reference/venue-platform-preview/bind-a-customer-account-to-its-hedge-account"},{"title":"Reconcile a customer account's hedge","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedges/accounts/{accountId}/reconcile","href":"/api-reference/venue-platform-preview/reconcile-a-customer-accounts-hedge"},{"title":"List hedging policies","description":"Lists every hedging policy you made, newest first, each with its terms in force, its state and the groups that pick it. Required scope: `hedge:read`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/hedging-policies","href":"/api-reference/venue-platform-preview/list-hedging-policies"},{"title":"Make a hedging policy","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedging-policies","href":"/api-reference/venue-platform-preview/make-a-hedging-policy"},{"title":"Change a hedging policy","description":"Publishes a new version of a policy's name and terms, in force at once for every group that picks it, at the `revision` you read. Changing an active policy also needs `hedge:execute`, as resuming one does. A version that moves a hedge still held is refused: a net hedge account that holds a position or has an order on its way, or copies held at a hedge market the new terms leave. Flatten or reconcile first. Earlier versions stay, for the hedges they produced. Required scope: `hedge:manage`. Preview: served on the sandbox to every venue, and production availability is arranged when a venue qualifies. Trading API keys and pre-registration keys do not authorize these routes.","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedging-policies/{hedgingPolicyId}","href":"/api-reference/venue-platform-preview/change-a-hedging-policy"},{"title":"Delete a hedging policy","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/venues/{venueId}/hedging-policies/{hedgingPolicyId}","href":"/api-reference/venue-platform-preview/delete-a-hedging-policy"},{"title":"Pause, stop or resume a hedging policy","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/hedging-policies/{hedgingPolicyId}/state","href":"/api-reference/venue-platform-preview/pause-stop-or-resume-a-hedging-policy"},{"title":"Pick a group's hedging policy","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/groups/{groupId}/hedging-policy","href":"/api-reference/venue-platform-preview/pick-a-groups-hedging-policy"},{"title":"Set an account's tags","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/tags","href":"/api-reference/venue-platform-preview/set-an-accounts-tags"},{"title":"Unbind a hedge account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/accounts/{accountId}/unbind","href":"/api-reference/venue-platform-preview/unbind-a-hedge-account"},{"title":"Read risk across the venue's accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/risk","href":"/api-reference/venue-platform-preview/read-risk-across-the-venues-accounts"}]},{"group":"Usage and webhooks","pages":[{"title":"Read the venue's metered usage for a month","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/usage","href":"/api-reference/venue-platform-preview/read-the-venues-metered-usage-for-a-month"},{"title":"Read the accounts behind the venue's usage","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/usage/accounts","href":"/api-reference/venue-platform-preview/read-the-accounts-behind-the-venues-usage"},{"title":"Read the receipt of one balance operation","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/balance-ops/{referenceId}","href":"/api-reference/venue-platform-preview/read-the-receipt-of-one-balance-operation"},{"title":"List the venue's webhooks","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/webhooks","href":"/api-reference/venue-platform-preview/list-the-venues-webhooks"},{"title":"Register a webhook","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/webhooks","href":"/api-reference/venue-platform-preview/register-a-webhook"},{"title":"Remove a webhook","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/venues/{venueId}/webhooks/{webhookId}","href":"/api-reference/venue-platform-preview/remove-a-webhook"},{"title":"Send a signed test ping to a webhook","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/venues/{venueId}/webhooks/{webhookId}/test","href":"/api-reference/venue-platform-preview/send-a-signed-test-ping-to-a-webhook"},{"title":"Read a webhook's delivery log","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/venues/{venueId}/webhooks/{webhookId}/deliveries","href":"/api-reference/venue-platform-preview/read-a-webhooks-delivery-log"}]},{"group":"Pre-registration","pages":[{"title":"Pre-register a trader’s account","deprecated":null,"version":null,"openapi":"/api/openapi.json post /api/pre-registration/registrations","href":"/api-reference/connect/pre-register-a-trader’s-account"},{"title":"List pre-registered accounts","deprecated":null,"version":null,"openapi":"/api/openapi.json get /api/pre-registration/registrations","href":"/api-reference/connect/list-pre-registered-accounts"},{"title":"Cancel a pre-registration","deprecated":null,"version":null,"openapi":"/api/openapi.json delete /api/pre-registration/registrations","href":"/api-reference/connect/cancel-a-pre-registration"}]},{"group":"Pre-registration conformance (sandbox)","pages":[{"title":"Start a sandbox conformance run","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/pre-registration/conformance/runs","href":"/api-reference/connect/start-a-sandbox-conformance-run"},{"title":"Read conformance run results","deprecated":true,"version":null,"openapi":"/api/openapi.json get /api/pre-registration/conformance/runs/{id}","href":"/api-reference/connect/read-conformance-run-results"},{"title":"Finish a sandbox conformance run","deprecated":true,"version":null,"openapi":"/api/openapi.json post /api/pre-registration/conformance/runs/{id}/close","href":"/api-reference/connect/finish-a-sandbox-conformance-run"}]}]}]}]},{"tab":"SDKs and tools","dropdowns":[{"dropdown":"Overview","icon":"flag-checkered","description":"Choose a tool for your integration","pages":[{"title":"SDKs and tools","sidebarTitle":"Overview","href":"/sdks"}]},{"dropdown":"Connect","icon":"link","description":"Embed hosted Connect with the Connect SDK","pages":[{"title":"Connect SDK","sidebarTitle":"Connect SDK","href":"/sdks/connect"}]},{"dropdown":"TypeScript","icon":"cube","description":"Read about the TypeScript SDK and its availability","pages":[{"title":"TypeScript SDK","sidebarTitle":"TypeScript SDK (unavailable)","href":"/sdks/typescript"}]},{"dropdown":"Charting","icon":"chart-line","description":"Build charts with Quick Charts","pages":[{"title":"Charting","href":"/chart-integration"}]},{"dropdown":"CLI","icon":"terminal","description":"Read about the CLI and its availability","pages":[{"title":"CLI","sidebarTitle":"CLI (unavailable)","href":"/cli"}]},{"dropdown":"AI","icon":"robot","description":"Build and check an integration with a coding agent","groups":[{"group":"Start here","pages":[{"title":"Build with AI","href":"/ai"}]},{"group":"Prompts","pages":[{"title":"Agent prompts","href":"/sdks/agent-prompts"}]}]}]}]},"basePath":"","title":"Make a hedging policy - trdrs Engine API","buildId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","deploymentId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DCDCdBVX.js","utils-ME8dDnLe.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-0e84ACsd.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-wgRBj-ia.js","snippetPresets-C11Sgb-o.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-C0lapOpP.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-ZeRQV8fF.js","shallow-BupWh095.js","getApiPlaygroundDisplay-BnYQO2Ss.js","CodeSnippet-RKKOc8c_.js","CodeSnippets-Drf_m8wS.js","Page-Bevw23-4.js","getPastedJson-u6QiPzNZ.js","icon-Bb-CBSxO.js","MethodPill-F7l5AI7V.js","DuplicateIcon-IiAXkdSg.js","createIcon-FliI8EBc.js","DynamicMarkdown-B62XqCSI.js","SectionHeading-Dj31pT03.js","axios-vUo_bRtp.js","Markdown-BOgQCTwD.js","clsx-BIWXJmsZ.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DKZWslLH.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-UDqbR6xh.js"]}