EA-49713 · Breakout

Breakout Strategy with Prop Firm Challenge Helper

A channel breakout EA that enters BuyStop/SellStop orders when price breaks above the highest high or below the lowest low of a configurable lookback period, with a trailing stop based on the opposite channel boundary. It includes a prop firm challenge helper that monitors daily loss limits and profit targets, automatically closing all positions and orders when either threshold is breached.

Open the interactive view (equity curve, symbol switch)

Key facts

CategoryBreakout
RiskMedium
Blow-up riskLow
Rating★★★☆☆
TypeTrading EA
TimeframesM15, H1, H4, D1
IndicatorsDonchian Channel (Highest High/Lowest Low), ATR
AuthorQuanAlpha

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Not convertible yet
GBPUSD0.00%0.00%0.00%0—————Not convertible yet
USDJPY0.00%0.00%0.00%0—————Not convertible yet
XAUUSD0.00%0.00%0.00%0—————Not convertible yet

Why this EA never traded: no entry rule survived the conversion.

Converted from MQL5 to Python and run with the same rules for every EA. Positions use MT5 lot sizes (100,000 units per FX lot, 100 oz per gold lot) with 1:100 leverage, one order at a time, and a stop-out below 10% of the starting balance. Sharpe is computed from the equity curve. Results marked as unreliable are shown for completeness only.

Blow-up risk: No blow-up pattern found

None of the usual blow-up patterns were found in the code, and the account was not stopped out in our backtests. That is not a guarantee: any EA can lose money.

High: stopped out in our backtest, or martingale/grid sizing without a stop loss. Elevated: martingale or grid sizing with a stop loss, or several positions at once without a stop loss. What the label means and what we found →

Strategy analysis

The strategy core is a Donchian-style channel breakout: it uses the highest high and lowest low over the past N bars to form a trading channel, going long when price breaks above the upper channel and short when it breaks below the lower channel. Entry conditions require no existing position in the same direction and that the pending order price is at least the broker's minimum stop level away from the current price, placing BuyStop or SellStop orders at the channel boundary plus/minus one tick. Exit conditions use a dual mechanism: a trailing stop that dynamically adjusts to the lowest low (for longs) or highest high (for shorts) over the exit period, and an immediate market close when price crosses against the trailing level. Position sizing is based on a risk-percentage model: it calculates lot size from RISK_PER_TRADE percent of equity divided by the per-lot stop-loss value estimated via OrderCalcProfit, then floors to the volume step and clamps to broker min/max limits while checking available margin. Money management includes a prop firm challenge helper that monitors equity against a profit target (isPassed) and daily accumulated losses against a loss limit (isDailyLimit), both triggering ClearAll to close all positions and cancel all pending orders when breached.

Strengths

  • Risk-percentage position sizing model is sound and keeps per-trade risk controlled
  • Built-in prop firm challenge helper automatically monitors profit targets and daily loss limits
  • Flexible trailing stop mechanism using the opposite channel boundary as a dynamic stop level
  • Accounts for broker trading constraints including stop levels, volume limits, and margin checks
  • New bar detection prevents redundant trading within the same bar

Weaknesses

  • ATR indicator handle is created fresh on every PositionManaging call instead of being cached in OnInit, risking resource leaks
  • OrderManaging function always returns 0 due to the orders variable never being incremented, a logical flaw
  • Daily loss calculation assumes history deals are reverse-chronological and uses break to exit, potentially missing earlier same-day trades
  • ClearAll does not filter by magic number or symbol, potentially closing positions and orders from other EAs
  • No spread filter, so breakout signals may be falsely triggered in high-spread environments
  • Trailing stop adjustment threshold of 0.1*ATR is hardcoded and not configurable via input parameters

Possible improvements

  • Create and cache the ATR indicator handle in OnInit and release it in OnDeinit to avoid resource leaks from repeated creation on every call
  • Add magic number and symbol filtering to ClearAll to prevent accidentally closing other EAs' orders and positions
  • Daily loss calculation should iterate through all history deals instead of relying on reverse-chronological break logic to ensure accurate same-day P&L accounting

Risk assessment

Overall risk: Medium

  • ClearAll lacks magic number filtering, potentially closing all EAs' positions when prop firm challenge triggers, causing unintended losses
  • ATR handle resource leak from repeated creation may exhaust memory during long-running sessions
  • Daily loss limit calculation may be inaccurate, causing prop firm challenge protection to fail silently
  • No spread filter or slippage protection, making the breakout strategy vulnerable to false signals in high-spread or low-liquidity conditions

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management3.0
Robustness2.0
Innovation2.0
Documentation1.0
Overall2.3

Parameters

ParameterDefaultDescription
BOT_NAMEBreakout Strategy with Prop Firm Challenge HelperEA name identifier
EXPERT_MAGIC1EA magic number identifying its orders and positions
ENTRY_PERIOD20Entry channel lookback period in bars for high/low
ENTRY_SHIFT1Entry channel start shift; 1 = previous bar
EXIT_PERIOD20Exit channel lookback period for trailing stop calculation
EXIT_SHIFT1Exit channel start offset
isChallengefalseWhether to enable prop firm challenge mode
PASS_CRITERIA110100.0Target equity for passing the challenge
DAILY_LOSS_LIMIT4500.0Maximum daily loss limit
RISK_PER_TRADE1.0Risk per trade as percentage of equity
TRADING_TIMEFRAMEPERIOD_H1Trading timeframe

Similar Breakout EAs

Backtests are historical simulations and do not guarantee future results. Not financial advice.

Get the weekly Arena report

One email a week: ranking changes, new signals and new research. No spam; unsubscribe any time.