GbpChf
This EA trades the GBP/CHF currency pair using a trend-following strategy based on moving average crossovers and momentum confirmation. It opens positions in the direction of the prevailing trend when short-term and long-term moving averages cross, with additional filters for trend strength. The EA includes basic risk management with stop loss and take profit levels.
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.03% | -0.02% | 3.48% | 102 | 54.50% | 0.01 | -0.01 | 5 | +$0.31 | Reliable |
| GBPUSD | +2.36% | +2.05% | 4.79% | 99 | 47.50% | 0.46 | 0.49 | 8 | +$2.39 | Reliable |
| USDJPY | +2.67% | +2.32% | 4.61% | 94 | 47.90% | 0.59 | 0.58 | 6 | +$2.84 | Reliable |
| XAUUSD | +37.13% | +29.81% | 42.85% | 94 | 54.80% | 0.80 | 0.87 | 6 | +$42.59 | Reliable |
Profitable on 3 of 4 markets with reliable results.
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.
Against the other Trend Following EAs with a reliable result on the same market: EURUSD: better than 55% of 95 · GBPUSD: better than 65% of 95 · USDJPY: better than 80% of 95 · XAUUSD: better than 74% of 96
Month by month
| Market | Months with a gain | Best month | Worst month |
|---|---|---|---|
| EURUSD | 62% | +1.39% 2026-04 | -1.33% 2026-10 |
| GBPUSD | 62% | +2.40% 2026-04 | -2.66% 2026-10 |
| USDJPY | 54% | +2.80% 2026-04 | -1.91% 2026-03 |
| XAUUSD | 69% | +44.08% 2026-01 | -16.46% 2026-05 |
From the backtest equity curve, sampled about every two days; only reliable results.
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 trend following, using crossover signals between fast and slow moving averages to determine trend direction and entry timing. It opens long positions when the fast MA crosses above the slow MA with momentum confirmation of an uptrend, and short positions on the reverse crossover with momentum confirming a downtrend. Exit conditions include reaching predefined take profit targets, triggering stop loss levels, or receiving an opposite crossover signal. Position sizing uses a fixed lot approach without dynamic adjustment based on account equity or volatility. Money management incorporates hard stop loss and take profit levels, but lacks a trailing stop mechanism to protect accumulated profits. The overall strategy logic is clear, but it may generate frequent false signals in ranging markets leading to consecutive losses.
Strengths
- Simple and clear strategy logic, easy to understand and maintain
- Explicit stop loss and take profit settings provide controllable risk
- Performs well in trending markets, capturing medium to long-term trends
- MA crossover with momentum confirmation reduces false signals
- Well-structured code with highly configurable parameters
Weaknesses
- Fixed lot sizing without dynamic adjustment based on account size limits money management flexibility
- Frequent false crossover signals in ranging markets may lead to consecutive losses
- Lack of trailing stop mechanism prevents locking in more profits during extended trends
- Only applicable to GBP/CHF single pair, limiting strategy adaptability
- No new bar check mechanism, potentially opening duplicate positions on the same candle
Possible improvements
- Add ATR-based dynamic stop loss and trailing stop to automatically adjust risk levels based on market volatility
- Incorporate ranging market filters (such as ADX or Bollinger Band width) to avoid frequent trading during sideways markets
- Implement dynamic position sizing based on account equity and risk percentage to replace fixed lot sizing
Risk assessment
Overall risk: Medium
- No new bar check may lead to duplicate position openings on the same candle, increasing risk exposure
- Fixed lot sizing ignores account size, potentially causing over-leveraging in small accounts
- Consecutive false signals in ranging markets may result in multiple stop losses accumulating significant losses
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
FastMA_Period | 10 | Fast MA period |
SlowMA_Period | 50 | Slow MA period |
MA_Method | MODE_SMA | MA calculation method |
StopLoss | 300 | Stop loss in points |
TakeProfit | 600 | Take profit in points |
Lots | 0.1 | Fixed trading lot size |
Momentum_Period | 14 | Momentum indicator period |
MagicNumber | 25774 | EA magic number |
Similar Trend Following EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.