When an order fails
Where a failed order is logged, which failures notify you, and how to recover by hand, whether the alert, the bot or the broker caused the failure.
Nyria doesn't retry a failed or rejected order. The one exception is a close on a cash account that the broker rejected for a reason that clears by itself, such as unsettled funds or a broker outage: Nyria re-sends that close once.
Where a trade can fail
An alert passes through three stages on its way to your broker. Each stage logs its failures in a different place.
1. The alert never became a trade
The alert reached Nyria, but the strategy didn't turn it into an order. Nyria couldn't read it, the ticker isn't in the strategy's list, the strategy is paused or closing only, or an entry arrived outside the trading window.
Where to look: the strategy's Logs tab. It has one entry per incoming alert, and only the strategy's owner can see it.
Typical entries:
| Message | Cause |
|---|---|
ALERT FAILED: <reason> | Nyria couldn't process the alert. The reason names the problem, for example text it couldn't read or an option contract it couldn't find |
this strategy takes the contract from the alert, and the alert has no strike, expiry, or call or put | Contract selection is Provided in alert, and the alert left out the strike, expiration or side |
Alert ignored: the strategy is <status> | The strategy is a draft, paused or deleted |
<action> <direction> <SYM> | Skipped: strategy is closing only, entries are off | The strategy was deleted with trades open. Exits still go through and entries are refused |
instrument '<SYM>' not in allowed list | The strategy doesn't trade that ticker |
a <side> <SYM> position is already open and Allow multiple entries is off | The strategy holds one position at a time, and one is already open |
Duplicate alert ignored: the same message arrived <age> earlier. To enter again, make each alert message different. | The same message arrived twice within 30 seconds, or within 5 minutes with no other alert in between. This line is logged at most once every 5 minutes |
leg <N> has no contract symbol, so the option order wasn't built | On a Provided in alert strategy, the leg had no expiration (the alert named none), or market data was unavailable, so its contract couldn't be looked up |
To recover: fix the alert or the strategy settings, then send the alert again.
2. The bot couldn't build or place the order

Nyria read the alert, but the bot couldn't act on it. Usually the budget is too small for one contract, or the account has no buying power.
Where to look: the bot's Logs tab, with one entry per bot per alert, visible to the bot's owner; the creator of a strategy you copy sees only its most recent line.
Typical entries:
| Message | Cause |
|---|---|
One <SYM> <unit> costs $<cost>, more than this bot's $<budget> budget per entry | The bot's budget per entry is less than one share, contract or spread costs |
One <SYM> <unit> costs $<cost> and <broker> shows $<cash> available | The account's cash (or its buying power, when cash reads $0) is less than one unit costs |
This entry needs $<amount> and Alpaca shows $<cash> available | Alpaca refused the order because the account doesn't have the cash for it |
Contract selection failures are logged on the strategy, not the bot. Nyria picks the contract once for the whole strategy, before any bot places an order. If no contract fits, no bot receives the alert, and only the strategy's owner sees the entry.
| Message | Cause |
|---|---|
No NVDA expiry within 1 to 3 trading days. The nearest is Fri, Oct 30 (4 trading days). Widen Days to expiration. | No expiration falls inside the leg's DTE range |
failed to select options: fetching expirations: no expirations found for <ticker> within <min>-<max> market days DTE | The same miss, when market data named no nearest expiry to show |
To recover: fix the cause, then wait for the next alert or send the entry again.
3. The broker rejected the order
Nyria placed the order and the broker refused it. Some cash accounts accept an order and then reject it a few seconds later.
Where to look: the bot's Logs tab, which shows the broker's own reason.
If the broker gave none, the entry reads
<Broker> rejected the order (no reason given).
Common reasons:
- Not enough buying power. This includes closing a credit spread, which is a debit
- Missing account permissions, such as the options approval level, margin or crypto trading
- The Pattern Day Trader rule, on an account under $25,000
- The market is closed, or the broker doesn't accept that order type in the current session
- The strike or contract isn't available
To recover: a rejected entry is not sent again. A rejected exit leaves the position open, so close it yourself, or fix the cause and send another exit alert. Closing a position covers every way to close.
The one close Nyria re-sends
On a cash account, a close can be rejected for a reason that clears by itself:
unsettled funds, a broker timeout or a broker outage. If the position is open,
Nyria sends the close one more time, checking every 30 minutes. The bot log marks it Retrying the close a cash account could not settle.
Every other failed exit stays failed. While the position is open, the bot log
shows <SYM> exit failed at <broker> ... and the position is still open, and
you need to close it yourself.
Which failures notify you
Only flagged failures send a notification, but the bot log records all of them.
Flagged failures appear under Trades, and reach your email only if you turn on Trades email. An order the broker accepted and then rejected appears under Brokers. See notifications to change these settings.
Your daily check
Open Notifications, set the filter to Live, and read anything unread.
Open each live bot's Logs tab and look for rows badged Failed or Needs attention.
On the dashboard, select the positions open banner to open Live now. Compare its list with the positions page at your broker. They should match exactly.
Make sure every integration shows Connected. A disconnected broker blocks every order on that account, exits included.
Reading a rejection
A bot log entry quotes the broker's reason word for word, so search for that exact text. Each broker's page under integrations lists the wording it uses. Nyria's own messages are listed in troubleshooting, and status badges explains each badge in the log.
Known limitations covers partial fills and alerts that arrive at the same moment. An exit alert with no tracked position is logged Skipped and sends nothing. See no position found to exit.
Avoiding failures
- Keep more cash in the account than your entries need. Exits need room too
- Trade from a separate account, so your manual trades can't confuse position tracking
- Expect more rejections and partial fills on thinly traded options
- Run the strategy on paper first, then go live with a small budget
Next steps
- Closing a position: every way to get flat
- Why was my exit skipped?: an exit that closed nothing
- Notifications: choose what reaches you
- Troubleshooting: fixes listed by log message
- Known limitations
Notifications
Where Nyria tells you a trade failed, a broker disconnected, or a strategy went quiet, and how to choose which of those reach your inbox.
Sell your strategy through Nyria
Set a monthly price and Nyria sells your strategy for you. Members pay Nyria by card, Nyria keeps its fee, and Stripe pays you the rest.