Enkan Eurusd Mean Reversion
- Experts
- 버전: 1.110
- 활성화: 5
ENKAN EURUSD MEAN REVERSION
EURUSD-TUNED M5 MEAN REVERSION WITH A CAPPED SIX-LEVEL BASKET
BACKTEST AT A GLANCE
• Full period: 2024-08-01 to 2026-09-01
• Modeling: 100% real ticks
• Net profit: JPY +200,287
• Final balance: JPY 1,200,287 from JPY 1,000,000
• Profit factor: 2.90
• Maximum relative equity drawdown: 8% / JPY 87,831
• Sharpe ratio: 2.33
• 580 positions, 1,160 deals, 213 parsed baskets
• 25 of 25 positive close-months
Fixed recent out-of-sample check, after parameter selection:
• Period: 2026-01-01 to 2026-09-01
• Net profit: JPY +71,788
• Profit factor: 2.55
• Maximum relative equity drawdown: 9%
• 224 positions, 80 parsed baskets
• 8 of 8 positive close-months
Both tests used Phillip Securities Japan historical data, EURUSD.ps01 M5, JPY 1,000,000 initial deposit, leverage 1:25, fixed 0.04-lot base size, no balance compounding and 100% real ticks. The full-period result contains the recent period, so the two profits must not be added.
OVERVIEW
Enkan Eurusd Mean Reversion is a fixed-rule Expert Advisor for EURUSD on the M5 timeframe. It evaluates completed five-minute bars, looks for statistically extended movement away from the short-term mean and attempts a counter-trend order on the next eligible M5 bar.
The EURUSD edition uses a dedicated 2.35 ATR displacement threshold and a 2.25-pip multi-level basket target. These settings were selected from only three variants declared before testing. The winner was then checked on a fixed recent period without switching candidates. No exhaustive optimization sweep was used.
The EA is deterministic. It does not use AI, machine learning, DLLs, WebRequest, external indicators, external files or external APIs.
KEY FEATURES
• Completed M5 bars only for entry decisions.
• EURUSD-calibrated SMA20 displacement and RSI extremes.
• SMA50/SMA200 trend, shock-range and extreme Bollinger/trend filters.
• Adaptive ATR spacing using range, tick-volume activity and Bollinger width.
• Later basket intervals expand geometrically.
• Six-level hard cap in the Standard configuration.
• Basket exit from the volume-weighted average after two or more levels.
• Common server-side stop plus client-side time exit.
• Fixed base lot; no automatic balance compounding.
• Hedging and netting account support.
• No external dependencies.
TRADING LOGIC
A long setup requires the completed close to be at least 2.35 ATR below SMA20 and RSI14 to be 27.5 or lower. A short setup requires the corresponding move above SMA20 and RSI14 of 72.5 or higher.
The strategy responds only to the first completed-bar crossing into the qualifying zone. It applies trend, completed-bar range and extreme Bollinger/trend rejection gates. New signals are evaluated during UTC 23:00-05:59. After a valid signal, the first order is attempted on the next eligible M5 bar. The fill uses the first available tradable quote and is not guaranteed to equal the exact bar-open price.
EURUSD-CALIBRATED ADAPTIVE BASKET
If price continues against the first position, Enkan can add same-direction positions. Initial spacing starts from 1.25 ATR and is adjusted by an activity factor derived from the signal-bar range, recent tick volume and Bollinger Band width. Later grid intervals expand by a factor of 1.5.
With the Standard 0.04-lot setting and a 0.01-lot broker step, the six-level sequence is:
0.04 / 0.06 / 0.09 / 0.14 / 0.20 / 0.30 lot
Maximum Standard combined volume is 0.83 lot. A different broker volume step can change the rounded sequence and exposure.
EXIT RULES
For baskets with two or more levels, Enkan attempts to close the full basket approximately 2.25 pips beyond its volume-weighted average entry.
A one-level position has no fixed take-profit under the Standard settings. It remains subject to the time exit and hard stop, so this is not a system where every entry closes after a quick 2.25-pip move.
A common server-side stop is submitted 750 pips from the initial entry-bar BID-open reference. The EA begins attempting a time-based basket close 720 hours after the initial M5 entry bar. Closure can occur later when the market or execution route is unavailable.
New baskets are disabled from December 20 through January 7 on a UTC basis. Existing baskets remain managed.
EURUSD CALIBRATION
The initial EURUSD migration used a 2.50 ATR entry threshold and a 2.00-pip basket target. On the same full period it produced JPY 179,660, PF 2.79 and 8% maximum relative equity drawdown.
The released defaults use 2.35 ATR and 2.25 pips. Net profit increased by JPY 20,627, or 11.5%, PF rose to 2.90 and reported drawdown remained 8%. Exposure was not increased to improve the graph.
The two wider-spacing alternatives failed the earlier-period comparison and were rejected. This limited process reduces, but does not eliminate, fitting risk. The evidence covers one broker dataset and a little over two years; it is not proof of future or cross-broker performance.
FULL-PERIOD MT5 TEST
• Product strategy version: 1.110
• Broker: Phillip Securities Japan
• Server: PhillipSecuritiesJP-PROD
• Symbol / timeframe: EURUSD.ps01 / M5
• Period: 2024-08-01 to 2026-09-01
• Modeling: 100% real ticks
• Initial deposit / leverage: JPY 1,000,000 / 1:25
• Base volume: fixed 0.04 lot; no compounding
• Net profit: JPY 200,287
• Gross profit / loss: JPY 305,755 / JPY -105,468
• Profit factor: 2.90
• Expected payoff: JPY 345.32 per position
• Maximum equity drawdown: JPY 87,831 / 8%
• Recovery factor: 2.28
• Sharpe ratio: 2.33
• Position trades / deals: 580 / 1,160
• Parsed baskets: 213
• Maximum observed basket depth: 6 levels
Realized basket P/L grouped by close month was positive in 25 of 25 close-months. This is not month-end equity and excludes unrealized P/L at each month-end.
RECOMMENDED ENVIRONMENT
• Platform: MetaTrader 5
• Symbol: EURUSD or a suffix variant reported by MT5 as EUR base / USD profit currency
• Chart timeframe: M5
• Account type: Any, hedging or netting
• Standard base volume: 0.04 lot
• Maximum Standard order: 0.30 lot on a 0.01 step
• Maximum Standard combined volume: 0.83 lot on a 0.01 step
• Signal session: UTC 23:00-05:59
• Default server-time mode: European DST, winter UTC+2 / summer UTC+3
• Historical test server-time mode: fixed UTC+9
• Continuous operation: recommended while a basket is open
Use one Enkan instance per account, symbol and Magic Number. Do not mix it with manual trades or another EA on the same EURUSD symbol. This is especially important on netting accounts, where single-symbol exposure is aggregated; mixed activity can block new entries or disrupt basket management.
The server-to-UTC setting must match the broker server clock. Test the exact symbol, time conversion, lot sequence and margin behavior on a demo account first.
INPUT PARAMETERS
OPERATION
• InpMagicNumber = 26091087 — Unique identifier for Enkan positions and persistent state.
• InpBaseLot = 0.04 — First basket volume. Published results use 0.04 without compounding.
• InpMaxDeviationPoints = 20 — Maximum order-price deviation in broker points.
• InpAllowNewEntries = true — Disables new baskets when false while existing baskets remain managed.
• InpDiagnostics = true — Detailed Experts-log messages.
• InpProductOrderComment = MQL5:ENKAN_EURUSD — ASCII order comment.
BROKER SERVER TIME
• InpBrokerUTCOffsetMode = G61_UTC_EUROPE_DST — Fixed or European DST conversion mode.
• InpBrokerUTCOffsetHours = 9 — Fixed server offset from UTC when fixed mode is selected.
• InpBrokerWinterUTCOffsetHours = 2 — Winter offset in European DST mode.
• InpBrokerSummerUTCOffsetHours = 3 — Summer offset in European DST mode.
SIGNAL
• InpDeviationATRThreshold = 2.35 — EURUSD displacement from SMA20 in ATR14 units.
• InpRSIThreshold = 27.5 — Long threshold; the short threshold is 72.5.
• InpTrendMaxATR = 4.0 — Maximum absolute SMA50/SMA200 separation in ATR14.
• InpShockMaxATR = 3.0 — Maximum completed signal-bar range in ATR14.
• InpGateBBZThreshold = 3.8 — Bollinger Z component of the extreme-trend rejection gate.
• InpGateDirectionalTrendThreshold = -3.0 — Direction-adjusted trend component.
• InpRSIReplayBars = 4096 — Completed M5 bars used to rebuild internal RSI state.
BASKET AND EXITS
• InpSpacingATRMultiplier = 1.25 — Initial ATR spacing before activity adjustment.
• InpMaxLevels = 6 — Maximum basket depth.
• InpLotMultiplier = 1.5 — Nominal level-to-level volume multiplier, broker-step rounded.
• InpSpacingAcceleration = 1.5 — Expansion factor for later intervals.
• InpBasketTargetPips = 2.25 — Multi-level target beyond volume-weighted entry.
• InpTargetMinLevels = 2 — Minimum levels before the basket target activates.
• InpSoloTakeProfitPips = 0.0 — Zero disables the one-level fixed target.
• InpBasketStopPips = 750.0 — Common hard-stop distance; not a guaranteed maximum loss.
• InpMaxHoldHours = 720 — Time after which basket closure begins to be attempted.
CALENDAR
• InpPauseYearEndNewEntries = true — Suspends new baskets over the configured UTC interval.
• InpYearEndPauseStartMonth = 12
• InpYearEndPauseStartDay = 20
• InpYearEndPauseEndMonth = 1
• InpYearEndPauseEndDay = 7
IMPORTANT RISK NOTICE
Enkan uses a capped grid and martingale-style lot progression. In a persistent one-directional EURUSD move, position count, required margin and floating loss can rise together. Six levels and 0.83-lot Standard exposure limit the configured ladder but do not make the strategy low risk.
The 750-pip server-side stop is not a guaranteed maximum loss. Gaps, slippage, reduced liquidity, trading halts, communication failure and broker execution can cause a different close price. A margin closeout can occur before the strategy stop depending on balance, leverage and broker rules.
Basket targets, grid additions and the time exit require the EA and MetaTrader 5 terminal to keep running. The server-side stop normally remains registered while offline, but client-side basket management does not operate when the terminal, EA, VPS/computer or network is stopped.
Published results apply only to the stated broker data, period and Standard settings. Changing the base lot or any parameter changes exposure and invalidates a direct comparison. Spreads, commissions, swaps, execution, stop levels, symbol specifications, server time and margin calculations differ by broker.
JPY 1,000,000 is a historical test condition, not a guaranteed safe balance. Backtests are simulations and do not guarantee future profit, drawdown or execution quality.
