ChartsPod Backtesting: Set Fees and Slippage Before Comparing Results
A backtest without fees and slippage tests a market that does not exist. Set costs before you compare strategies.
Short answer
Before comparing backtests in ChartsPod, set trading fees for your venue and order type (maker or taker), a slippage assumption suited to the market's liquidity, and funding costs for perpetual positions held across funding times. Apply the same costs to every strategy you compare. ChartsPod's docs frame its strategies and backtests guide around defending against look-ahead, overfitting and fragile equity curves; costs are part of that defence because high-frequency rules often look profitable only before costs.
The three costs
| Cost | What to set | Why it matters |
|---|---|---|
| Fees | Per side, maker vs taker | Frequent rules pay them every trade |
| Slippage | Ticks or % per fill | Market orders rarely fill at the signal price |
| Funding | Rate × position × periods held | Perp positions held across funding |
Comparing fairly
Control names in the terminal can change between releases. If a label differs from this guide, look for the setting that does the job described.
Signal and fill timing
A rule that signals on a bar's close cannot be filled at that close in real life; the earliest realistic fill is the next bar's open or later. Backtests that fill on the signal bar's close overstate results, especially on short timeframes.
Define timing explicitly: signal at close of bar N, market order at open of bar N+1, slippage added. Apply the same timing to every strategy compared.
TradingView's strategy documentation describes how simulated fills depend on these assumptions; the same principle applies to any backtester.
Stress the assumptions
Rerun with double slippage. A strategy whose edge disappears is fragile. Report the trade list, not only the equity curve. TradingView's strategy documentation makes the same point about simulated fills; see ChartsPod Formula Lab: Validate a Custom Series With Hand Calculations for validating custom series.
Set costs, then run the backtest on a perpetual.
Open the ChartsPod terminalSet fees, slippage and funding before comparing strategies, and stress-test slippage.
Test Backtesting on a perpetual chart; no account is needed to chart.
Launch ChartsPodQuestions readers ask
Why do my backtest results drop after adding fees?
Each trade pays fees; frequent rules are hit hardest.
What slippage should I use?
Base it on the market's typical spread and depth for your size; then double it as a stress test.
Should funding be included?
Yes for perpetual positions held across funding times.
Sources and methodology
ChartsPod capabilities were checked against its public overview, documentation index, markets and indicator pages on 17 October 2026. Exact control names inside the terminal can change between releases, so this guide describes what to set and check rather than quoting menu labels. Venue availability is shown per tool in the terminal. Worked examples use illustrative numbers.
- ChartsPod documentation — guides for order flow, derivatives, alerts, backtests, journal and workspaces.
- TradingView Pine Script: Strategies — simulated fills and assumptions.
- Binance: USD-M Futures market data API — trades, depth, funding and open interest.
This article explains research tools and workflows. It is not financial advice, does not recommend buying or selling any asset and does not predict prices. Crypto derivatives carry a risk of rapid and total loss of margin.
CHARTSPOD EDITORIAL EDITION · RESEARCH AND EDUCATION ONLY · NOT FINANCIAL ADVICE.