Refusals

Refusals that stop a whole run are listed under Error codes.

Entries

CodeNumberWhat it means
ORD_MAX_PENDING20The strategy already has the most pending orders the settings allow, so a new one was not placed.
ORD_EXPIRED21A pending order reached its expiry before it filled and was removed.
ORD_MIN_STOP_DISTANCE22A stop or target level was closer than the broker's minimum stop distance, measured from the price the order fills at.
ORD_FREEZE_LEVEL23The broker's freeze distance refused a change, a cancel or a close of something inside it. It never refuses placing an order.
ORD_RANGE_GUARD24The price moved past the range the order allows, so the fill was refused.
ORD_GAP_REJECT25The price jumped across the order's level on a gap, and the order's gap rule refuses a fill there.
ORD_NO_STOP26The order had no stop, and the settings require one.
MARGIN_INSUFFICIENT27There was not enough free margin to open the position.
SIZE_BELOW_MIN28The size worked out below the broker's smallest lot, and the settings refuse a size that small.
SIZE_ABOVE_VOLUME_MAX29The size worked out above the broker's largest lot, and the settings refuse a size that large.
SIZE_NO_STOP_DISTANCE30Sizing from the risk of the trade needs a stop distance, and this entry had none.
SIZE_ABOVE_MAX_LOTS31The size was above the lot cap in your own settings.
BOOK_MAX_CONCURRENT32The most open positions the settings allow were already open.
BOOK_MAX_PER_INSTRUMENT33The most positions the settings allow in one instrument were already open.
BOOK_MAX_PER_DIRECTION34The most positions the settings allow in one direction were already open.
BOOK_MAX_GROSS35The most gross exposure the settings allow was already reached.
BOOK_PYRAMID_CAP36Adding to a position would pass the pyramiding limit.
COOLDOWN37The entry came inside the cooldown the settings set after an exit.
SAME_BAR_REENTRY38The entry came on the bar a position closed on, which the settings do not allow.
MAX_TRADES_PER_DAY39The daily limit on trades had been reached.
STATE_HALTED40The account was halted, so no entry was accepted.
STATE_REDUCE_ONLY41The account was only allowed to close positions, so a new entry was refused.
GATE_SESSION42The entry came outside the trading session the settings allow.
GATE_HOLIDAY43The entry came on a holiday the settings respect.
GATE_WEEKDAY44The entry came on a weekday the settings exclude.
GATE_DATE45The entry came on a date the settings exclude.
GATE_NEWS46The entry fell inside a news window your settings block.
GATE_SPREAD47The spread was wider than the settings allow for an entry.
GATE_ATR_LOW48Volatility, measured by ATR, was below the minimum the settings require.
GATE_ATR_HIGH49Volatility, measured by ATR, was above the maximum the settings allow.
GATE_FILTER50A filter on the entry blocked it.
GATE_DIRECTION51The entry was in a direction the settings do not allow.
MARGIN_AT_FILL52Margin was enough when the order was placed and short when it filled.
BAR_ABSENT53The entry's instrument had no bar at that time.

Configurations

CodeNumberWhat it means
TF_TOO_COARSE60A setting that has no meaning on bars of D1 or coarser is in use on bars that coarse.
BOOK_TOO_LARGE61The book settings allow more open positions than one run can hold.
TRADE_ARRAY_OVERFLOW62The configuration made more fills than one run can hold.
PRIOR_NOT_RECONSTITUTABLE63A run that builds on an earlier result could not rebuild that earlier run's inputs.
TOO_MANY_INSTRUMENTS64The configuration trades more symbols than one run can trade.

Order checks

CodeNumberWhat it means
SIZE_BAD_STEP70The order's size is not a multiple of the symbol's lot step.
MARKET_CLOSED71The order was placed while the symbol's market was closed.
TRADE_MODE_CLOSE_ONLY72The broker allows only closing positions in this symbol.
TRADE_MODE_LONG_ONLY73The broker allows only buying in this symbol.
TRADE_MODE_SHORT_ONLY74The broker allows only selling in this symbol.
HEDGING_NOT_ALLOWED75The account does not allow a position opposite to one already open in the same symbol.
FIFO76The account's first-in, first-out rule refused the order.
WARMING_UP77The order came before the strategy's warm-up bars had passed.
PROP_RULE78A prop-firm rule had no room left for the order.
SIGNAL_STALE79The signal was older than the age limit when the order was placed.
ENTRY_BLACKOUT_END80The entry came inside the blackout before the end of the run.
VETOED81The strategy's confirm_entry hook said no.
CONFIRMATION_NOT_MET82A stop-limit order's trigger was reached, but its confirmation was not met.
STOP_LIMIT_MISSED83A stop-limit order's price moved past its limit before it could fill.
LEVEL_OUT_OF_RANGE84A stop or target worked out at or below zero.
STOP_WOULD_LOOSEN85A new stop was further away than the one it replaces, while stops may only tighten.
VOLUME_LIMIT86An entry would take the open and resting lots of an instrument and side past the lot limit.
SIZE_ZERO87A size of exactly zero was asked for, by the size hook or by an order of zero lots.
BEFORE_OPEN_FROM88The order was placed before the moment this run starts trading.
COSTS_EXCEED_STOP89The trade's costs are larger than the money the stop allows, so the stop cannot be placed.
MARKET_QUOTE_ONLY90The market was quoted but not open for trading, so the order was refused.
NOT_LISTED91The symbol was not listed at that time, so the order was refused.
NEWS_CLOSE_DEFERRED92A news window held this close back until the window ended.
NEWS_MODIFY_DEFERRED93A news window held this change to a stop or target back.
MAX_TRADES_PER_WEEK94The limit on trades opened in one week was already reached.
MAX_REQUESTS_PER_DAY95The limit on order messages in one day was already reached.
LOSS_LOCK96Trading was paused after losses, so the entry was not taken.
STOP_OUT_GUARD97Trading was paused after stop exits, so the entry was not taken.
ORDER_KIND_NOT_OFFERED98The broker does not accept this kind of order on the symbol.
VALUE_ABOVE_CAP99The order's value was above the limit set for one order.
SYMBOL_RESTRICTED100This symbol is on the run's restricted list, so no new entry was taken.
DRAWDOWN_LOCK101Trading was paused after the account fell from its recent high, so the entry was not taken.