How to test an AI trading bot on paper before risking money

Start with one saved AI call and a virtual trade. Then follow the same rules, log every result and check what remains after costs.

Cryptathon app on a phone showing a Solana perpetual futures chart and order book, next to the words Practice crypto. Get confident.

To test an AI trading bot without real money, save its calls before the price moves, place the eligible ones on a paper account, and track results after costs. You can start on your phone without coding.

You've seen the posts: free GitHub repos that supposedly give you an AI hedge fund, followed by “Paper trade it for 30 days first.” Here's how to turn that advice into your first trade and a record you can check.

Start here: record a call and place a paper trade

Cryptathon is our app: free on Android and in the browser, with 10,000 virtual USDT to start. You can practise Bitcoin (BTC), Ethereum (ETH) and Solana (SOL) perpetual futures, going long or short. Cryptathon has no bot API, so you enter the AI's calls by hand.

Before placing anything, choose the AI source, the size and leverage you'll use, and the entry and exit rules. Here's the first-trade sequence:

  1. Get Cryptathon on Android or open it in your browser. Note your opening virtual balance and start time.
  2. Save the AI's original call with its timestamp. Check that it gives a market, direction, entry, stop, target, size and leverage.
  3. Place the market or limit order that matches the call and your rules. Set the planned stop loss and take profit.
  4. Record the actual fill price. When the position closes, use trade history to log the exit and result after costs.

Orders match against market makers and other players on a live order book. The money stays virtual; no real crypto is bought or sold.

What does a usable AI call look like?

A call needs enough detail to place and close the trade without guessing. For example, using made-up prices:

  • Market and direction: BTC perpetual futures, long.
  • Entry: limit buy at 100,000 USDT; cancel if unfilled after 30 minutes.
  • Exit: stop loss at 99,000 USDT; take profit at 102,000 USDT.
  • Size and leverage: 0.001 BTC at 1× leverage.

If the tool only says “BTC looks bullish”, ask: “Give the market, long or short direction, entry order type and price, entry expiry, stop loss, take profit, position size and leverage. If there is no complete trade, say no trade.” Reuse that prompt. If fields are still missing, log the response as unusable and skip it.

If you supply the sizing or exits yourself, save those as your rules. Keep stock recommendations and spot portfolio allocations out of this futures test; converting them into leveraged trades changes the strategy.

Set the rules for the rest of the test

Once you've placed the first trade, make the routine repeatable. Add these decisions to your phone note before the next call:

  • Source and schedule: tool, model or version, exact prompt, supplied data and check times in one time zone. For chat tools, choose which response counts, such as the first complete response at each check.
  • Eligible trades: markets, directions, what counts as “no trade”, order type and entry expiry. Set a cap on simultaneous positions.
  • Position and exit rules: fixed sizing rule and leverage, stop, target, any time-based exit, and what to do if a new call contradicts an open position.
  • Review and stopping point: test dates, completed-trade checkpoint and the maximum account fall at which you'll stop.

Take every eligible call, including ones that feel uncomfortable after a losing streak. Keep “hold” responses, rejected orders and missed calls. If a signal arrives while you're asleep, mark it missed; don't enter yesterday's price because the chart later showed a winner.

A limit order that never filled stays unfilled. If calls arrive faster than you can enter them, record the missed signals. Repeatedly asking the AI until it gives the direction you want changes what you're testing.

Count the costs and watch the position

A price prediction can be right while the trade loses. Cryptathon charges virtual trading fees on the position value, not just the margin you put up. Leverage increases exposure; it doesn't improve the prediction.

Watch the mark price, the reference price used to assess the position, and the liquidation level, where the position is forcibly closed because its margin is insufficient. A planned stop won't protect a position that liquidates first. Keep liquidations in your results.

Funding is a payment between long and short positions. In Cryptathon it happens every eight hours at 00:00, 08:00 and 16:00 UTC: 5:30 am, 1:30 pm and 9:30 pm IST. Positions open at those times can pay or receive it.

Keep one row per call

Save the original response beside the outcome. A spreadsheet on your phone is enough. Include:

  • Call time, saved response, market and direction.
  • Planned entry, stop, target, size and leverage.
  • Actual entry and exit times and prices; filled, unfilled, missed or unusable status.
  • Gross trading profit or loss, entry and exit fees, funding paid or received, and net result.
  • Rule breaches, execution delays and liquidations.

If the AI suggests an entry of 100 but your order fills at 101, write 101 in the actual-entry field. Keep 100 in the planned-entry field so you can see the difference when reviewing the trade.

Net result equals gross trading profit or loss minus fees, minus funding paid, plus funding received. If the displayed result already includes those costs, don't subtract them again. Actual fills already capture the gap from the expected price; don't count that slippage twice.

Record account equity, including open-position gains and losses, at consistent checkpoints. Keep rewards and balance resets separate. Otherwise, closed winners can hide a loss still sitting in an open position.

Check more than win rate

Eight wins out of ten can still lose virtual money. Imagine eight trades earn 10 virtual USDT each and two lose 60 each, all after costs. That's an 80% win rate and a net loss of 40 virtual USDT.

At your review, calculate:

  • Trade count: completed trades alongside eligible, missed and unfilled calls.
  • Win rate: winning closed trades divided by all closed trades, with wins classified after costs.
  • Average win and loss: compare the amount each winner earns with the amount each loser costs.
  • Average net result: total net closed-trade result divided by closed trades. Check whether one unusual winner carries the total.
  • Maximum drawdown: the largest fall in account equity from a previous peak to a later low, in virtual USDT and percent. Use equity including open positions, excluding rewards and resets. Checkpoint records can miss falls between checks.

Keep mistakes in the overall record, even when reviewing rule-following trades separately. Repeated missed entries or execution errors matter to whether you can follow the strategy.

What to review after 30 days

Thirty days gives you a review date, not proof that the strategy works. A daily signal produces a different sample from dozens of calls a day. You could review after both 30 days and 50 completed trades, without forcing extra trades to reach the count.

Ask whether you followed the rules, what costs took away, and which market conditions you covered. Fifty trades in one rally don't show how the strategy behaves in a falling or sideways market. Several calls may depend on the same market move.

If you change the prompt, sizing, stop or entry filter, save the old results and start a separately labelled test. Keep your review date even when the balance is down.

For a repository that also shows historical backtests, check two extra traps: using information unavailable at trade time, and repeatedly tuning settings on the same data. Freqtrade's lookahead-analysis documentation explains the first: for example, using a candle's closing price before that candle has closed. Freeze settings and test on a later, untouched period.

Frequently asked questions

Does a working AI bot mean its strategy is profitable?

No. A running repository and a convincing explanation don't establish profitability. Check its timestamped calls against the full trade record, including losses and costs.

Can I withdraw profits from the test?

No. Cryptathon balances and profits are virtual; nothing pays out. Our guide to paper trading withdrawals explains the difference.

Ask an AI about Cryptathon

Read it here.
Try it there.

Try what you learned on a live order book,
with virtual money and zero risk.