TL;DR: Fees are charged on every fill, so they grow with how often you trade and how large your notional is. A strategy only works if its average edge per trade clears the round-trip cost; at perp fee levels that bar is small per trade but large per year for anything that trades daily. Trigr applies trading fees and the builder fee in every backtest, so the question is never hidden behind a setting.
Why do fees matter more than most traders expect?
A single fee looks trivial. A taker fee of a few hundredths of a percent is smaller than the noise on almost any chart. The problem is not the size of one fee but the number of times you pay it.
Every trade has two fills, entry and exit, and you pay on both. A strategy that trades once a day pays that round-trip cost 365 times a year. One that trades every hour pays it thousands of times. Meanwhile, the average edge per trade of most systematic strategies is also measured in tenths or hundredths of a percent.
That makes fees the most reliable filter in strategy research, and one of the conventions an honest, point-in-time backtest should never leave out. Many signals that look profitable before costs are really measuring small, real patterns that are too thin to trade. Backtests are not guarantees; perps are leveraged and can lose more than expected.
What does a perp trade actually cost?
On a perpetual futures venue, the explicit costs per fill are the exchange fee and, when you trade through an interface that charges one, a builder or platform fee. Hyperliquid publishes a tiered fee schedule: at the base retail tier, Trigr's fees documentation lists 0.045% for takers and 0.015% for makers, with discounts at higher volume. Trigr's builder fee is up to 0.05% per trade, collected by Hyperliquid on Trigr's behalf.
Add those up for a taker entry and a taker exit at the base tier:
| Cost component | Per fill | Round trip |
|---|---|---|
| Hyperliquid taker fee (base tier) | 0.045% | 0.09% |
| Builder fee (maximum) | 0.05% | 0.10% |
| Explicit fees, total | up to 0.095% | up to 0.19% |
Those are explicit fees only. Slippage, the difference between the price you expected and the price you got, comes on top, as does funding for any position held across a settlement. We cover both in slippage and funding in perp backtests.
How does trade frequency turn fees into fee drag?
Fee drag is the total fee cost over a period, expressed against your capital. Ignoring compounding and assuming each trade uses your full capital at 1x leverage, annual drag is simply trades per year times round-trip cost.
Using the illustrative 0.19% round trip from the table above:
| Trading style | Round trips per year | Annual fee drag (1x) | Annual fee drag (5x) |
|---|---|---|---|
| Weekly swing | 50 | 9.5% | 47.5% |
| Daily | 365 | 69.4% | 346.8% |
| Several per day | 1,000 | 190% | 950% |
These are hypothetical figures, not a quote, and real sizing rarely puts all capital in every trade. The shape is what matters. At one trade a week, fees are a cost to monitor. At several trades a day, they are the main thing your signal has to beat, and leverage multiplies the problem because fees are charged on notional, not on margin.
What is the break-even edge per trade?
The cleanest way to think about fees is as a hurdle. A strategy's average gross return per trade, before costs, must exceed its average round-trip cost. Everything below that line loses money on average, regardless of win rate.
A worked example with hypothetical numbers:
- Average gross return per trade: +0.25% of notional
- Round-trip explicit fees: 0.19%
- Flat slippage of 3 bps per side: 0.06%
- Net edge per trade: 0.00%
A strategy that looks like it makes a quarter of a percent per trade, and that might show an attractive equity curve before costs, is exactly break-even here. Double its trade frequency by loosening a filter and you double both the gross profit and the costs, but in practice the added trades are usually weaker, so the net result gets worse.
This is why "more trades" is not automatically "more profit". A filter that removes half the trades while removing only a quarter of the gross profit often improves the net result.
How can you reduce fee drag without changing the idea?
Once you see fees as a hurdle, there are several structural levers:
- Trade less often. Move to a longer timeframe, or add a filter that removes low-conviction entries. Compare net results, not gross.
- Hold longer. Longer holding periods spread the same round-trip cost over a larger expected move. Check funding when you do, because perps charge or pay it while you hold; Hyperliquid explains its hourly funding mechanism in its docs.
- Avoid churn. If the strategy reverses frequently, consider whether opposite signals should reverse the position, be ignored, or only reduce it. Trigr's RISK node lets you choose reverse, ignore or reduce-only handling for opposite signals.
- Reduce leverage. Lower leverage means lower notional per unit of capital, and therefore lower fee drag on your account.
- Check the break-even first. Before optimizing a signal, compute its average gross return per trade and compare it to the round-trip cost. If the margin is thin, no amount of tuning will make it robust.
For the sizing side of these decisions, see risk settings that matter: sizing, leverage, ATR trails and time stops.
How does Trigr handle fees in backtests and agents?
Trigr treats trading fees as non-negotiable: they are applied in every backtest, along with the builder fee. There is no switch to turn them off, so a result is never "gross of fees" by accident. Slippage and funding are the two costs that are opt-in and off by default, which is why a first result is labeled gross, meaning gross of slippage and funding, not of fees.
The same principle continues after research:
- Paper agents fill at the current Hyperliquid price and deduct a 4.5 bps taker fee plus the builder fee. They model no slippage and no funding.
- Live agents on Hyperliquid pay the venue's actual fees, and the docs explain that realized P&L in trade history is reported net of Hyperliquid fees, with builder fees tracked separately.
What this means for you
Because fees are always in the numbers, you can sort ideas by their net viability from the first run instead of discovering the problem after deploying. A high-frequency idea that looks good in a Trigr backtest has already paid its trading fees. The next question is whether it survives your slippage assumption, which you can add as a flat number of basis points per fill, and funding, using either historical rates or a flat per-8h rate.
When an AI assistant runs backtests for you over MCP, it can pass the same optional slippage and funding settings, so a model exploring many ideas is held to the same cost accounting as you are. The backtesting docs list exactly which costs are modeled and which are not.
A fee checklist before you trust a result
| Question | What to look for |
|---|---|
| Are fees included? | Yes, on both fills of every trade |
| What is the round-trip cost? | Written down, including any platform fee |
| What is the average gross edge per trade? | Comfortably above the round-trip cost |
| How many trades per year? | Multiplied by round-trip cost, as a share of capital |
| What happens at your real leverage? | Fee drag scaled by notional, not margin |
| Are slippage and funding on? | Stated explicitly as on or off |
If a strategy passes only when costs are left out, it is measuring a real pattern that you cannot profitably trade. That is still useful information: it tells you where not to spend your research time. Excess trading is also one of the warning signs of an overfit backtest, because optimizers love to harvest many tiny patterns in noise.
Next steps
Take one strategy, note its trades per year and average return per trade, and compare that with the round-trip cost in the table above before tuning anything else. The pricing page shows how many backtest credits each plan includes for running those comparisons.