EA-11246 · Momentum

Exp_TSI_WPR

This EA trades based on crossover signals from a custom TSI_WPR indicator, which combines the True Strength Index with Williams' Percent Range. It opens buy positions when the indicator line crosses above its signal line and sell positions on the reverse crossover, with configurable money management and position closing options.

Open the interactive view (equity curve, symbol switch)

Key facts

CategoryMomentum
RiskMedium
Blow-up riskLow
Rating★★★☆☆
TypeTrading EA
TimeframesH1, H4, D1
IndicatorsWPR, TSI, EMA, JJMA, JurX, ParMA, T3, VIDYA, AMA
AuthorCopyright © 2014, Nikolay Kositsin

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Run error
GBPUSD0.00%0.00%0.00%0—————Run error
USDJPY0.00%0.00%0.00%0—————Run error
XAUUSD0.00%0.00%0.00%0—————Run error

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 momentum crossover of the TSI_WPR indicator, which processes WPR (Williams' Percent Range) through multiple smoothing algorithms to generate a main line and a signal line. Entry conditions trigger a buy signal when the main line crosses above the signal line (Ind[1]>Sign[1] and Ind[0]<=Sign[0]), and a sell signal on the reverse crossover. Exit conditions use reverse crossover signals for closing positions, along with fixed StopLoss and TakeProfit levels. Position sizing supports multiple margin modes including free margin-based, balance-based, loss-adjusted margin, or fixed lot size. The strategy operates on a multi-timeframe basis (default H4) and allows selection of various smoothing algorithms (SMA, EMA, JJMA, JurX, ParMA, T3, VIDYA, AMA) to adjust indicator sensitivity. Signal detection only triggers on new bars via IsNewBar() to prevent repeated trades within the same candle, but lacks spread filtering and position accumulation limits.

Strengths

  • Multi-layer smoothing of WPR effectively reduces false signals
  • Supports multiple money management modes and smoothing algorithms for high flexibility
  • New bar detection prevents repeated trades within the same candle
  • Buy/sell open and close can be independently controlled for strategy optimization
  • Fixed stop loss and take profit provide defined risk boundaries

Weaknesses

  • Lacks spread filtering, may result in unfavorable fills during high-spread conditions
  • No check for existing same-direction positions, potentially causing duplicate entries
  • Depends on custom TSI_WPR indicator file, requiring proper deployment
  • Default SL of 1000 and TP of 2000 points are very large and may not suit all instruments
  • No trailing stop feature to lock in floating profits

Possible improvements

  • Add spread filtering to pause trading when spread exceeds a threshold
  • Add position checking logic to prevent duplicate same-direction entries
  • Add trailing stop functionality to better protect floating profits

Risk assessment

Overall risk: Medium

  • No spread filter may cause significant slippage during high-volatility periods
  • Default 1000-point stop loss is large, single-trade loss could be significant
  • No same-direction position check may stack positions and amplify risk

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness3.0
Innovation3.0
Documentation1.0
Overall2.5

Parameters

ParameterDefaultDescription
MM0.1Lot size or money management ratio
MMModeLOTLot calculation mode (free margin/balance/free margin minus floating loss/balance minus floating loss/fixed lot)
StopLoss_1000Stop loss in points
TakeProfit_2000Take profit in points
Deviation_10Maximum allowed slippage in points
BuyPosOpentrueAllow buy position open
SellPosOpentrueAllow sell position open
BuyPosClosetrueAllow buy position close
SellPosClosetrueAllow sell position close
InpInd_TimeframePERIOD_H4Indicator timeframe
XMA_MethodMODE_EMASmoothing algorithm type
WPRPeriod25WPR indicator period
MomPeriod1Momentum period
XLength15First-level smoothing period
XLength28Second-level smoothing period
XLength320Third-level smoothing period (signal line)
XPhase15Smoothing algorithm phase parameter
SignalBar1Signal detection bar index

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.