Mid Touch Alpha EA
- Experts
- Ufuk Kuscu
- Version: 1.1
- Activations: 8
MidTouch Alpha — Supply & Demand EA (MT5)
MidTouch Alpha embeds an S/D zone engine (no external indicators), draws zones on-chart and trades them with a two-stage logic (TOUCH & MID). It includes a profit latch, TP-by-% of balance, break-even, margin gate, spread filter, and per-zone active-trade limits.
Key Features
-
Embedded Supply/Demand engine: Zones auto-detected via fast/slow fractals + ATR fuzz; no external indicators required.
-
Dual-entry logic:
-
TOUCH → first touch of the zone.
-
MID → cross of zone midline for a secondary confirmation entry.
-
-
Profit Latch: Stop opening new trades once an equity/balance growth target is reached.
-
TP by Profit %: Optional TP target as a percentage of balance (overrides point-based TP).
-
Break-even: Auto move SL beyond entry after X points in profit.
-
Per-zone gating: Limit concurrent EA trades per zone (default: 1).
-
Safety filters: Max spread (pts), minimum margin level gate, opposite-side block on the same tick.
-
Money management: Priority sizing → Risk% (if SL), else Balance-based (lots per 1K), else Fixed lot.
-
Chart visuals: Zone rectangles with strength labels (Weak / Untested / Turncoat / Verified / Proven) and color coding.
-
Self-healing TP: Attaches TP retroactively if missing (respecting broker stop/freeze levels).
-
Verbose diagnostics (optional): ATR/zones/trigger/sizing traces in Journal.
How it trades
- When a new bar is formed, the engine collects possible S/D regions with fast/slow fractals and ATR fuzz.
- According to the options (merge/extend) it merges/extends the regions and calculates the power rating:
- Proven 3+ successful retest
- Verified: ≥1 retest
- Turncoat Role reversal detection
- Untested Non-weak but no test count
- Weak: Only fast fractal sign, low confidence
- "Show/Allow" filters are used to determine the strength of the zones to be drawn/processed.
- Entry is triggered when the price touches a zone for the first time (TOUCH) and/or crosses the midline (MID).
- On entry, the SL is taken out of the zone by SLExtraPoints; TP is set as points-based or % profit target.
- Break-even and FixMissingTPs maintenance jobs maintain the positions at each tick.
- New entries are locked when the profit latch reaches the target (open transactions continue to be managed).
- Note / Note: If TP by Profit % is enabled, it overrides points-based TPs.
Inputs (Parameter Reference)
Entry & Risk
-
InpLots (default 0.10) — Fixed lot (fallback if others disabled)
-
InpEnableTouchEntry (true) — Enable TOUCH (first touch) entries
-
InpEnableMidEntry (true) — Enable MID (midline cross) entries
-
InpUseSL (true) — Place SL
-
InpSLExtraPoints (400) — Extra SL offset beyond the zone
-
InpUseTP_Touch (true) — Use TP for TOUCH
-
InpTPPoints_Touch (300) — TOUCH TP distance (points)
-
InpUseTP_Mid (true) — Use TP for MID
-
InpTPPoints_Mid (300) — MID TP distance (points)
-
InpUseTP_ByProfit (false) — TP as % of Balance (overrides point TPs)
-
InpTP_ProfitPct (0.50) — Percent of balance (e.g., 0.50 = %0.5)
Zone Selection & Safety
-
InpAllowVerified (true) — Allow Verified zones
-
InpAllowProven (true) — Allow Proven zones
-
InpBlockOppositeSameTick (true) — Block opposite-side entry within same tick
-
InpMagic (20250822) — Magic number
-
InpMaxSpreadPoints (0) — Max spread; 0=disabled
-
InpMaxActiveTradesPerZone (1) — Max concurrent EA trades per zone
-
InpMinMarginLevelPct (1000) — Stop new entries if margin% below
-
InpDebug (true) — Debug logs
-
InpDebugVerbose (false) — Extra diagnostics
Money Management
-
InpUseBalanceLot (true) — Balance-based lots
-
InpLotsPerK (0.02) — Lots per 1K balance
-
InpBalanceK (1000.0) — 1K reference
-
InpUseRiskPercent (false) — %Risk sizing (needs SL)
-
InpRiskPercent (1.0) — Risk per trade (%)
Priority: Risk% → Balance-based → Fixed lot.
Profit Latch (Stop After Target)
-
InpStopAfterProfit (true) — Lock new entries after target
-
InpProfitTargetPct (10.0) — Target % vs baseline
-
InpProfitDaily (false) — Daily reset
-
InpUseBalanceForTarget (true) — Baseline = Balance (else Equity)
Break-even
-
InpUseBE (true) — Enable BE
-
InpBE_TriggerPts (200) — Arm distance (pts)
-
InpBE_OffsetPts (75) — Move SL beyond entry
Zone Engine (Embedded)
-
ZE_BackLimit (1000) — Bars to scan back
-
ZE_ShowWeak (false) — Include Weak
-
ZE_ShowUntested (false) — Include Untested
-
ZE_ShowTurncoat (false) — Include Turncoat
-
ZE_FuzzFactor (0.75) — ATR-based edge tolerance
-
ZE_FractalFastFactor (3.0) — Fast fractal window
-
ZE_FractalSlowFactor (6.0) — Slow fractal window
-
ZE_Merge (true) — Merge overlapping zones
-
ZE_Extend (true) — Extend edges by ATR
-
ZE_DrawLabels (true) — Draw labels
-
ZE_LabelShift/Color/Size/Font — Label styling
-
Zone Colors — Support/Resistance color sets per strength
Quick Start
-
Test the EA on a period with a clear trend structure, such as H1 or M30/H4.
-
For first attempts ZE_ShowWeak=false, ZE_ShowUntested=false, ZE_ShowTurncoat=false (start with Verified/Proven only).
-
InpMaxActiveTradesPerZone=1 ve InpBlockOppositeSameTick=true and stay protective.
-
InpUseTP_ByProfit=false (points TP); then make true and try the range 0.30-0.80.
-
Strategy Tester’da:
-
Model: Every tick (or 1-minute OHLC for speed)
-
Use variable spread if your broker widens spread often.
-
Enable journal and optionally InpDebugVerbose=true to trace triggers.
-
Recommendation: Perform the first live trials on the demo account. Parameter optimisation differs for each symbol and TF.
Money Management Examples
-
Balance-based (default): Balance 10,000 → 0.02 lots per 1K ⇒ 0.20 lot.
-
Risk% (with SL): If distance(entry, SL) = 250 pts; account risk = 1% of balance; EA computes volume to risk ≈1% if tick value is provided by broker correctly.
FAQBroker tick value/size must be accurate; exotic symbols may require manual checks.
Q: Repaints?
A: Zones are recomputed on new bars using fixed fractal/ATR rules; historical shaping does not repaint intra-bar. However, merging/extending can adjust borders as new data arrives — this is by design.
Q: Which timeframes/pairs?
A: Works on all; better structure is often seen on H1–H4. On low TFs, consider tighter SL/TP and enabling %TP.
Q: MT5 netting vs hedging?
A: The EA operates with CTrade/PositionInfo and modifies by ticket then symbol, so hedging is supported. Zone gating relies on magic number and zone range.
Q: Can I add my own indicators?
A: The engine is self-sufficient; you may still combine with dashboards/filters, but avoid conflicting EAs on the same symbol+magic.
Q: What do strengths mean?
A: Heuristics based on retests/turning: Proven (3+ retests), Verified (≥1), Turncoat (role flip), Untested (no retest but not weak), Weak (low-confidence).