EA-47664 · Session Trading

Simple_Pending_Orders_Time

This EA places pending buy and sell stop orders at user-defined distances from the current price during specified trading sessions. Orders are automatically managed with take-profit and stop-loss levels, and any unfilled orders are deleted at the end of the session. It is a straightforward time-based breakout trading system that relies on price movement away from the opening range during active market hours.

Open the interactive view (equity curve, symbol switch)

Key facts

RiskMedium
Blow-up riskLow
Rating★★☆☆☆
TypeTrading EA
TimeframesM15, H1, H4
IndicatorsTime, Pending Orders
AuthorMrBrooklin

Backtest results (H1, about 1 year)

SymbolP&LAnnualMax DDTradesWin rateSharpeRecoveryLosing streakPer tradeStatus
EURUSD0.00%0.00%0.00%0—————Not convertible yet
GBPUSD0.00%0.00%0.00%0—————Not convertible yet
USDJPY0.00%0.00%0.00%0—————Not convertible yet
XAUUSD0.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 session breakout trading, placing a buy stop and a sell stop pending order at user-specified distances above and below the current price during a defined time window, anticipating a directional breakout. Entry conditions are triggered automatically when price reaches the pending order price, with the buy stop placed above and the sell stop placed below the current price by a configurable number of points. Exit conditions consist of separate take-profit and stop-loss levels for buy and sell orders, both configurable by the user, while unfilled pending orders are automatically deleted at the end of the trading session. Position sizing uses a fixed lot size approach, with the user specifying the lot value directly through an input parameter, and there is no dynamic lot sizing or equity-based calculation. Money management is rudimentary, lacking maximum position limits, drawdown controls, or percentage-of-equity calculations, relying entirely on the user to set sensible parameters. The overall strategy logic is clear and straightforward, but risk control is heavily dependent on the user configuring appropriate parameter values.

Strengths

  • Strategy logic is simple and clear, easy to understand and configure, suitable for beginners
  • Session-based trading avoids low-liquidity periods and reduces slippage risk
  • Symmetric buy/sell pending orders do not predict direction, letting the market choose the breakout direction
  • Unfilled pending orders are automatically deleted, preventing accidental fills outside trading hours
  • Separate configurable TP/SL for buy and sell provides good flexibility

Weaknesses

  • No dynamic position sizing; fixed lots ignore account equity changes, posing overtrading risk
  • Lacks trailing stop functionality; winning trades may reverse into losses due to price retracement
  • No maximum position or loss limits; risk becomes uncontrolled when multiple orders fill simultaneously
  • No news event filter; major data releases can cause extreme volatility that blows through stop losses
  • Lacks spread filter; high-spread periods increase entry costs and may invalidate the strategy

Possible improvements

  • Add dynamic position sizing based on account equity or risk percentage to replace fixed lot size
  • Implement a trailing stop feature to protect accumulated profits on winning trades
  • Add spread filtering and maximum open position limits to improve risk management

Risk assessment

Overall risk: Medium

  • Fixed lot sizing without dynamic calculation may expose small accounts to excessive risk
  • Both pending orders can fill simultaneously, causing double losses during extreme market moves
  • No spread filter means stop loss distances may be insufficient in high-spread environments

Evaluation scores

Code quality3.0
Strategy logic3.0
Risk management2.0
Robustness2.0
Innovation2.0
Documentation2.0
Overall2.3

Parameters

ParameterDefaultDescription
StartHour8Trading start hour (server time)
StartMinute0Trading start minute
EndHour20Trading end hour (server time)
EndMinute0Trading end minute
Distance200Pending order distance from current price in points
StopLossBuy400Buy order stop loss in points
TakeProfitBuy600Buy order take profit in points
StopLossSell400Sell order stop loss in points
TakeProfitSell600Sell order take profit in points
LotSize0.1Lot size per trade

Similar Session Trading 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.