Fees and slippage: the costs that quietly decide a backtest
Maker or taker, slippage, funding: what a crypto trade really pays, why costs weigh most on frequent systems, and how a backtest should charge them.
- Written by
- The EdgeLuma team
- Published
- Reading time
- 7 min
On this page
A trade on a crypto exchange pays twice before it can make anything: once to get in and once to get out. On top of the fees, a fill that takes liquidity from the order book often lands a little worse than the price on the screen. Each cost is small. Together, and repeated over hundreds of trades, they decide whether an idea with a thin edge makes money or quietly gives it back.
This guide explains each cost in plain words, why it weighs more on some strategies than on others, and how a backtest should charge it.
What is the difference between maker and taker fees?
Exchanges charge two rates, depending on what your order did to the order book.1
- Maker: the order rested in the book and waited to be filled, adding liquidity. A limit buy below the current price, or a limit sell above it, is the usual maker.
- Taker: the order filled at once against orders already in the book, removing liquidity. A market order is always a taker; so is a stop when it triggers, and a limit placed beyond the current price.
On the standard schedules of both Binance and Bybit, the maker rate is lower than the taker rate. Each venue publishes its rates by tier and by product on its own pages.23
| What the order did | Fee | Typical orders |
|---|---|---|
| Waited in the book, then filled | Maker | A limit entry that waits; a take-profit limit |
| Filled at once against the book | Taker | A market order; a stop that triggers; a limit placed past the price |
A fee is charged on the value of the position, not on your risk: the position’s size times the fill price, times the rate.4 That detail matters more than it looks.
What is slippage?
Slippage is the difference between the price an order expected and the price it actually got. It has two sources.
- The spread. A buy fills at the best ask and a sell at the best bid, so every order that takes liquidity crosses half of the spread, measured from the middle price. On the most liquid pairs the spread is often a single price tick.
- The depth of the book. A large order eats through several price levels before it is filled. The bigger the order against what the market trades, the further it moves the price against itself. Research on market impact finds that this cost grows roughly with the square root of the order’s size relative to the volume traded.5
A resting order fills at its own price, so it does not cross the spread. Its cost is different: it may never fill, and the trades it misses are often the ones that ran away fastest.
Why do costs hurt some strategies more than others?
Costs are charged on the position’s value. Results are counted in risk. The link between the two is the stop.
Take one trade, with numbers chosen for the arithmetic only. An account risks the same amount on every trade: 1R. With a stop 2% away from the entry, the position is worth 50 times that risk. With a stop 0.5% away, it is worth 200 times. A fee of 0.05% of the position’s value then costs 0.025R in the first case and 0.1R in the second, on each side of the trade.
The same fee takes four times more of the trade when the stop is four times tighter. Add the exit fee and the slippage, and a system with tight stops and small targets can hand a large share of every winner back to the venue. This is why systems that trade often for small average wins are hurt the most by costs, and why the same idea can be profitable before costs and losing after them.
In EdgeLuma the risk unit already contains the round trip. 1R is the distance from the entry to the stop times the size, plus the fees of both legs and the slippage of a stop-out, so a trade stopped at its initial stop is exactly −1R, costs included, and every number in the report is net.
What is funding, and does a backtest include it?
A perpetual has no expiry, so the exchange keeps its price close to the spot price with funding: at set times, the holders of one side pay the holders of the other. When the funding rate is positive, longs pay shorts; when it is negative, shorts pay longs. Only positions open at the funding time pay or receive it.6
The interval between funding times is set market by market, and it is not always eight hours: check the market’s own page before you hold a position through it.
How should a backtest charge costs?
A backtest that leaves costs out tests a market nobody trades. Four rules keep the costs honest:
- Use the venue’s real schedule, at the tier you actually pay. A new account pays the entry tier. A discount you may earn later can only make the real result better than the test, never worse.
- Charge the right side of each fill. Maker for an order that waited in the book, taker for one that took liquidity. Entries and exits each have their own.
- Charge slippage on every taker fill, and more of it for large positions on thin markets.
- Compare with and without costs. The gap between the two expectancies is the cost of trading the system. If it eats most of the edge, the edge was never in the rules.
That is what EdgeLuma’s exchange presets do on Binance and Bybit: the maker and taker fees of the venue’s standard schedule at its entry tier, verified on the venue’s own pages and dated, with slippage of half the price tick on every taker fill plus a book impact that grows with the position’s size. A market the venue keeps on a special board, with fees of its own, is refused by the preset rather than charged the standard rate; custom fees and a run with no costs are always available.
Frequently asked questions
Are crypto trading fees charged on the position or on the margin?
On the position. The fee is the position’s value, its size times the fill price, times the rate, whatever leverage or margin stands behind it.4
Is a stop-loss a maker or a taker order?
When it triggers, a stop is filled at once against the book, as a taker: it pays the taker fee and the slippage of crossing the spread.
What is a good slippage assumption for a crypto backtest?
One measured from the market rather than a round number. On liquid pairs, crossing the spread costs about half a price tick; for larger orders, walking the book costs more as the order grows against the market’s volume. One fixed percentage for every market and every size is usually too high for the biggest pairs and too low for the thin ones.
Sources
- Understanding the Difference Between Taker Orders and Maker OrdersBybit Help Center
- Bybit Trading Fee StructureBybit Help Center
- Trading Fee RateBinance
- Binance Futures Fee Structure & Fee CalculationsBinance FAQ
- Anomalous Price Impact and the Critical Nature of Liquidity in Financial MarketsB. Tóth, Y. Lempérière, C. Deremble, J. de Lataillade, J. Kockelkoren and J.-P. Bouchaud, Physical Review X, 2011
- Introduction to Funding RateBybit Help Center

