Prop-firm EA development: Expert Advisors that respect the rules
Many funded accounts are not lost to a bad strategy. They are lost to one bad day: a daily loss limit crossed by a few dollars, a trade held through restricted news, a lot size over the cap. I build EAs that enforce your firm’s rules in code, on every tick, so the account survives your strategy’s worst day.
Mutual NDA before you share your strategy · reply within one working day
1// RiskGuard.mqh (excerpt): checked before every new entry2input double InpMaxDailyLossPct = 4.0; // firm limit 5.0, kept 1% inside3input double InpMaxTotalDDPct = 8.0; // firm limit 10.04input bool InpFlattenOnBreach = true; // close everything on a breach5 6bool TradingAllowed()7{8 double equity = AccountInfoDouble(ACCOUNT_EQUITY);9 double dayLoss = (DayStartEquity() - equity) / DayStartEquity() * 100.0;10 double totalDD = (StartBalance() - equity) / StartBalance() * 100.0;11 12 if(dayLoss >= InpMaxDailyLossPct || totalDD >= InpMaxTotalDDPct)13 {14 if(InpFlattenOnBreach) CloseAllPositions();15 Halt("risk limit reached: " + DoubleToString(dayLoss, 2) + "% today");16 return false;17 }18 return true;19}Excerpt. Every limit is an input, so the same guard fits any firm’s rulebook.
- Starting price
- $350
- Typical delivery
- 1–2 weeks
- Revisions
- 2 revision rounds
- Handover
- Full source code + report
The rules your EA has to respect.
Wording differs between firms and programmes, and rules change. We check your firm’s current rulebook together during the brief.
| Rule | What firms usually mean | How the EA enforces it |
|---|---|---|
| Daily loss limit | A maximum loss in one trading day, measured from the balance or equity at the firm’s daily reset time | Equity is checked on every tick against a buffer you choose. New trades stop and open positions are closed before the limit |
| Maximum drawdown | A maximum loss from the starting balance (static) or from the highest point reached (trailing) | Both modes supported. The trailing high-water mark is saved to disk, so a restart cannot reset it |
| News restrictions | No opening or closing trades in a window around high-impact news, on some account types | A configurable blackout window around listed events, with the option to close positions beforehand |
| Weekend holding | Some programmes require you to be flat over the weekend | A Friday close time, in your firm’s timezone |
| Lot and exposure caps | Maximum lots per trade, per symbol or in total | Position sizing is capped, and over-size orders are blocked inside the EA |
| Consistency rules | A cap on how much of the total profit can come from a single day | An optional daily profit lock that stops trading once the day’s share is reached |
| Restricted strategies | Often: martingale, some grids, high-frequency or latency trading, and widely shared third-party EAs | I tell you before we start if your logic is likely to be flagged |
If the firm says 5%, your EA should stop at 4%.
Firms measure loss on equity, including floating losses, often in real time. By the time an EA notices a limit has been reached, spread widening and slippage on the closing orders can push the account past it.
So the guard stops new entries and flattens positions at a buffer inside the firm’s limit. You choose the buffer. Most traders I work with use about one percentage point for the daily limit and two for the overall drawdown, then size each trade so that a normal losing streak never comes close.
| Firm daily limit | 5% · $5,000 |
| EA daily stop | 4% · $4,000 |
| Firm max drawdown | 10% · $10,000 |
| EA overall stop | 8% · $8,000 |
| Risk per trade | 0.5% · $500 (8 straight losses before the daily stop) |
Illustrative numbers. Use your own firm’s rules and your strategy’s tested losing streaks.
Whichever firm you trade with.
I build to the published rules of the firm you use, such as FTMO, FundedNext, The5ers or E8, on MT4 or MT5. Rules and allowed platforms change, so we confirm the current version during the brief.
Some firms now run cTrader, DXtrade, Match-Trader or TradeLocker instead of MetaTrader. Automation options differ a lot between them. Tell me your platform before you buy a challenge and I will tell you what is possible.
Tools designed to get around a firm’s rules: hidden copy trading between different people’s accounts, latency or tick arbitrage, or anything that disguises who is trading. They get accounts closed and payouts refused, and they put your money at risk.
From a funded trader.
“He understood our prop firm’s drawdown rules immediately and built them into the EA by default. The walk-forward results gave us confidence before going live.”
Work out your remaining daily and overall room, and the lot size that keeps a losing streak inside it.
Testimonials reflect individual experiences and are not representative of all clients.
Common questions
Are EAs allowed on prop firm accounts?
Most firms allow Expert Advisors, but their rules differ. Some restrict third-party EAs that many traders use, high-frequency trading, or certain strategy types. Because your EA is built from your own rules, the shared-EA problem does not apply, but we still check your firm’s current terms during the brief.
Will the EA pass the challenge for me?
No EA can promise that. What it does is enforce the rules perfectly, so that if your strategy has an edge, a single bad day or a sizing mistake does not end the account.
How is the daily loss calculated?
It depends on the firm. Some measure from the balance at the daily reset, others from the higher of balance and equity, and reset times differ. The reset time, timezone and basis are inputs, set to match your firm.
Can I run the same EA on several funded accounts?
On your own accounts, usually yes, within the firm’s allocation limits. Running identical strategies across different people’s accounts is often prohibited. Check your firm’s rules, and ask me if you are unsure how they apply.
What if my firm changes its rules?
Limits are inputs, so most changes are a settings update. If a new rule needs new logic, it is a small fixed-price change.
Is a prop-firm EA more expensive than a normal EA?
A little. It starts $350 because the guard, the restart-safe tracking and the testing against your firm’s limits are extra work. If you already have an EA, adding a guard is a smaller job: see upgrades to an existing EA.
Tell me the strategy. I’ll tell you what it takes.
Fifteen minutes, no pitch. Mutual NDA before you describe anything you care about. You get an honest view of feasibility, timeline and price, even if the answer is “don’t build this”.