Exp_FatlSatlOsma
This EA trades based on the FatlSatlOsma custom indicator, which is an OSMA-style oscillator derived from FATL (Fast Adaptive Trend Line) and SATL (Slow Adaptive Trend Line) digital filters. It opens long positions when the oscillator values show increasing momentum (Value[0] > Value[1] > Value[2] is not required, but Value[1] < Value[2] with Value[0] > Value[1]) and short positions on decreasing momentum, with configurable stop loss and take profit levels.
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 | -5.48% | -4.78% | 8.40% | 132 | 42.00% | -1.11 | -0.65 | 8 | −$4.44 | Reliable |
| GBPUSD | -4.55% | -3.97% | 7.87% | 133 | 45.90% | -0.70 | -0.58 | 8 | −$3.42 | Reliable |
| USDJPY | +1.25% | +1.08% | 4.00% | 237 | 49.20% | 0.29 | 0.31 | 7 | +$0.53 | Reliable |
| XAUUSD | +24.93% | +20.19% | 71.16% | 139 | 44.20% | 0.69 | 0.35 | 9 | +$16.28 | Reliable |
Profitable on 2 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 13% of 68 · GBPUSD: better than 26% of 66 · USDJPY: better than 69% of 68 · XAUUSD: better than 65% of 75
Month by month
| Market | Months with a gain | Best month | Worst month |
|---|---|---|---|
| EURUSD | 54% | +1.72% 2026-02 | -2.77% 2026-08 |
| GBPUSD | 38% | +1.55% 2025-11 | -4.58% 2026-05 |
| USDJPY | 62% | +2.20% 2026-02 | -1.72% 2026-07 |
| XAUUSD | 62% | +61.23% 2026-03 | -20.97% 2026-08 |
From the backtest equity curve, sampled about every two days; only reliable results.
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 an OsMA-style oscillator derived from the difference between FATL (Fast Adaptive Trend Line, 39-period) and SATL (Slow Adaptive Trend Line, 65-period) digital filters, detecting momentum direction changes via oscillator slope transitions. Entry conditions: go long when Value[1]<Value[2] (oscillator was declining) and Value[0]>Value[1] (current value starts rising), indicating momentum shifting from bearish to bullish; go short when Value[1]>Value[2] (oscillator was rising) and Value[0]<Value[1] (current value starts falling), indicating momentum shifting from bullish to bearish. Exit conditions rely on fixed StopLoss (1000 points) and TakeProfit (2000 points) parameters, while also allowing reverse-signal exits (e.g., closing longs when a sell signal appears). Position sizing is controlled by the MM parameter governing capital allocation ratio, supporting both LOT and MARGIN modes via the TradeAlgorithms.mqh library functions. Money management defaults to MM=0.1 (10% of available funds), but lacks maximum position limits or overall exposure controls. The strategy operates on the H12 timeframe by default, classifying it as a medium-to-long-term momentum reversal system, with signals taken from a configurable SignalBar to avoid repainting issues.
Strengths
- Uses FATL/SATL digital filters which produce smoother signals than standard MA crossovers, reducing false signals
- Has complete stop loss and take profit mechanism with controllable risk per trade
- Supports independent on/off switches for long and short entries/exits, providing high trading flexibility
- Implements new bar detection to prevent repeated trading within the same bar
- Configurable SignalBar parameter avoids indicator repainting issues
Weaknesses
- Depends on the custom FatlSatlOsma indicator file; EA cannot run without it
- Default StopLoss of 1000 points and TakeProfit of 2000 points are excessively large for most instruments and require manual optimization
- No position count check exists, potentially allowing duplicate entries in the same direction
- Lacks spread filtering, which may cause unfavorable entries during high-spread conditions
- Money management only controls per-trade allocation ratio with no overall portfolio exposure limit
- No trailing stop or dynamic take-profit mechanism to lock in floating profits
Possible improvements
- Add position check logic to prevent duplicate entries in the same direction and limit maximum concurrent positions
- Implement a trailing stop feature to protect floating profits during trend continuation
- Add spread filter and trading session filter to avoid entering under unfavorable conditions
Risk assessment
Overall risk: Medium
- No position count check may allow duplicate entries leading to excessive exposure
- Default SL/TP values are very large; without optimization they can cause significant losses or missed profits
- Dependency on external custom indicator and TradeAlgorithms library; missing any file causes initialization failure
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
MM | 0.1 | Trading capital as deposit ratio |
MMMode | LOT | Lot sizing method (fixed lots or margin ratio) |
StopLoss_ | 1000 | Stop loss in points |
TakeProfit_ | 2000 | Take profit in points |
Deviation_ | 10 | Maximumallowslippage(points) |
BuyPosOpen | true | Allow long entry |
SellPosOpen | true | Allow short entry |
BuyPosClose | true | Allow close long positions |
SellPosClose | true | Allow close short positions |
InpInd_Timeframe | PERIOD_H12 | Indicator timeframe |
SignalBar | 1 | Signal bar index |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.