Skip to main content

Inspect policy before trading

Call GET /v1/accounts/{account_id}/trading-policy using a read or trade credential. Only owned, non-archived accounts in the credential’s live or sandbox environment and account allowlist are visible. Other account IDs return 404. The response’s data contains a timestamped, advisory snapshot: The limits object uses snake_case keys such as max_open_positions, max_position_value_usd, max_resting_orders, min_order_notional_usd, order_cooldown_ms, and trades_per_minute. Current plan rules replace retired account snapshots for daily loss, drawdown, consistency, and profit target. Minimum-trading-day account overrides are retired. Use returned values instead of copying plan numbers into your integration. A zero percentage disables that rule. The evaluation-inactivity (30 days) and funded-inactivity (7 days) windows are universal product rules pinned in code; they are reported for every account except rule-less competition products and cannot be changed by plan or account.

Market exposure caps

A market’s exposure cap limits combined open notional (long plus short) across accounts of the same challenge model and account size. The server includes existing exposure and rejects a fill that would exceed the configured cap. Closing or reducing positions remains allowed. Exposure-cap enforcement defaults to enabled for newly added markets. A numerical cap must still be configured; enabling the switch alone does not set a dollar limit. Check the current market caps for the applicable limits.

Treat preflight as advisory

Fetch policy when selecting an account and refresh after a relevant rejection or configuration change. Do not poll this endpoint once per second: it consumes the shared REST read budget. A true copy_scope_blocked means the credential cannot cover the configured copy group as a whole. Use a credential authorized for every member in the same environment, or change the group through the website. A false value does not cover stale working copied orders left by earlier configurations: modification and cancellation check those affected accounts again at execution. The snapshot does not reserve margin, position slots, order slots, trade-window allowances, or market liquidity. It does not evaluate a proposed order or fetch fresh prices. Check market metadata and an appropriate quote for market-specific constraints. Placement and settlement remain authoritative for current balances, rate-window usage, cooldown, market hours, competition markets, and all other order-dependent rules. Account evaluation rules can also depend on stage and fresh equity. The saved slippage-protection maximum is enforced server-side and included here. Other saved interface preferences, such as display defaults, are not an order policy.