Exp_StochasticDiff
This EA trades based on the StochasticDiff custom indicator, which applies an additional smoothing algorithm to the Stochastic Oscillator. It opens buy positions when the smoothed Stochastic value turns upward and sell positions when it turns downward, with configurable position closing on opposite signals.
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 a differentiated treatment of the traditional Stochastic Oscillator: it first calculates the standard Stochastic indicator and then applies a user-selectable smoothing algorithm (such as T3, JJMA, JurX, etc.) to filter noise and extract trend momentum direction. Entry conditions are: a buy position opens when the smoothed Stochastic value turns upward (Value[0]>=Value[1] and Value[1]<Value[2]), and a sell position opens when it turns downward (Value[0]<=Value[1] and Value[1]>Value[2]), essentially capturing momentum inflection points. Exit conditions rely on opposite signals for position closing, while also setting fixed stop loss and take profit levels (default 1000 and 2000 points respectively). Position sizing supports five modes: free margin percentage, balance percentage, free margin after loss percentage, balance after loss percentage, and fixed lot size. Money management is controlled via the MM parameter with a default of 0.1 (10% risk). The strategy also uses the IsNewBar mechanism to ensure signals are calculated only once per bar, avoiding repeated trades, but lacks filters for market volatility, spread, and liquidity.
Strengths
- Uses multiple advanced smoothing algorithms to filter Stochastic noise, yielding higher quality signals than raw Stochastic
- Supports five position sizing modes for flexible money management
- Buy and sell directions can be independently enabled/disabled, facilitating unidirectional or hedging strategies
- New bar detection mechanism prevents repeated trades within the same bar
- Complete stop loss and take profit parameters for controllable risk
Weaknesses
- Lacks spread filter, which may lead to unnecessary trading costs in high-spread environments
- No position check mechanism; may open duplicate positions in the same direction
- Default SL of 1000 and TP of 2000 points are too large for smaller timeframes
- Depends on the custom StochasticDiff indicator, increasing deployment and maintenance complexity
- No dynamic stop loss mechanism such as trailing stop or breakeven stop
Possible improvements
- Add spread filter and maximum spread limit to avoid high-cost trades
- Add position check logic to prevent duplicate entries in the same direction
- Implement trailing stop or breakeven stop mechanism to lock in floating profits
Risk assessment
Overall risk: Medium
- Lack of same-direction position check may cause duplicate entries amplifying risk
- Fixed stop loss and take profit cannot adapt to varying market volatility conditions
- No spread filter may cause slippage losses under extreme market conditions
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
MM | 0.1 | Capital allocation ratio per trade |
MMMode | LOT | Margin mode: free margin/balance/drawdown free margin/drawdown balance/fixed lot |
StopLoss_ | 1000 | Stop loss in points |
TakeProfit_ | 2000 | Take profit in points |
Deviation_ | 10 | Maximum allowed slippage |
BuyPosOpen | true | Allow buy positions |
SellPosOpen | true | Allow sell positions |
BuyPosClose | true | Allow buy position close on reverse signal |
SellPosClose | true | Allow sell position close on reverse signal |
InpInd_Timeframe | PERIOD_H6 | Indicator timeframe |
KPeriod | 5 | Stochastic K period |
DPeriod | 3 | Stochastic D period |
Slowing | 3 | Stochastic slowing period |
iMA_Method | MODE_SMA | Stochastic MA method |
Price_field | STO_LOWHIGH | Stochastic price field |
XMA_Method | MODE_T3 | Extra smoothing method |
XLength | 13 | Extra smoothing period |
XPhase | 15 | Smoothing phase (-100~+100 for JJMA, different for VIDYA/AMA) |
SignalBar | 1 | Signal detection bar index position |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.