Understanding Prop Firm Requirements for EAs
Trading with Prop Firms
Proprietary trading firms offer traders the opportunity to trade with significant capital—often $50,000 to $500,000 or more. However, they come with specific rules that your EA must respect. Understanding and implementing these requirements is essential for passing challenges and maintaining funded accounts.
What Are Prop Firms?
Proprietary trading firms (prop firms) provide capital to traders who pass their evaluation challenges. In return, they take a percentage of profits (typically 10-20%). Popular firms include:
- FTMO
- MyForexFunds
- The Funded Trader
- True Forex Funds
- E8 Funding
Common Prop Firm Rules
Understanding these rules is critical for EA development:
Drawdown Limits
Daily Drawdown:
- Usually 4-5% of initial/starting balance
- Calculated from day's starting equity or balance
- Breaching this = instant failure
Overall Drawdown:
- Typically 8-12% total from initial balance
- Some firms use trailing drawdown (moves with profits)
- This is your hard limit—never exceed it
Example:
Account Size: $100,000
Daily Drawdown Limit: 5% = $5,000
Overall Drawdown Limit: 10% = $10,000
If you start the day at $102,000:
Daily limit = $102,000 - $5,000 = $97,000 (some firms)
Daily limit = $100,000 - $5,000 = $95,000 (other firms)
Trading Restrictions
Most prop firms have specific rules about how you trade:
- No trading during major news events (typically 2-15 minutes before/after)
- Minimum holding times (often 2+ minutes per trade)
- No overnight positions (some firms)
- No weekend holding (most firms)
- No hedging (some firms)
- Maximum lot size restrictions
Profit Targets
Challenge phases typically require:
- Phase 1: 8-10% profit target
- Phase 2: 5% profit target
- Time Limit: 30-unlimited days per phase
Making Your EA Prop-Friendly
Your EA must include these protective features:
1. News Filter
Pause trading around high-impact events:
// News filter implementation
input int NewsFilterMinutes = 30; // Minutes before/after news
bool IsNewsTime() {
// Check economic calendar for high-impact events
// Return true if within NewsFilterMinutes of event
return CheckEconomicCalendar(NewsFilterMinutes);
}
void OnTick() {
if(IsNewsTime()) {
Print("News filter active - no new trades");
return;
}
// Continue with normal trading logic
}
2. Drawdown Protection
Stop trading when limits approach:
// Drawdown protection
input double MaxDailyDrawdown = 4.0; // Stop at 4% (buffer before 5%)
input double MaxTotalDrawdown = 8.0; // Stop at 8% (buffer before 10%)
double dailyStartingEquity;
double initialBalance;
bool IsDrawdownBreached() {
double currentDD = (dailyStartingEquity - AccountEquity()) / dailyStartingEquity * 100;
double totalDD = (initialBalance - AccountEquity()) / initialBalance * 100;
if(currentDD >= MaxDailyDrawdown) {
Alert("Daily drawdown limit reached!");
return true;
}
if(totalDD >= MaxTotalDrawdown) {
Alert("Total drawdown limit reached!");
return true;
}
return false;
}
3. Time Filters
Respect trading hour restrictions:
// Time-based filters
input bool NoWeekendHolding = true;
input bool NoOvernightPositions = false;
input int FridayCloseHour = 20; // Close all by 8 PM Friday
void CheckTimeRestrictions() {
if(NoWeekendHolding && DayOfWeek() == 5 && Hour() >= FridayCloseHour) {
CloseAllPositions();
Print("Weekend approaching - all positions closed");
}
}
4. Minimum Trade Duration
Hold positions long enough:
// Minimum trade duration
input int MinTradeDuration = 120; // Minimum 2 minutes
datetime tradeOpenTime[];
bool CanCloseTrade(int ticket) {
datetime openTime = OrderOpenTime();
if(TimeCurrent() - openTime < MinTradeDuration) {
return false; // Too soon to close
}
return true;
}
Complete Prop-Friendly Configuration
Here's a comprehensive settings template:
// Prop Firm Compatible Settings
input double MaxDailyDrawdown = 4.0; // Daily DD limit (%)
input double MaxTotalDrawdown = 8.0; // Total DD limit (%)
input int NewsFilterMinutes = 30; // News filter window
input int MinTradeDuration = 120; // Min hold time (seconds)
input bool NoWeekendHolding = true; // Close before weekend
input bool NoOvernightPositions = false; // Close end of day
input double MaxLotSize = 5.0; // Maximum lot per trade
input int MaxOpenTrades = 3; // Maximum concurrent trades
input bool UseDrawdownTrailing = true; // Trail with profits
Passing the Challenge
Tips for prop firm evaluations:
Strategy Selection
Choose strategies that:
- Have consistent, moderate returns
- Low drawdown profiles
- Work across various market conditions
- Don't rely on high-risk approaches
Trading Approach
- Trade conservatively during evaluation: Focus on passing, not maximizing profit
- Focus on consistency over big wins: Steady 0.5% daily > risky 5% attempts
- Keep detailed logs for disputes: Document everything
- Understand the rules completely: Read the fine print
Risk Management
- Never use more than 1-2% risk per trade
- Keep total exposure under control
- Have clear daily loss limits well below firm limits
Common Mistakes to Avoid
- Trading too aggressively: Trying to hit targets quickly
- Ignoring news events: Getting stopped out during volatility
- Exceeding drawdown buffers: No margin for error
- Holding over weekends: Gap risk
- Not reading the rules: Each firm is different
Conclusion
With the right approach, prop firms can accelerate your trading career significantly. The key is building an EA that respects all rules automatically, allowing you to focus on making good trading decisions rather than monitoring compliance manually.