PROJECT: MT5 EA – Opening Range Breakout (ORB) with Williams Lines (M1 + M5) DELIVERY: 3 days TESTING: 10 days demo SUPPORT: 1 month bug-fix BUDGET: 100 USD+ The EA must run independent ORB engines on M1 and M5 (1 trade per session per timeframe) for multiple assets and sessions (EU/US/Asia). ------------------------------------------------------------ CORE LOGIC ------------------------------------------------------------ - Range detection via Williams lines: • Dashed line = first candle high/low not broken • Solid line = second candle also not breaking → confirmed - A range is tradable when ONE side is confirmed and the opposite side is still dashed (provisional). - Mandatory MaxRange: GER40 = 100 pts, NAS100 = 140 pts, JP225 = 280 pts Optional MaxRange for other assets. - If provisional side becomes invalid → replace only that side: • Wait for 1 new dashed line + 1 new confirmed line • Confirmed side stays unless broken or violating MaxRange • Delete pending orders when opposite side is replaced ------------------------------------------------------------ ENTRY ------------------------------------------------------------ Buy: confirmed upper + dashed lower → BuyStop above RangeHigh + offset Sell: confirmed lower + dashed upper → SellStop below RangeLow + offset - Only 1 trade per session per timeframe - Delete orders at session end - If price breaks range before entry → cancel setup ------------------------------------------------------------ STOP, RISK, TP ------------------------------------------------------------ - SL = opposite side of range - Risk-based lot calculation - Break-Even: at +1R → SL = EntryPrice (optional BE offset) - TP includes spread offset (2–3 pts): Buy: +SpreadOffset Sell: -SpreadOffset ------------------------------------------------------------ OPTIONAL FILTERS ------------------------------------------------------------ - MACD (H1), ATR, MaxSpread - Swing trailing after BE (SwingBars 2–5)