Improve
The 'Improve' EA is a trend-following expert advisor that uses moving average-based signals to identify and trade with the prevailing market direction. It enters positions when price confirms trend direction and manages exits through a combination of trailing stops and fixed take-profit levels. The EA applies systematic position sizing based on account risk parameters.
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.27% | -0.24% | 3.79% | 110 | 48.60% | — | — | — | — | Same as other EAs |
| GBPUSD | +6.63% | +5.74% | 3.89% | 108 | 51.90% | — | — | — | — | Same as other EAs |
| USDJPY | +2.10% | +1.82% | 4.75% | 99 | 49.50% | — | — | — | — | Same as other EAs |
| XAUUSD | +1.98% | +1.63% | 52.23% | 105 | 50.00% | — | — | — | — | Same as other EAs |
On every market this backtest is identical to EA-16787, EA-16877, EA-17274, EA-17489, EA-17741, EA-19089, EA-20527, EA-22465 and others. The automatic conversion almost certainly lost what makes this EA different (a custom indicator, a filter or the money management), so these results are not ranked or counted.
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 concept of this EA is trend following based on moving averages, determining market trend direction by analyzing the relationship between price and moving average lines. Entry conditions trigger when price breaks through the moving average or when a short-term MA crosses above a long-term MA, following the classic golden cross/death cross logic. Exit conditions include reaching a fixed take-profit target, triggering a trailing stop, or closing positions when a trend reversal signal appears. Position sizing employs either fixed lot sizes or percentage-based risk calculation relative to account balance, ensuring controlled risk per trade. In terms of money management, the EA limits overall account risk exposure through maximum position limits and per-trade maximum loss thresholds. However, the strategy is prone to generating frequent false signals during ranging markets, leading to consecutive losses due to the lack of an effective sideways market filter.
Strengths
- Clear trend-following logic performs excellently in strong trending markets, capable of capturing large trend profits
- Trailing stop feature effectively locks in existing profits and prevents profitable trades from turning into losses
- Well-designed parameterization allows users to adjust MA periods and stop-loss/take-profit settings for different market conditions
- Position control mechanism helps limit per-trade risk and prevents excessive account exposure
Weaknesses
- Lacks a sideways market filter, prone to frequent false signals and consecutive losses during ranging conditions
- No spread filter included, trading during high-spread periods can significantly impact profitability
- Fixed pip-based stop-loss and take-profit doesn't account for market volatility changes, reducing adaptability across varying volatility environments
- Missing new bar check mechanism may cause multiple entries within the same bar, resulting in duplicate trades
Possible improvements
- Add an ADX or volatility filter to automatically pause trading during sideways markets, reducing losses from false signals
- Replace fixed pip-based stops with ATR-based dynamic stop-loss and take-profit to allow the strategy to adapt to different market volatility environments
- Implement new bar check logic and spread filtering to prevent duplicate entries within the same bar and avoid unfavorable trades during high-spread periods
Risk assessment
Overall risk: Medium
- Missing new bar check may cause duplicate entries within the same bar, increasing unnecessary risk exposure
- Fixed stop-loss doesn't account for market volatility—too wide in low volatility wastes profit potential, too narrow in high volatility gets easily stopped out
- No spread filter means trading during low-liquidity periods can result in excessive slippage costs
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
Lots | 0.1 | Fixed lot size per trade |
StopLoss | 50 | Stop loss in points |
TakeProfit | 100 | Take profit in points |
TrailingStop | 30 | Trailing stop in points |
MA_Period | 200 | Moving average period |
MA_Method | MODE_SMA | Moving average calculation method |
TimeFrame | H1 | Trading timeframe |
MaxPositions | 1 | Maximum simultaneous positions |
Similar Trend Following EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.