EA-16214 · Momentum

Exp_BalanceOfPower_Histogram

This EA trades based on the Balance of Power (BOP) histogram indicator, which measures the strength of buyers vs sellers. It opens buy positions when BOP values are rising (buyers gaining strength) and sell positions when BOP values are falling (sellers gaining strength), with configurable smoothing applied to the indicator values.

Open the interactive view (equity curve, symbol switch)

Key facts

CategoryMomentum
RiskMedium
Blow-up riskLow
Rating★★☆☆☆
TypeTrading EA
TimeframesH1, H4, D1
IndicatorsBalanceOfPower, T3, JJMA, JurX, ParMA, VIDYA, AMA
Author—

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Not convertible yet
GBPUSD0.00%0.00%0.00%0—————Not convertible yet
USDJPY0.00%0.00%0.00%0—————Not convertible yet
XAUUSD0.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 core strategy of this EA trades based on momentum changes in the Balance of Power histogram indicator. Entry conditions: a buy signal is triggered when BOP values are consecutively rising (Value[0]>Value[1] and Value[1]<Value[2]), indicating buyers are gaining strength; a sell signal is triggered when BOP values are consecutively falling (Value[0]<Value[1] and Value[1]>Value[2]), indicating sellers are gaining strength. Exit conditions include hard stop-loss and take-profit settings, as well as signal-based position closing—sell positions are closed when a buy signal appears, and buy positions are closed when a sell signal appears. Position sizing supports multiple money management modes including proportional calculation based on free margin, balance, or balance minus floating loss, as well as a fixed lot mode. The indicator values are processed through configurable smoothing algorithms (such as T3, JJMA, JurX, etc.) to reduce market noise. The overall strategy is a momentum-following type, entering trades in the direction of shifting buyer-seller power dynamics.

Strengths

  • Clear strategy logic based on momentum changes in buyer-seller power dynamics, with meaningful market microstructure interpretation
  • Supports multiple smoothing algorithms and money management modes, offering flexible parameter tuning and strong adaptability
  • Dual exit mechanism combining stop-loss/take-profit with signal-based position closing provides robust risk control

Weaknesses

  • Lacks spread filter and trading session filter, which may lead to unfavorable fills during low-liquidity periods
  • Default stop-loss of 1000 points and take-profit of 2000 points are relatively large and may not suit all instruments and volatility environments
  • The indicator only uses a single timeframe without multi-timeframe confirmation, making it prone to false signals
  • Missing position count check, which may result in duplicate entries in the same direction

Possible improvements

  • Add multi-timeframe confirmation, such as verifying the trend direction on a higher timeframe before entering
  • Add spread filter and trading session control to avoid trading during low liquidity or high spread periods
  • Add position checking logic to prevent duplicate entries in the same direction which could lead to excessive risk exposure

Risk assessment

Overall risk: Medium

  • Missing same-direction position check, which may cause accumulated risk exposure from duplicate entries
  • Large default stop-loss and take-profit values may lead to unnecessarily long holding periods on low-volatility instruments
  • No spread filter mechanism, which may result in unfavorable fills when spreads widen during volatile periods

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management3.0
Robustness2.0
Innovation2.0
Documentation1.0
Overall2.3

Parameters

ParameterDefaultDescription
MM0.1Capital allocation ratio per trade
MMModeLOTMargin mode: free margin/balance/drawdown free margin/drawdown balance/fixed lot
StopLoss_1000Stop loss in points
TakeProfit_2000Take profit in points
Deviation_10Maximum allowed slippage
BuyPosOpentrueAllow buy positions
SellPosOpentrueAllow sell positions
BuyPosClosetrueAllow buy position close on reverse signal
SellPosClosetrueAllow sell position close on reverse signal
InpInd_TimeframePERIOD_H4Indicator calculation timeframe
XMethodMODE_T3Smoothing algorithm type
XLength15Extra smoothing period
XPhase15Smoothing phase (-100~+100 for JJMA, different for VIDYA/AMA)
SignalBar1Signal detection bar index position

Similar Momentum EAs

Backtests are historical simulations and do not guarantee future results. Not financial advice.

Get the weekly Arena report

One email a week: ranking changes, new signals and new research. No spam; unsubscribe any time.