ChannelEA1
ChannelEA1 is a channel-based breakout EA that trades when price breaks out of a dynamically calculated channel. It enters positions in the direction of the breakout and manages exits through a combination of take-profit and stop-loss levels derived from channel width.
Open the interactive view (equity curve, symbol switch)Key facts
Backtest results (H1, about 1 year)
| Symbol | P&L | Annual | Max DD | Trades | Win rate | Sharpe | Recovery | Losing streak | Per trade | Status |
|---|---|---|---|---|---|---|---|---|---|---|
| EURUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Not convertible yet |
| GBPUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Not convertible yet |
| USDJPY | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | Not convertible yet |
| XAUUSD | 0.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 core strategy of this EA is channel breakout trading based on a dynamically calculated price channel. The channel is constructed using a rolling window of high and low prices to form upper and lower boundary bands. It enters long when price breaks above the upper band and short when price breaks below the lower band, following a classic channel breakout paradigm. Entry conditions rely on close price confirmation beyond channel boundaries to filter false breakouts. Exit conditions include fixed take-profit and stop-loss levels as well as a channel reverse breakout exit mechanism. Position sizing supports both fixed lots and dynamic lot calculation based on account equity percentage. Money management provides a risk percentage parameter but lacks maximum drawdown control and position limit protection mechanisms.
Strengths
- Channel breakout strategy logic is clear and easy to understand and verify
- Provides both fixed lot and dynamic lot sizing modes for good flexibility
- Uses close price confirmation for breakouts to reduce losses from false breakouts
- Channel width adapts to market volatility, providing some adaptability across different market conditions
Weaknesses
- Lacks maximum drawdown control and position limit protection, creating significant risk in extreme markets
- Channel breakouts frequently hit stop-loss in ranging markets without a trend filter mechanism
- No slippage or spread filter, potentially resulting in poor fill prices in low-liquidity markets
- No multi-timeframe confirmation, limiting the reliability of single-timeframe breakout signals
Possible improvements
- Add a trend filter (e.g., higher timeframe moving average direction) to suppress signals in ranging markets
- Implement multi-timeframe confirmation to improve breakout signal reliability and reduce false breakout losses
- Add maximum drawdown protection and daily loss limits to enhance capital safety
Risk assessment
Overall risk: Medium
- Channel breakouts may trigger consecutive stop-losses in ranging markets causing cumulative losses
- Lacks maximum drawdown and daily loss limit protection mechanisms
- No slippage or spread filter may cause additional losses during low-liquidity sessions
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
ChannelPeriod | 20 | Channel calculation period for rolling high-low window length |
LotSize | 0.1 | Fixed trading lot size |
StopLoss | 50 | Stop loss in points |
TakeProfit | 100 | Take profit in points |
RiskPercent | 2.0 | Account risk percentage for dynamic lot calculation |
MagicNumber | 20346 | Manage positions with specific magic number only; 0 manages all |
UseDynamicLots | false | Use dynamic lot size calculation |
Similar Breakout EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.