A trading bot review should begin with evidence, not a polished dashboard or a headline return. This checklist shows how to evaluate bot trading performance across live results, benchmark performance, drawdown, fees, slippage, trade frequency, risk-adjusted returns, and losing streaks so you can decide whether a system is robust enough for further testing.
Overview
A trading bot is only as credible as the process used to measure it. A backtest can show how a rules-based strategy behaved under historical assumptions, but it cannot prove that the same results will continue in live markets. Execution quality, liquidity, market regime, data quality, broker connectivity, and user settings can all change the outcome.
The first task is to define what the bot is supposed to do. A day trading bot, swing trading bot, and portfolio rebalancing system should not be judged by the same expectations. Record the bot’s intended market, timeframe, instruments, entry and exit rules, position-sizing method, trading hours, and maximum permitted exposure. If the provider cannot explain these basics clearly, treat the performance record cautiously.
Evaluate results in three layers:
- Return: Did the strategy make money over the period being reviewed?
- Risk: How much volatility, drawdown, concentration, and losing activity was required to produce that return?
- Reliability: Can the results be reproduced after fees, slippage, execution delays, and realistic account constraints?
No single metric answers all three questions. A bot with high returns and severe drawdowns may be unsuitable for a conservative account. Another system with modest gains but stable execution may be more useful as a diversified component. For additional context, compare your review process with the Sharpe ratio versus Sortino ratio guide and the backtesting guide.
Checklist by scenario
1. Reviewing a backtest
Start by identifying whether the test used historical data that was available at the time each decision would have been made. Look for signs of look-ahead bias, survivorship bias, unrealistic fills, and excessive parameter tuning. Ask whether delisted securities, corporate actions, trading halts, spread costs, and gaps were handled in a credible way.
Separate in-sample results from out-of-sample results. A strategy that performs well only during the period used to tune its settings may be overfit. A more useful test applies fixed rules to a different period, market, or group of instruments. Walk-forward testing and paper trading can add another layer of validation, although neither removes live-trading risk.
2. Reviewing paper-trading results
Paper results are useful for checking signals, order logic, position sizing, and operational stability. They are not a substitute for live execution because simulated fills may differ from real fills. Compare the bot’s assumed entry and exit prices with observable market conditions, particularly for lower-liquidity stocks or strategies that trade frequently.
Check whether the paper account uses the same account size, buying-power rules, order types, trading hours, and instrument universe that you expect to use live. A bot may appear practical at a large notional size but become difficult to execute with a smaller account.
3. Reviewing live performance
Prefer a time-stamped, independently verifiable record over screenshots or selected winning trades. The record should show starting capital, deposits and withdrawals, open and closed positions, commissions, realized and unrealized profit or loss, and the period covered. Confirm whether returns are shown before or after fees.
Compare the bot with an appropriate benchmark. A long-only equity bot might be compared with a suitable broad market benchmark, while a market-neutral strategy may require a cash or risk-matched comparison. The purpose is not to force every bot to beat the same index; it is to determine whether the return justified the strategy’s risks and complexity.
4. Comparing two bots
Use the same observation period, account assumptions, fee treatment, and benchmark where possible. A simple comparison table can prevent a high-return system from hiding an unacceptable risk profile.
| Metric | What to record | Why it matters |
|---|---|---|
| Live return | Net percentage gain or loss and period measured | Shows the outcome after the selected evaluation period |
| Benchmark performance | Return from a relevant passive or risk-matched comparison | Shows whether active complexity added value |
| Maximum drawdown | Largest peak-to-trough decline | Indicates the capital decline an investor had to tolerate |
| Fees and commissions | Trading fees, platform charges, data costs, and subscriptions | Reveals the difference between gross and net results |
| Slippage | Difference between expected and executed prices | Measures the cost of turning signals into trades |
| Trade frequency | Trades per day, week, or month | Helps estimate operational workload and transaction sensitivity |
| Risk-adjusted return | Sharpe, Sortino, or another clearly defined measure | Places returns in the context of volatility or downside risk |
| Maximum losing streak | Largest consecutive sequence of losing trades | Tests whether the strategy fits your psychological and financial limits |
5. Assessing an AI trading bot
Ask what “AI” means in the product. It may refer to signal generation, pattern classification, portfolio allocation, natural-language analysis, or marketing language. The label alone does not establish an edge. Request a plain-language explanation of the data inputs, decision process, retraining schedule, human controls, and failure safeguards.
What to double-check
Net versus gross results: A result that excludes commissions, data subscriptions, spreads, borrowing costs, or platform charges can materially overstate profitability. Build a conservative cost estimate and test whether the strategy remains viable.
Drawdown definition: Confirm whether drawdown is calculated from closed trades only or includes open positions. Also check whether the reported figure is the maximum historical drawdown or an average. These are not interchangeable.
Slippage assumptions: A fixed assumption may be unsuitable across highly liquid and thinly traded instruments. Review results during market openings, news events, earnings releases, and volatile sessions separately.
Exposure and concentration: Count overlapping positions, sector exposure, single-stock exposure, and correlated signals. Several trades can create one large economic bet. A bot that trades many symbols is not automatically diversified.
Risk controls: Identify the maximum position size, daily loss limit, stop logic, account-level exposure cap, and behavior during connection failures. Position sizing should be linked to account risk and volatility rather than a fixed number of shares. The ATR position sizing guide provides a practical framework for incorporating volatility.
Broker and platform compatibility: Confirm supported markets, order types, authentication method, market-data requirements, trading hours, and any account restrictions. Broker fees and platform capabilities can change, so verify them directly before subscribing or deploying capital.
Common mistakes
- Choosing the highest recent return: Short samples can reflect a favorable market regime rather than durable performance.
- Ignoring losing streaks: A strategy can have positive long-term expectancy while producing a difficult sequence of losses. Estimate the capital and patience required to continue following its rules.
- Confusing a signal with an execution system: A stock scanner or alert may identify an opportunity but leave entries, exits, sizing, and monitoring to the trader.
- Changing settings after every loss: Constant adjustment can turn a rules-based system into discretionary trading and make later results impossible to interpret.
- Scaling too early: Test at a manageable size first. Confirm order behavior, alerts, fills, logs, and emergency controls before increasing exposure.
- Trusting a smooth equity curve: Smooth results may reflect simulation assumptions, selective reporting, or insufficient live history. Ask how the curve was produced and whether it includes all trades.
Use a written evaluation sheet rather than relying on memory. Record the bot version, settings, broker, data source, account size, evaluation dates, and every change made during testing. This creates an audit trail and makes it easier to distinguish strategy performance from user intervention.
When to revisit
Review a trading bot before subscribing, before moving from paper trading to live execution, after a material code or parameter change, and at a regular interval such as monthly or quarterly. Revisit the analysis sooner when the bot changes markets, the broker changes fees or order behavior, market volatility shifts, or the system experiences an unusual drawdown or execution error.
At each review, export the latest trade log and update the same core fields: net return, benchmark return, drawdown, costs, slippage, trade count, risk-adjusted return, losing streak, exposure, and operational incidents. Compare the new period with the original test instead of replacing the old record. A strategy may still be functioning even when a short period is weak, but the decision should be based on predefined thresholds rather than emotion.
Before committing or renewing capital, complete this short action list:
- Write down the bot’s strategy, market, timeframe, and risk limits.
- Verify whether reported performance is live, simulated, gross, or net.
- Recalculate results after realistic fees and slippage.
- Compare returns with a relevant benchmark and review drawdown.
- Check the maximum losing streak, concentration, and account-level exposure.
- Run the system in paper trading or at minimal size until execution is understood.
- Set a review date and objective conditions for reducing, pausing, or stopping the bot.
A careful trading bot review does not predict future returns. It improves the quality of the decision by showing what the system has done, what assumptions support the results, and how much risk is required to keep using it.