Trend Pullback System MT5
- Experts
-
Pol Lazaro Porta
Algorithmic trader with over 10 years of experience trading CFDs. - Version: 1.0
- Activations: 12
TPS (Trend Pullback System) is an expert advisor built around a single concept: wait for a defined trend, wait for price to pull back into the value zone within that trend, and enter only when the original move resumes. It applies the principle of buying weakness within an uptrend and selling strength within a downtrend.
It does not average down, does not build grids, and does not increase lot size after a loss.
This Expert Advisor is NOT for you if:
- You are looking for a system with no losing trades or guaranteed rapid account growth.
- You prefer flawless backtest curves, even if they are the result of overfitting.
- You are looking for high-frequency trading and find it uncomfortable when the system goes through periods without trading.
- You prefer martingale, grid, or averaging strategies.
- You do not consider risk management important.
This Expert Advisor may interest you if:
- You value a strategy based on objective, repeatable rules.
- You understand that losing trades are part of any trading system.
- You prioritize robustness over an artificially perfect backtest.
- You want to clearly understand why the system enters and exits the market on each trade.
- You value trading with proper risk management.
HOW IT WORKS
The system evaluates signals exclusively at the close of each candle, using closed candles only. It does not use data from the candle currently forming, so signals do not repaint and the Strategy Tester's behavior stays consistent with live trading.
The decision process has four stages:
- Higher timeframe context. A moving average on a higher timeframe defines the overall bias.
- Trend on the trading timeframe. A slow moving average on the working chart must confirm the same direction and, optionally, must be sloping in favor of the trade.
- Pullback into the value zone. Price must return to a value zone that is defined dynamically within the trend. The system evaluates the depth of that pullback against the recent price move: neither too shallow (noise) nor too deep (possible trend change), discarding the trade if it doesn't meet that balance.
- Entry trigger. The system requires an additional confirmation before entering, avoiding premature entries on false pullbacks or early resumptions. There is also an alternative market-entry mode, which activates when price confirms the resumption of the trend through a different path.
POSITION MANAGEMENT
- Stop loss as an ATR multiple or, optionally, in structural mode based on fractals, with configurable minimum and maximum ATR limits and a safety margin.
- Single-tier trailing stop that activates once profit reaches a level expressed in ATR and advances in minimum steps, reducing unnecessary order modifications.
- Optional break-even, with activation and offset defined in ATR.
- Optional fixed take profit. Disabled by default, so the trailing stop manages the exit.
- Protection against opening gaps: if price opens with a significant gap against the position, the losing trade is closed.
- Optional scheduled closing of trades before the weekend and before the daily session close.
Every distance in the system (stop loss, trailing, break-even, pullback depth, spread filter, gap threshold) is expressed as a multiple of volatility. This allows the advisor to automatically adapt to changes in the instrument's volatility instead of relying on fixed distances.
RISK MANAGEMENT
Trade size is defined using three volume calculation modes:
- Fixed lot.
- Percentage risk on the current balance (compounding).
- Percentage risk on a fixed base capital.
Volume is always derived from the actual stop loss distance of that specific trade, not from a lot table.
It also includes a risk limiter. Before sending the order, the advisor recalculates the actual monetary risk and skips the entry if it exceeds the defined tolerance over the intended risk. Available free margin is also checked before trading.
By default, the system holds only one position at a time, with a waiting period between entries. This is a conservative approach, designed to keep risk under control and avoid the accumulation of exposure.
WHAT THIS ADVISOR DOES NOT DO
- It does not use martingale, averaging, grids, or loss-recovery techniques.
- It does not open opposite positions simultaneously.
- It does not rely on arbitrage, latency, or unusual execution conditions.
- It does not hold positions without a stop loss.
BROKER COMPATIBILITY
The advisor reads and respects the minimum stops level, the freeze level, the minimum and maximum volume and the volume step, the symbol's combined volume limit, the account's pending order limit, the supported filling modes, and the supported expiration modes. Volume is normalized to the symbol's volume step.
It is suitable for both hedging and netting accounts.
INFORMATION PANEL
An on-chart panel shows the real-time state of the decision process:
- Higher timeframe bias.
- Trend alignment on the working chart.
- Pullback detection.
- Trigger state.
- Operating status.
The panel is for information only and does not influence trading decisions. It automatically adapts to light and dark chart templates.
INCLUDED CONFIGURATION
The advisor's default parameters are prepared for NASDAQ 100 on M15.
For other instruments with strong, well-sustained trends, or for other timeframes, it is recommended not to change the configuration directly, but to validate any adjustment through a rigorous testing process before trading it live.
VALIDATION PROCESS
The configuration included for NASDAQ 100 on M15 was developed through in-sample selection, out-of-sample confirmation, and an additional forward test on a later period not used or seen during development.
The goal of this process is greater robustness of behavior, not fitting the system to a specific historical dataset.
REQUIREMENTS
- MetaTrader 4.
- Algorithmic trading enabled in the terminal and allowed on the account.
- Active connection to the broker's server.
- Sufficient history on the symbol and timeframe being used.
- Data available on the higher timeframe, if the HTF filter is enabled.
- A broker providing tick value for the symbol, if volume is calculated as a percentage of risk.
- Sufficient free margin for the volume calculated for each trade.
HIGHLY RECOMMENDED
- Test on a demo account before trading on a live account.
- Test and fine-tune on a demo account using the actual capital you intend to trade with. The reason: the system sizes positions based on volatility and stop loss distance; if the available capital is very small, the system may not execute trades because the actual risk would exceed the configured limits, not because the EA is malfunctioning.
- Use this EA on NASDAQ 100 on the M15 timeframe, although testing and validation on other symbols and timeframes is possible. The exact instrument name varies by broker (US100, NAS100, USTEC, NQ100, US Tech 100, among others); make sure to attach the EA to the chart corresponding to the NASDAQ 100 index.
- Use an account type with no commission per trade, although this is not mandatory.
- Use a VPS to keep the EA running continuously.
- Use a different magic number per chart if running several instances.
- Check the time offset of the broker's server relative to the schedule you want to apply, since the session time filter is calculated using the broker's server time, not the trader's local time.
BEFORE BUYING
The free trial version can be run in the Strategy Tester. We recommend testing it on the instrument and broker you intend to trade with, and then on a demo account, adjusting risk to your available capital, before going live. Past results do not guarantee future results; trading financial products involves risk, and each trader is responsible for their own investment decisions.
For questions, parameter adjustments, or support, please use the MQL5 chat.
