"Order sent" — but the broker never took it
Our bot announced that an order had been sent. The broker had rejected it. The bot was reporting what it tried to do, not what actually happened.
· 2 min read
Launchpad
Build it step by step, and learn from real failures before they cost you.
Eight steps from idea to a live algo-bot, in order. The step-by-step guides are being written; where a lesson from Part 2 belongs to a step, it's linked below. Subscribe to get each guide as it's published.
What to look for: order types, rate limits, data access, static IP and algo-ID support.
Live feeds and history, candles vs ticks, and the gaps that will bite you.
Signals, orders, state and logs as separate parts, so one failure doesn't take down the rest.
Run it on live prices without real orders, and compare it with your backtest.
Maximum loss, maximum orders, size checks, and one switch that stops everything.
Smallest size, one strategy, a staged rollout, and a plan for what you'll watch.
Know within a minute when something is wrong, on more than one channel.
Match the bot's positions and P&L against the broker's records, every single day.
What went wrong, what it cost, the root cause and the fix, each ending in one line for your go-live checklist.
Our bot announced that an order had been sent. The broker had rejected it. The bot was reporting what it tried to do, not what actually happened.
· 2 min read
One broker API reads the order quantity as lots, another as units. The same code placed one lot on one account and ten on the other.
· 2 min read
A small cloud server ran out of memory at the busiest minute of the day. The operating system killed the bot halfway through placing an order, and the restart nearly placed it again.
· 3 min read