Expert_ABE_BE_MFI
This EA uses the MFI (Market Facilitation Index) indicator smoothed by a Moving Average as a momentum-based signal filter within the MetaQuotes Standard Library Expert Advisor framework. It opens and closes positions based on threshold-crossing signals from the CBE_BE_MFI filter, with fixed lot sizing and no trailing stop. The strategy is a single-signal, single-timeframe systematic momentum approach.
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
- Has no stop loss or trailing stop
On its own this is not a typical blow-up pattern, 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 concept is based on momentum detection using the MFI (Market Facilitation Index) indicator, comparing raw MFI values against an MA-smoothed MFI to identify shifts in market momentum direction. Entry conditions trigger when the CBE_BE_MFI filter's composite signal value exceeds the opening threshold (default 40), with a signal weight of 1.0 by default. Exit conditions activate when the signal value falls below the closing threshold (default 20), and the EA also supports pending orders that expire after 4 bars. Position sizing uses a fixed lot model (CMoneyFixedLot) with a default lot size of 0.1, without dynamic adjustment based on account balance. Money management sets a 10% percent parameter but effectively uses fixed lots, making capital management relatively simplistic. The strategy has no stop loss or take profit levels configured (both set to 0), no trailing stop, and relies entirely on the signal filter's threshold logic for trade entries and exits.
Strengths
- Uses MFI indicator combined with MA smoothing, effectively filtering market noise and identifying genuine momentum shifts
- Built on the MetaQuotes Standard Library framework with clean code structure, high modularity, and easy maintenance and extension
- Employs a threshold mechanism for entry/exit control, providing flexibility and parameter optimization space
- Expert_EveryTick set to false, calculating only on new bar open, reducing computational load and overtrading
Weaknesses
- Stop loss and take profit both set to 0, offering no price protection whatsoever, which can lead to catastrophic losses during extreme market moves
- Fixed lot money management is overly simplistic, failing to dynamically adjust position size based on account size and volatility
- Relies on a single MFI signal filter without multi-dimensional confirmation, prone to false signals and losing trades
- No trailing stop mechanism means profitable positions can give back significant gains or even turn into losses on market retracements
Possible improvements
- Add stop loss and take profit parameters; recommend at least ATR-based dynamic stop loss to control maximum risk per trade
- Introduce multi-timeframe confirmation or auxiliary indicators (e.g., trend filter) to reduce false signals
- Replace fixed lot sizing with dynamic position management based on account balance and ATR volatility
- Add a trailing stop module to replace the current TrailingNone, protecting floating profits
Risk assessment
Overall risk: High risk
- Stop loss and take profit are both zero, leaving trades fully exposed to market risk without any price protection
- Single signal source lacks confirmation mechanism, prone to frequent entries and exits in choppy markets causing consecutive losses
- Fixed lot size does not adjust with account changes, unable to automatically reduce risk exposure after accumulated losses
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
Expert_Title | Expert_ABE_BE_MFI | Document name |
Expert_MagicNumber | 19355 | EA magic number for order identification |
Expert_EveryTick | false | Execute every tick |
Signal_ThresholdOpen | 40 | Open position signal threshold [0...100] |
Signal_ThresholdClose | 20 | Close position signal threshold [0...100] |
Signal_PriceLevel | 0.0 | Price level for trade execution |
Signal_StopLevel | 0.0 | Stop loss level (points), 0=no stop loss |
Signal_TakeLevel | 0.0 | Take profit level (points), 0=no take profit |
Signal_Expiration | 4 | Pending order expiration (bars) |
Signal__PeriodMFI | 37 | MFI indicator period |
Signal__PeriodMA | 5 | MFI smoothing MA period |
Signal__Weight | 1.0 | Signal filter weight (0-1.0) |
Money_FixLot_Percent | 10.0 | Money management percentage |
Money_FixLot_Lots | 0.1 | Fixed trading lots |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.