Spezifikation
My recommended requirements
1. Platform
- MetaTrader 5 only
- MQL5 source code (.mq5) + compiled EA (.ex5)
- Compatible with both demo and live accounts
- No dependency on MT4
- Clear installation instructions
2. Trading strategy
Tell the developer exactly:
- Instruments: e.g. EURUSD, GBPUSD, XAUUSD
- Timeframes: e.g. M15/H1
- Entry conditions
- Exit conditions
- Stop-loss rules
- Take-profit rules
- Trailing stop
- Break-even
- Maximum number of simultaneous trades
- Trading sessions/hours
- Whether it can hold trades overnight/weekends
3. Risk management — VERY important
Require:
- Risk-per-trade setting, preferably percentage-based
- Fixed-lot option
- Maximum daily loss
- Maximum account drawdown
- Maximum consecutive losses
- Maximum open positions
- Maximum spread filter
- Slippage protection
- Automatic trading shutdown after reaching a specified loss limit
- No unlimited lot/martingale behavior
I’d specifically ask for 0.5–1% default risk per trade rather than aggressive settings. Don’t accept claims that a particular risk percentage guarantees profitability.
4. Protection against bad market conditions
Include:
- Spread filter
- Slippage filter
- Trading-hours filter
- News filter if appropriate
- Friday/weekend protection
- Maximum volatility filter
- Broker execution-error handling
- Automatic retry handling where appropriate
5. Backtesting requirements
This is one of the most important parts. Ask the developer to provide:
- At least 5–10 years of historical testing where adequate data exists
- Tick-based testing rather than relying only on candle/open-price tests
- Different market conditions
- Realistic spread
- Commission
- Slippage assumptions
- Out-of-sample testing
- Forward testing on demo
MT5’s Strategy Tester specifically supports historical testing and optimization, including multi-symbol EAs.
6. Results you should demand
Don’t just ask for “profit.” Require a report showing:
- Net profit
- Profit factor
- Maximum drawdown
- Recovery factor
- Win rate
- Number of trades
- Average win/loss
- Largest losing streak
- Expected payoff
- Monthly/yearly performance
- Equity curve
A bot showing huge returns with 40–60% drawdown isn’t necessarily a good bot.
7. Anti-overfitting requirements
Tell the developer:
“Do not optimize the EA solely to produce the best historical backtest. I want out-of-sample and forward testing to demonstrate that the strategy isn’t simply curve-fitted.”
This is crucial because a beautiful historical equity curve can fail badly in live markets. Research on automated trading also highlights the problem of strategies performing well on historical data but poorly in real markets.
8. User-adjustable settings
The EA should allow you to change:
- Risk %
- Lot size
- SL
- TP
- Trading hours
- Maximum trades
- Maximum spread
- Magic number
- News filter
- Trailing stop
- Break-even
- Daily loss limit
MT5 EAs can expose input parameters specifically for this kind of configuration.
9. VPS compatibility
Require the EA to work reliably on a Windows VPS and run continuously without needing the developer’s computer. A VPS is particularly useful for strategies that need continuous operation.
10. Ownership/security
I’d strongly recommend requiring:
- Full .mq5 source code
- .ex5 compiled file
- No hidden DLLs unless explicitly disclosed
- No remote control of your account
- No withdrawal/payment functionality
- No requirement to give the developer your broker password
- Documentation of any external APIs/DLLs
- Your source code remains your property after payment
Copy/paste specification for the developer