The Spread Is Not Your Biggest Cost
You check your broker's spread. Two pips on EUR/USD. You think you're good.
You're not. The spread is 5-10% of what's actually destroying your bot's returns. The real killers are invisible until your bot runs live.
Financing charges. Rollover fees. Swap costs. Overnight premiums. These line items turn profitable backtests into losing live accounts.
Financing Charges: The Compounding Killer
Here's the thing: if you're trading on leverage, you're paying interest every single day your position is open.
Most brokers charge 8-12% annually on borrowed funds. On a $10,000 account trading 10:1 leverage, that's $100/month just to hold positions. On a $50,000 account, it's $500/month. These charges compound during drawdowns—exactly when you need to hold.
Your bot doesn't see financing costs in backtest. So it holds positions 20% longer than it should, assuming zero cost. Live performance: 30-50% worse than backtest. This isn't strategy failure. This is fee failure.
The math:
- Financing charge: 10% annually = 0.833% monthly
- Position held 30 days with 5:1 leverage = 0.0417% daily cost
- 100 trades per month = 4.17% total drag from financing alone
- If your bot makes 8% per month gross, financing eats 52% of profits
This is why understanding overnight financing rates matters more than spread differences.
Rollover Fees: The Weekend Ambush
Friday night arrives. Your bot holds EUR/USD into the weekend. Monday morning, there's a charge on your statement: $47. You don't know why.
Rollover fee. Your broker charged you for rolling the position to Monday (the cost to finance it over the weekend when markets are closed).
Rollover fees are typically 0.01-0.05% per rollover. For a $100K position, that's $10-50 per weekend per open trade. If your bot trades 10 instruments with 3 open positions each, that's $900-$4,500 per weekend.
Annualized, weekend rollovers alone can cost 15-30% of trading capital in a high-leverage strategy. Most traders never account for this in backtests.
Swap Rates and Overnight Exposure
Overnight financing isn't uniform across all brokers. Some charge 2%. Some charge 15%. The difference between a profitable EA and a money-losing one is sometimes just the broker you chose.
Here's what kills most bots: they hold positions overnight without knowing the true cost. A strategy that's profitable holding 4 hours becomes unprofitable when held 16 hours—purely because of swap rates.
The smart move: know your broker's financing schedule before deployment. Different brokers charge different rates on different pairs. Some offer lower rates on certain instruments. Brokers know this, and they price the "free" accounts with hidden fees to make up for it.
How to Calculate Your True Cost Per Trade
Stop guessing. Here's the calculation:
- Get your broker's financing rate (usually listed as % APR)
- Calculate daily cost: (APR ÷ 365) × position size × leverage
- Add rollover costs: (rollover fee % × position size) × number of weekend days held
- Add swap costs if holding overnight
- Add these to your backtest as a commission line item
Run your backtest again with real fees. Your results will drop 20-50%.
This is why custom Expert Advisors built to your specific broker matter. Generic strategies don't account for broker-specific fee structures. Custom-built EAs optimize for YOUR cost structure, not some average.
Why Backtests Lie About Profitability
You backtested your strategy on TradingView. It made 47% annually. You deploy live and lose money in month two.
The backtest assumed zero financing charges, no rollover fees, instant execution at backtest prices, and no weekend gap risk. Add realistic fees to your backtest and you'll see the truth: most retail traders lose money partly because they ignore transaction costs until after deployment.
Most EAs with positive backtest results are break-even or slightly negative live because of hidden costs.
What Winning Bots Do Differently
Profitable trading bots don't fight the fee structure. They work within it.
The best custom EAs:
- Hold positions for minimum time (reduce financing exposure)
- Trade during high-liquidity hours (tighter spreads, lower slippage)
- Avoid Friday holdings when possible (weekend financing premiums)
- Use broker-specific rate optimization (choose brokers with better financing terms)
- Account for swap rates in position sizing (smaller positions on high-fee pairs)
- Include fee calculations in backtest (no surprises live)
These aren't trade secrets. They're basic cost accounting that most traders skip.
The Real Cost of "Free" Trading
Brokers advertise zero commission. Zero deposit requirements. Free tools.
There is no free. You pay through financing charges, rollover fees, and wide spreads on their "free" platforms. The math always balances—either you pay with commissions or you pay with hidden fees.
The ones advertising "free" simply buried the costs so you don't see them until your account is smaller.
What to Do Right Now
If you're running a bot live, pull your broker's fee schedule. Calculate your real monthly financing cost. Multiply by 12. That's your actual trading expense.
If that number surprises you or exceeds your bot's monthly returns, you have three options:
- Switch brokers (find one with lower financing on your pairs)
- Redesign the strategy (shorter holds, less leverage, fewer overnight positions)
- Use a custom EA optimized for your broker's cost structure (designed to minimize financing drag from day one)
The traders who survive aren't the ones with smartest strategies. They're the ones who account for costs before deploying live. A $300-500 custom EA built for your broker and strategy pays for itself within 2-4 months just in reduced financing costs.