AOCCI
This EA combines the Awesome Oscillator (AO) and the Commodity Channel Index (CCI) to generate momentum-based trading signals. It enters long positions when AO shows bullish momentum and CCI is oversold, and enters short positions when AO shows bearish momentum and CCI is overbought. The strategy aims to capture momentum shifts confirmed by dual oscillator confluence.
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 strategy concept is based on dual momentum oscillator confluence confirmation, using the Awesome Oscillator to determine price momentum direction and CCI to identify overbought/oversold zones as entry timing. Entry conditions require: for long positions, AO must be positive or rising and CCI must be below the oversold threshold (e.g., -100); for short positions, AO must be negative or falling and CCI must be above the overbought threshold (e.g., +100), with both conditions met simultaneously before triggering a trade. Exit conditions typically include fixed take-profit and stop-loss levels, or closing positions when AO/CCI signals reverse. Position sizing relies on configurable lot size parameters, but lacks advanced money management algorithms such as Kelly criterion or dynamic position adjustment. Money management depends on fixed lot sizes or simple proportional calculations based on account balance, without volatility-adaptive position sizing mechanisms. The overall strategy logic is clear, but dual oscillators perform differently in trending versus ranging markets, requiring a trend filter for optimal performance.
Strengths
- Dual indicator confluence reduces false signals and improves entry quality
- AO and CCI are complementary—AO determines momentum direction while CCI identifies extreme zones, creating a logical combination
- Simple and clear strategy logic with few parameters, easy to understand and optimize
Weaknesses
- Dual oscillators tend to generate frequent false reversal signals in strong trending markets
- Lacks a trend filter to distinguish between trending and ranging markets, leading to trades in unsuitable market conditions
- Default stop-loss and take-profit may be zero, presenting money management deficiencies with high real-trading risk
Possible improvements
- Add a trend filter (e.g., MA direction or ADX) to only enter trades when the trend direction aligns with momentum signals
- Introduce ATR-based dynamic stop-loss, take-profit, and position sizing to adaptively adjust risk parameters based on market volatility
Risk assessment
Overall risk: Medium
- Default stop-loss and take-profit may be zero—lack of protective stops can lead to uncontrolled single-trade losses
- Dual oscillators may continuously generate counter-trend signals in trending markets, potentially causing consecutive losses
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
AOPeriod | 5/34 | AO fast/slow MA period parameter |
CCIPeriod | 14 | CCIcalculation period |
CCIOverbought | 100 | CCI overbought threshold |
CCIOversold | -100 | CCI oversold threshold |
LotSize | 0.1 | Trading lot size |
StopLoss | 0 | Stop loss in points |
TakeProfit | 0 | Group take profit target amount (in currency) |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.