Bill Williams
This EA implements the Bill Williams trading system, utilizing Alligator, Fractals, Awesome Oscillator, and Accelerator Oscillator to identify momentum-based trading opportunities. It enters trades when multiple Bill Williams indicators align to confirm trend direction and momentum shifts. The system follows Bill Williams' Chaos Theory principles for market analysis and trade execution.
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 | -3.41% | -2.97% | 5.09% | 126 | 42.10% | -0.76 | -0.67 | 7 | −$2.70 | Reliable |
| GBPUSD | -3.80% | -3.31% | 8.89% | 135 | 49.60% | -0.64 | -0.43 | 6 | −$2.81 | Reliable |
| USDJPY | -1.25% | -1.08% | 5.77% | 136 | 49.30% | -0.23 | -0.22 | 5 | −$0.92 | Reliable |
| XAUUSD | -97.11% | -94.65% | 97.96% | 113 | 46.90% | -0.86 | -0.99 | 6 | −$85.94 | Account stopped out |
Profitable on 0 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 Momentum EAs with a reliable result on the same market: EURUSD: better than 28% of 68 · GBPUSD: better than 30% of 66 · USDJPY: better than 47% of 68 · XAUUSD: better than 16% of 75
Month by month
| Market | Months with a gain | Best month | Worst month |
|---|---|---|---|
| EURUSD | 31% | +2.20% 2026-04 | -1.85% 2026-09 |
| GBPUSD | 62% | +2.49% 2026-01 | -2.65% 2026-02 |
| USDJPY | 46% | +1.72% 2026-02 | -1.93% 2026-07 |
| XAUUSD | 31% | +14.50% 2026-06 | -88.02% 2026-08 |
From the backtest equity curve, sampled about every two days; only reliable results.
Blow-up risk: High
- Hit a stop-out in our backtest (equity below 10%) on XAUUSD
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
This EA is based on Bill Williams' Chaos Theory, combining multiple indicators for trading decisions. Entry conditions: Alligator indicator's Lips, Teeth, and Jaw alignment confirms trend direction, Fractal breakout serves as the entry trigger, and Awesome Oscillator (AO) and Accelerator Oscillator (AC) align to confirm momentum direction. Exit conditions: Positions close when the Alligator lines converge or when an opposite fractal breakout occurs, with optional fixed stop-loss and take-profit levels. Position sizing typically uses fixed lots or percentage-based calculation on account balance. Money management relies on multi-indicator confluence to reduce false signals, but lacks advanced features like dynamic position sizing and trailing stops. The overall strategy logic is clear and well-structured, but indicator lag may cause delayed entries, and false signals are common during ranging markets without clear trend direction.
Strengths
- Multi-indicator confluence reduces false signals
- Based on well-established Chaos Theory with solid theoretical foundation
- Flexible indicator toggles adapt to different market conditions
- Clear fractal breakout entry mechanism with well-defined execution rules
- Supports stop-loss and take-profit for basic risk control
Weaknesses
- Bill Williams indicators are lagging, causing delayed entries
- Prone to false signals and consecutive losses in ranging markets
- Lacks trailing stop functionality, profitable positions may give back significant gains
- Fixed lot sizing is inflexible without volatility-based adjustment
- Missing new bar check may cause repeated entries on the same candle
Possible improvements
- Add trailing stop functionality to protect floating profits
- Incorporate ADX or volatility filter to reduce trades in ranging markets
- Implement ATR-based dynamic position sizing and stop-loss placement
- Add new bar check to prevent repeated entries on the same candle
- Add money management module supporting risk-percentage-based position sizing
Risk assessment
Overall risk: Medium
- Missing new bar check may cause multiple entries on the same candle
- No trailing stop poses significant profit give-back risk on trend reversals
- Indicator failure in ranging markets may produce consecutive losses
- StopLoss default of 0 creates risk of positions without stop-loss protection
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
Lots | 0.1 | Fixed trading lot size |
StopLoss | 0 | Auto stop loss in points |
TakeProfit | 0 | Auto take profit in points |
AlligatorPeriod | 13 | Alligator indicator period parameter |
FractalPeriod | 5 | Fractal indicator period parameter |
UseAO | true | Use Awesome Oscillator filter |
UseAC | true | Use Accelerator Oscillator filter |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.