Orders

Interrupt Order Strategy

Stop a running Order Strategy.

Available to: All authenticated users

Environments: Demo, Live

Rate Limit: 500 requests per hour, 2-second back-off, counts all requests

Stops an Order Strategy that is already running, identified by its orderStrategyId, and cancels its remaining working orders. Order strategies are the multi-bracket constructs created with startOrderStrategy. Use this endpoint to terminate the whole strategy; to change a strategy's parameters while keeping it running, use modifyOrderStrategy instead.

The request body requires only orderStrategyId. Interrupting a strategy stops the strategy logic and cancels its open orders, but it does not flatten any position the strategy has already opened — close that separately with liquidatePosition if needed.

As with other order commands, success is not guaranteed — the strategy may already have completed or its orders may already have filled. The endpoint returns an OrderStrategyStatusResponse. When the request is rejected, the response carries a failureReason and an errorText describing the problem; on success the response includes the updated orderStrategy.

Common Failure Scenarios

  • The strategy already completed or was interrupted (TooLate).
  • Another command for the strategy is still being processed (AnotherCommandPending).
  • The user isn't permitted to trade this account (Unauthorized).

Error Messages

failureReasonTrigger
TooLateThe strategy already completed or was interrupted.
AnotherCommandPendingA previous command for this strategy hasn't completed.
UnauthorizedThe user isn't permitted to trade this account.

See the failureReason enum in the OrderStrategyStatusResponse schema for the complete list of values.

post/orderStrategy/interruptorderstrategy

Request

  • Base URL: https://demo.tradovateapi.com/v1
  • URL: https://demo.tradovateapi.com/v1/orderStrategy/interruptorderstrategy
  • Auth: HTTP bearer

Request body

orderStrategyIdinteger required

Response

OrderStrategyStatusResponse

errorTextstring

Non-empty if the request failed

failureReason'AccountClosed' | 'AdvancedTrailingStopUnsupported' | 'AnotherCommandPending' | 'BackMonthProhibited' | 'ExecutionProviderNotConfigured' | 'ExecutionProviderUnavailable' | 'HomeStateRestricted' | 'InvalidContract' | 'InvalidPrice' | 'KeyInformationDocumentRequired' | 'LiquidationOnly' | 'LiquidationOnlyBeforeExpiration' | 'MaxOrderQtyIsNotSpecified' | 'MaxOrderQtyLimitReached' | 'MaxPosLimitMisconfigured' | 'MaxPosLimitReached' | 'MaxTotalPosLimitReached' | 'MinTradeDurationNotElapsed' | 'MultipleAccountPlanRequired' | 'NoQuote' | 'NotEnoughLiquidity' | 'OtherExecutionRelated' | 'ParentRejected' | 'RiskCheckTimeout' | 'SSFNFAComplianceRequired' | 'SSFNFAComplianceRequiredJointOnly' | 'SSFRiskDisclosureAcknowledgmentRequired' | 'SessionClosed' | 'Success' | 'TooLate' | 'TradingLocked' | 'TrailingStopNonOrderQtyModify' | 'Unauthorized' | 'UnknownReason' | 'Unsupported'

AccountClosed, AdvancedTrailingStopUnsupported, AnotherCommandPending, BackMonthProhibited, ExecutionProviderNotConfigured, ExecutionProviderUnavailable, HomeStateRestricted, InvalidContract, InvalidPrice, KeyInformationDocumentRequired, LiquidationOnly, LiquidationOnlyBeforeExpiration, MaxOrderQtyIsNotSpecified, MaxOrderQtyLimitReached, MaxPosLimitMisconfigured, MaxPosLimitReached, MaxTotalPosLimitReached, MinTradeDurationNotElapsed, MultipleAccountPlanRequired, NoQuote, NotEnoughLiquidity, OtherExecutionRelated, ParentRejected, RiskCheckTimeout, SSFNFAComplianceRequired, SSFNFAComplianceRequiredJointOnly, SSFRiskDisclosureAcknowledgmentRequired, SessionClosed, Success, TooLate, TradingLocked, TrailingStopNonOrderQtyModify, Unauthorized, UnknownReason, Unsupported

Changes

No recorded changes to this operation across all 1 revision of this API.