◆SOL/USD——◆BTC/USD——◆ETH/USD——◆JUP/USD——◆BNB/USD——◆ARB-BOT-07+$1,240.21◆GRID-STP-04+$450.00◆MKT-NEUTRAL-01-$12.40◆SNIPER-03+$880.00◆SOL/USD——◆BTC/USD——◆ETH/USD——◆JUP/USD——◆BNB/USD——◆ARB-BOT-07+$1,240.21◆GRID-STP-04+$450.00◆MKT-NEUTRAL-01-$12.40◆SNIPER-03+$880.00
QWNT.AI/Blog
EducationSeptember 29, 20266 min read

Why Your AI Trading Agent Stopped Opening Positions

An agent that has gone quiet is usually working correctly. Here are the six gates that stop an automated strategy entering a trade, in the order to check them, and how to tell a healthy pause from a real problem.


Your agent traded actively for two days and has done nothing since. Before assuming it is broken, it is worth knowing that a well-configured agent spends most of its life declining to trade. Silence is the normal state.

Here are the gates that stop an entry, in the order worth checking.

1. It is holding its maximum positions

The first and most common answer. Every agent has a max_concurrent_positions setting. Once it holds that many open positions, the scanner stops evaluating new candidates entirely — it does not matter how strong the signal is.

This is deliberate. An agent that quietly exceeds its own position limit has abandoned the risk model you configured.

How to tell: count your open positions. If the number equals your configured maximum, the agent is working exactly as designed. It will take a new position when one closes, and not before.

2. Its capital budget is committed

An agent may only deploy against the capital allocated to it, minus what is already tied up in open positions. When available capital reaches zero, it holds.

This trips people up because the wallet often still shows a balance. Two reasons:

  • The capital is in the open positions. It is committed, not spent.
  • Part of the balance is the gas reserve, which is never tradeable.

Realised losses also shrink the budget. If you allocated $200 and the agent is down $40, the budget for new positions is $160, not $200. Whether profits are added back depends on your profit mode: reinvest compounds gains into the budget, while locked keeps them aside, so losses reduce your budget but wins do not increase it.

3. It is on cooldown

After a trade, an agent waits before taking another. Cooldowns prevent a single volatile move triggering a cascade of correlated entries that are really one bet in several disguises.

Cooldowns are usually minutes for fast strategies and can be much longer for slower ones. Prediction-market strategies, for instance, are frequently on a ten-minute cycle.

How to tell: if the agent's last trade was recent and the pause is short, this is almost certainly it.

4. The wallet is below its floor

An agent needs native currency to pay for transactions. On Solana we hold back a small SOL reserve and refuse to trade the account below it.

This is not conservatism for its own sake. An agent that spends its last SOL on a token purchase cannot afford the transaction that sells it. It would be holding a position it is structurally unable to exit — which means no stop-loss, no take-profit, no way out. Refusing the entry is the only safe behaviour.

How to tell: check the agent wallet's SOL balance. If it is close to the reserve, top it up.

5. Its risk parameters were rejected

If take-profit is not meaningfully larger than stop-loss, the configuration loses money at any realistic win rate. A strategy targeting +6% while risking −15% needs a win rate above 70% just to break even, which short-horizon momentum entries do not deliver.

Rather than trade a configuration that is negative by construction, a sensible agent substitutes safer defaults and logs a warning.

How to tell: look for a warning that your take-profit and stop-loss pairing was overridden. If you see one, fix the configuration — the agent is protecting you from arithmetic, not malfunctioning.

6. There is no signal

The least exciting and most common reason. The scanner ran, evaluated its candidates, and none met the entry criteria.

Read a healthy agent's activity log and most cycles say some version of scan complete, no entry signal. That is the edge working. Applying the same refusal criteria on the thousandth candidate as on the first, at three in the morning, without the fear of missing out that makes discretionary traders widen their own rules, is most of what automation is actually for.

An agent that trades constantly has usually had its gates removed, or never had them.

When it is a real problem

Having ruled out the six above, these are worth investigating:

  • Open positions far past their intended horizon. A strategy that expects to hold for minutes and has held for days is not being patient. It is usually stuck, and a stuck position is not protected by anything.
  • Positions sitting well beyond their stop-loss level. A stop is an instruction, not a guarantee — but a position resting far below its stop for an extended period means the exit is not executing, which is a different and more serious condition than a quiet scanner.
  • The same warning repeating identically, forever. One warning is information. The same line every thirty seconds for a day is a symptom. Repetition at a fixed interval means something is retrying and failing rather than recovering.

The quick diagnostic

  1. Open positions equal to your maximum? Working correctly.
  2. Available capital at or near zero? Working correctly.
  3. Last trade very recent? Probably cooldown.
  4. Wallet near the gas reserve? Top it up.
  5. A configuration override warning? Fix your take-profit to stop-loss ratio.
  6. None of the above, and the log shows scans completing? No signal. Working correctly.

Five of those six are the system doing its job. The instinct to treat a quiet agent as a broken one is worth resisting — the expensive failures in automated trading are almost never the trades that were not taken.

←All articles