OsMaSter v0
OsMaSter v0 is an Expert Advisor that trades based on the OsMA (Moving Average of Oscillator) indicator, which is essentially the difference between the MACD histogram and its signal line. It generates buy and sell signals when OsMA crosses above or below configurable threshold levels, aiming to capture momentum shifts in the market.
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 | -1.62% | -1.41% | 3.69% | 101 | 50.00% | -0.38 | -0.44 | 6 | −$1.28 | Reliable |
| GBPUSD | +1.81% | +1.57% | 4.81% | 99 | 48.50% | 0.36 | 0.38 | 8 | +$1.83 | Reliable |
| USDJPY | +3.35% | +2.91% | 4.55% | 95 | 49.50% | 0.75 | 0.74 | 6 | +$3.53 | Reliable |
| XAUUSD | +13.31% | +10.88% | 59.61% | 91 | 55.60% | 0.50 | 0.22 | 6 | +$17.54 | Reliable |
Profitable on 3 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 38% of 68 · GBPUSD: better than 76% of 66 · USDJPY: better than 85% of 68 · XAUUSD: better than 60% of 75
Month by month
| Market | Months with a gain | Best month | Worst month |
|---|---|---|---|
| EURUSD | 38% | +1.41% 2026-04 | -1.35% 2026-10 |
| GBPUSD | 54% | +2.40% 2026-04 | -2.68% 2026-10 |
| USDJPY | 46% | +3.05% 2026-07 | -1.89% 2026-03 |
| XAUUSD | 69% | +43.95% 2026-01 | -26.34% 2026-03 |
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 core strategy of OsMaSter v0 is based on the OsMA indicator, which represents the difference between the MACD value and its signal line, reflecting the direction and strength of market momentum shifts. Entry conditions are triggered when OsMA crosses above zero or a configurable threshold from negative territory to open long positions, and when OsMA crosses below zero or a threshold from positive territory to open short positions, making it a classic momentum-following strategy. Exit conditions typically involve closing positions when a reverse signal appears, or using fixed take-profit and stop-loss levels to control the risk-reward ratio of each trade. Position sizing may support fixed lot trading or dynamic lot calculation based on a percentage of account balance, though the specific implementation depends on parameter configuration. Money management is critical because OsMA is a lagging indicator that can generate frequent false signals during ranging markets, leading to consecutive losses without proper position control and stop-loss settings. Overall, this is a typical momentum-following system suited for trending market conditions, but it may underperform during sideways consolidation periods.
Strengths
- Based on the classic OsMA/MACD momentum indicator with clear and understandable strategy logic, easy to debug and maintain
- OsMA effectively identifies momentum shifts, providing good entry timing in trending markets
- Highly configurable parameters allow users to optimize for different instruments and timeframes
- Strategy principle is well-validated over long market history; MACD/OsMA is one of the most widely used technical indicators
Weaknesses
- As a lagging indicator, OsMA tends to generate numerous false signals in ranging markets leading to frequent losses
- Lacks a trend filter, unable to effectively distinguish valid signals from noise during sideways markets
- Default stop-loss and take-profit may be zero, posing risk of opening positions without risk controls
- Single-indicator strategy lacks multi-dimensional confirmation, potentially resulting in low win rate
- No new bar check mechanism, potentially opening and closing positions repeatedly on the same bar
Possible improvements
- Add a trend filter (such as ADX or higher timeframe MA direction) to only allow trading signals when a trend is confirmed, reducing false signals in ranging markets
- Implement a new bar check (IsNewBar) to prevent repeated trading on the same bar, and add spread filtering and trading session controls
Risk assessment
Overall risk: Medium
- Default stop-loss and take-profit may be zero; if users do not manually set them, trades have no risk controls
- Lacks new bar check, potentially executing multiple trades within a single bar leading to overtrading
- Lagging indicator signals are significantly delayed during rapid market reversals, potentially causing large drawdowns
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
FastEMA | 12 | Fast EMA period |
SlowEMA | 26 | Slow EMA period |
SignalSMA | 9 | Signal line SMA period |
OsMAThreshold | 0 | OsMA crossover threshold |
LotSize | 0.1 | Base lot size per leg |
StopLoss | 0 | Stop loss in points |
TakeProfit | 0 | Fixed take profit points (20 pts) |
Similar Momentum EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.