236 round trips on ETHUSDT, costed at $10,000 per trade against binance, over 29 Apr 2026 to 29 Aug 2026.
Not every disappointing strategy is a cost problem, and a tool that only knows how to find cost problems will invent them.
MACD 12/26/9 on ETHUSDT hourly loses money before any cost is applied. Fees, funding and drift are all real and all beside the point: moving venue, switching to limit orders or trading a different size changes nothing here, because the signal has no edge in this period to protect.
The report leads with that rather than burying it under a cost table, and the levers section says plainly that none of them reach breakeven. It also distinguishes a loss the sample settles from one it merely suggests — with enough trades the range never touches zero, and that is a different finding from an unlucky run.
Publishing this one matters as much as publishing the other two. A cost tool that never says 'the costs are fine, your idea is the problem' is selling something other than the truth.
Everything below was produced by the same engine that costs an upload, from the same market data, and is rendered by the same template. Upload your own trade list to get one for your strategy.
Costs didn't kill this: it loses 23.2 bps per trade before any cost is applied.
Total costs are 13.8 bps, so they are not the problem — your execution setup is fine. The signal has no edge in this period, so the thing to change is the signal, not the venue or the order type. With 236 trades the range on the net figure (-58 to -14) stays below zero throughout, so this is settled rather than unlucky.
Basis points per round trip, where a negative number is a credit rather than a cost. Every line names the basis it came from; a line with no basis shows no number.
| Component | bps | Band | Basis | Note |
|---|---|---|---|---|
| Fees | 10.0 | — | Published | binance regular taker, round trip — schedule not yet verified against source |
| Funding | 0.1 | — | Published | exact, 500 settlement records at 8h intervals |
| Signal-to-fill drift | 3.3 | -29.1 … +28.2 | Measured | a + b*body fit from 106 signals over 45d (sma_cross_1h); this list looks like macd_1h, so the fit is borrowed from a different signal family and the band matters more than the point. No comparison against live fills has been run yet. Adverse selection is a model. |
| Impact at your size | 0.3 | — | Measured | your $10,000 order priced at the $25k rung — the nearest depth we sample at or above it, so this is the conservative side. Both sides, median of 8 L2 samples on binance. |
| Total | 13.8 | — | All components have a basis. |
Funding is reported as a distribution because its mean is misleading. Positive means you paid.
| Venue | Taker rt | Net / trade | Net total | Survives | Maker net | Fee source |
|---|---|---|---|---|---|---|
| binance | 10.0 | -36.9 | −$8,714 | NO | -30.9 | Published · unverified |
| okx | 10.0 | -36.9 | −$8,714 | NO | -30.9 | Published · unverified |
| kraken | 10.0 | -36.9 | −$8,714 | NO | -30.9 | Published · verified |
| bybit | 11.0 | -37.9 | −$8,950 | NO | -30.9 | Published · unverified |
Gain is measured against the configuration you uploaded. "Clears" means this lever alone takes the strategy above zero.
| Lever | What it changes | Gain | Net after | Clears | Basis |
|---|---|---|---|---|---|
| Maker instead of taker | fees 10 -> 4 bps rt | +6.0 | -30.9 | no | fee catalogue |
| Exit before window 4 | caps funding on 27 trades held > 3 windows | +0.0 | -36.9 | no | 05 funding dist |
| Best venue at your size (binance) | impact 2.1 -> 0.3 bps rt vs worst venue | +0.0 | -36.9 | no | sampler |
| Skip signals on bars > 80 bps body | drops 59/236 trades; adverse slope 0.083/bp | -0.7 | -37.6 | no | 07 adverse fit |
| Maker + best venue (combined) | the two independent execution levers together | +6.0 | -30.9 | no | combined |
Skip signals on bars > 80 bps body selects trades using the same data it is scored on. The gain shown is what the filter would have earned in hindsight, which is not what it would earn next month. Treat it as a hypothesis to forward-test, never as a change to make today.
You traded 236 times in 122 days — about 13.5 round trips a week.
This signal loses before any cost, so no execution change rescues it — but a slower chart is a different signal, not a different fill. In our own case studies the same rules on 4-hour bars turned both losing strategies into winning ones.
Re-run the same strategy on a higher timeframe in your platform and upload that trade list too. We will cost it the same way, and you can compare the two directly.
This carries no number on purpose. We receive your trades, not your rules, so we cannot compute what those rules would have done on different bars. Rather than estimate it, we are telling you it is worth testing.
This strategy loses before any cost is applied, so no execution lever rescues it — the levers above are shown for completeness. The one exception is a timeframe change, which alters the signal itself rather than how it is filled.
| Assumed cost (bps rt) | Net per trade (bps) |
|---|---|
| 0 | -23.2 |
| 5 | -28.2 |
| 10 | -33.2 |
| 15 | -38.2 |
| 20 | -43.2 |
| 30 | -53.2 |
What produced this report. If any input is later corrected, this is how we find the reports it affected and tell you.
An unverified line means we hold the venue's published figure but have not yet confirmed it against the source this month. It is labelled everywhere it is used.
Cost your own trade list. Free, no account.