Skip to content
Gimmer Research and operating guides
Download Gimmer
Cryptocurrencies

Crypto Trading Bot Fees: How to Read Costs in a Backtest

Learn how to review trading fees, spread, slippage, and open exposure in a crypto bot backtest before interpreting the result.

All research
Gimmer backtest report showing fees beside balances and realized and open PnL.

A crypto trading bot backtest should not be judged from gross return alone. Read explicit trading fees beside realized and open PnL, then record the spread, slippage, funding, borrowing, or network costs that may sit outside the displayed fee line. The useful question is not whether the curve went up. It is whether the conclusion survives a realistic cost model and a slightly harsher one.

Gimmer’s Running Backtest guide makes the same distinction practical: use realistic costs, read the report as a system, and rerun the strategy with worse costs before treating a historical result as useful evidence.

Why crypto trading bot fees change the conclusion

Trading costs are small at the level of one order and cumulative at the level of a strategy. A bot that trades frequently can pay a modest fee many times. A slower strategy can pay less often but still face a wide spread or poor execution when liquidity is thin.

That is why two backtests with similar gross outcomes can lead to different decisions. The one with lower turnover may retain more of the modeled result after costs. The one with more trades may be more sensitive to a fee-tier change, a shift from maker to taker execution, or a small increase in slippage.

Do not copy a fee rate from an old test. Venue rules can vary by market, order type, account tier, and activity. Kraken’s official fee overview, for example, explains that its trading fees apply when orders execute and can vary by maker or taker role and trading volume. That is not a Gimmer integration claim. It is a reminder to use the current official schedule for the venue and account you are actually modeling.

Separate the fee line from the full cost model

A displayed Fees value is useful, but it does not automatically answer every cost question. First confirm what that field includes and whether the nearby PnL values are gross or net. Do not subtract the same fee twice.

Then keep the relevant cost categories separate:

Cost Question to record before the test Common mistake
Trading fee Which executed order value, fee tier, and maker or taker assumption does the model use? Using one permanent rate for every market and order.
Spread How much distance between bid and ask is assumed when the strategy enters or exits? Treating a candle price as a guaranteed executable price.
Slippage How far can the modeled fill move from the reference price? Applying no penalty when size or volatility rises.
Funding or borrowing Does the selected market create a time-based cost for holding the position? Reusing a spot-market assumption for a leveraged position.
Network or operational cost Does this workflow require a network transaction, conversion, withdrawal, or other paid action? Adding costs that do not belong to the tested workflow, or omitting the ones that do.

Not every row applies to every strategy. The point is to define the boundary before you see the result. If you add or remove costs only after the curve disappoints you, the test becomes harder to compare with earlier runs.

Read Fees beside turnover, balances, and open exposure

In the current Gimmer report surface, Fees appears alongside initial and total balance, realized PnL, open PnL, and open and closed position counts. The companion guide to reading a Gimmer backtest report explains why those fields belong in one review rather than separate snapshots.

Use this reading order:

  1. Confirm the run. Check the strategy revision, market, interval, date range, and starting balance.
  2. Count the executions. More orders create more opportunities for fees, spread, and slippage to compound.
  3. Read the explicit fee value. Confirm its unit and calculation boundary before comparing it with PnL.
  4. Inspect realized and open PnL together. A positive closed result can coexist with a losing position that remains open.
  5. Check free and open balance. Capital tied up in positions changes how much of the account was available during the run.
  6. Open the positions or execution ledger. Verify that the summary is consistent with the underlying trades.

A simple cost-sensitivity example

Consider two illustrative historical tests of locked strategy rules. These are invented numbers for explaining the arithmetic, not Gimmer results or performance evidence.

Measure Higher-turnover test Lower-turnover test
Gross modeled outcome 120 units 90 units
Trading fees 45 units 18 units
Spread and slippage allowance 35 units 12 units
Net modeled outcome 40 units 60 units
Executions 80 24

The higher-turnover test starts with the larger gross number and ends with the smaller modeled net number. That does not make low turnover universally better. It shows why gross outcome and win rate cannot replace cost accounting.

Now make the example harder. Increase the spread and slippage allowance, or use a less favorable maker or taker mix. If a small change reverses the conclusion, the useful finding is that the strategy is cost-sensitive. It is not evidence that the cleanest scenario will repeat.

Use one base case and one harsher cost case

A practical comparison keeps the strategy revision fixed and changes only the cost assumptions. That isolates the question you are testing.

  1. Write down the current official venue fee source and the date you checked it.
  2. Define the base fee, spread, slippage, and holding-cost assumptions that apply.
  3. Run the locked strategy over a meaningful period.
  4. Repeat with a modestly harsher cost case, without retuning the entry rules.
  5. Compare fees, trade count, realized PnL, open PnL, drawdown, and the execution ledger.
  6. Repeat on data that was not used to select the parameters.

If you are comparing many parameter candidates, use the Strategy Optimizer guide to keep the source revision, search space, and candidate evidence clear. A top-ranked historical candidate is still only a candidate, especially when its edge disappears under a slightly different cost model.

Costs are not a substitute for risk controls

A realistic fee model does not limit position size, close a losing trade, or define what happens when an order fails. Those are separate decisions. Use the Gimmer risk-controls guide to review invalidation, stop behavior, exposure, and recovery assumptions independently from costs.

Historical candles also cannot reproduce every order-book change, partial fill, outage, queue delay, liquidation path, or human intervention. After the backtest, a controlled simulation can expose operational behavior that the historical model cannot. The Simulation and Live guide explains that next stage without treating simulation as proof of future results.

Crypto trading bot fee FAQ

Do crypto bot backtests include trading fees?

Some do, some do not, and the calculation boundary differs. Confirm the current documentation and result fields. A visible fee value does not prove that spread, slippage, funding, borrowing, or network costs are also included.

What fee rate should I use?

Use the current official schedule for the venue, market, order behavior, and account tier you are modeling. Record the source and date. Do not reuse an old rate or another venue’s schedule.

Are spread and slippage trading fees?

They are execution costs, but they are not the same as a listed trading fee. Keep them separate so you can see which assumption changes the result.

Conclusion

Crypto trading bot fees belong inside the decision, not in a footnote after the backtest. Confirm what the report includes, read fees beside turnover and open exposure, and compare one base cost case with one harsher case. Then keep the strategy locked while you challenge it on unseen data and in controlled simulation.

Next step: open Gimmer’s Running Backtest guide, record one base cost model and one harsher model, and compare the same strategy revision under both before you decide what deserves further testing.

The Gimmer Team

1 comment

Leave a Reply

Your email address will not be published. Required fields are marked *

*