/* Only complements native navigation; native search and Woo actions stay unchanged. */ (()=>{ const key='cfHeaderDraft40435'; window[key]?.dispose?.(); const abort=new AbortController(),media=matchMedia('(max-width:1024px)'); const header=()=>document.querySelector('.elementor-40435.elementor-location-header'); const toggle=()=>header()?.querySelector('.cf-header-nav .elementor-menu-toggle'); const expanded=t=>t&&(t.getAttribute('aria-expanded')==='true'||t.classList.contains('elementor-active')); const close=focus=>{const t=toggle();if(expanded(t)){t.click();if(focus)t.focus();}}; document.addEventListener('keydown',event=>{ if(event.key==='Escape'&&expanded(toggle())){close(true);event.preventDefault();} },{signal:abort.signal}); document.addEventListener('pointerdown',event=>{ const nav=header()?.querySelector('.cf-header-nav'); if(media.matches&&expanded(toggle())&&nav&&!nav.contains(event.target))close(false); },{signal:abort.signal}); const change=()=>close(false);media.addEventListener('change',change); const disposeCart=cfEnhanceDraftCart(header()); window[key]={dispose(){abort.abort();media.removeEventListener('change',change);disposeCart();}}; /* Proposal only. Call inside the draft header's existing behaviour IIFE: * const disposeCart = cfEnhanceDraftCart(header()); * Include disposeCart() in that IIFE's existing dispose method. * Native cart toggling, fragments and checkout links remain untouched. */ function cfEnhanceDraftCart(header) { if (!header || header.getAttribute('data-elementor-id') === '353') return () => {}; const abort = new AbortController(), owned = new Map(); let wasOpen = false, closing = false, frame = 0; const refs = () => { const widget = header.querySelector('.cf-header-cart'); return {widget, pane:widget?.querySelector('.elementor-menu-cart__main'), trigger:widget?.querySelector('.elementor-menu-cart__toggle_button'), close:widget?.querySelector('.elementor-menu-cart__close-button, .elementor-menu-cart__close-button-custom')}; }; const open = r => !!r.widget?.classList.contains('elementor-menu-cart--shown'); const attribute = (el, name, value) => { if (!el || el.getAttribute(name) === value) return; if (!owned.has(el)) owned.set(el, new Map()); const values = owned.get(el), old = values.has(name) ? values.get(name).old : el.getAttribute(name); values.set(name, {old, value}); el.setAttribute(name, value); }; const prepare = r => { if (!r.pane) return; if (!r.pane.id) attribute(r.pane, 'id', 'cf-cart-dialog-' + header.getAttribute('data-elementor-id')); attribute(r.pane, 'role', 'dialog'); attribute(r.pane, 'aria-modal', 'true'); if (!r.pane.hasAttribute('aria-label') && !r.pane.hasAttribute('aria-labelledby')) attribute(r.pane, 'aria-label', 'Shopping cart'); attribute(r.pane, 'tabindex', '-1'); attribute(r.trigger, 'aria-haspopup', 'dialog'); attribute(r.trigger, 'aria-controls', r.pane.id); if (r.close) { if (!r.close.matches('button, input[type="button"]')) attribute(r.close, 'role', 'button'); attribute(r.close, 'tabindex', '0'); if (!r.close.hasAttribute('aria-label') && !r.close.hasAttribute('aria-labelledby')) attribute(r.close, 'aria-label', 'Close shopping cart'); } }; const focusable = pane => [...pane.querySelectorAll('a[href],button,input,select,textarea,summary,[tabindex],[contenteditable="true"]')] .filter(el => el.tabIndex >= 0 && !el.matches(':disabled') && !el.closest('[hidden],[inert],[aria-hidden="true"]') && el.getClientRects().length && getComputedStyle(el).visibility === 'visible'); const focusInside = () => { const r = refs(); if (!open(r) || closing || !r.pane) return; (focusable(r.pane)[0] || r.pane).focus({preventScroll:true}); }; const returnFocus = () => { const t = refs().trigger; if (t?.isConnected) t.focus(); }; const sync = () => { const r = refs(); prepare(r); const now = open(r); if (now && !wasOpen) { closing = false; cancelAnimationFrame(frame); frame = requestAnimationFrame(focusInside); } else if (!now && wasOpen) { closing = true; cancelAnimationFrame(frame); returnFocus(); closing = false; } else if (now && r.pane && !r.pane.contains(document.activeElement) && !closing) { cancelAnimationFrame(frame); frame = requestAnimationFrame(focusInside); } wasOpen = now; }; const closeNative = () => { const r = refs(); if (!open(r)) return; closing = true; returnFocus(); // Invoke the existing handler; never change its internal isCartOpen state. (r.close || r.trigger)?.click(); if (open(refs())) { closing = false; focusInside(); } }; document.addEventListener('keydown', event => { const r = refs(); if (!open(r) || !r.pane) return; if (event.key === 'Escape') { event.preventDefault(); event.stopPropagation(); closeNative(); return; } if ((event.key === 'Enter' || event.key === ' ') && r.close?.contains(event.target) && !r.close.matches('button, input[type="button"]')) { event.preventDefault(); closeNative(); return; } if (event.key !== 'Tab') return; const list = focusable(r.pane), first = list[0], last = list[list.length - 1], current = document.activeElement; if (!first) { event.preventDefault(); r.pane.focus({preventScroll:true}); } else if (!r.pane.contains(current) || (event.shiftKey && (current === first || current === r.pane))) { event.preventDefault(); (event.shiftKey ? last : first).focus({preventScroll:true}); } else if (!event.shiftKey && current === last) { event.preventDefault(); first.focus({preventScroll:true}); } }, {capture:true, signal:abort.signal}); // Move focus before native click handlers apply aria-hidden to the pane. document.addEventListener('click', event => { const r = refs(); if (!open(r) || !r.pane) return; if (r.close?.contains(event.target) || !r.pane.contains(event.target)) { closing = true; returnFocus(); queueMicrotask(() => { if (open(refs())) { closing = false; focusInside(); } }); } }, {capture:true, signal:abort.signal}); document.addEventListener('focusin', event => { const r = refs(); if (!closing && open(r) && r.pane && !r.pane.contains(event.target)) focusInside(); }, {capture:true, signal:abort.signal}); const observer = new MutationObserver(sync); observer.observe(header, {subtree:true, childList:true, attributes:true, attributeFilter:['class','aria-hidden']}); sync(); return () => { observer.disconnect(); abort.abort(); cancelAnimationFrame(frame); for (const [el, attrs] of owned) for (const [name, {old, value}] of attrs) { if (el.getAttribute(name) !== value) continue; if (old === null) el.removeAttribute(name); else el.setAttribute(name, old); } }; } })();

New MT5 arrival

The Yen Master EA MT5

Latest version

The Yen Master EA MT5 trades USDJPY breakouts with twelve built-in strategies and separate stops, targets and position management.

  • Six, nine or twelve strategies selected by trade frequency.
  • Fixed-lot, historical-drawdown and stop-based sizing modes.
  • Account-loss limits, news filters and on-chart controls.

TheYenMaster strategy, sizing and signal review

The Yen Master EA MT5 red and gold samurai product coverMT5Save 33%

Regular priceRegular price was $299.00

$159.96Crypto priceUSDT, USDC, BTC or ETH. Extra 20% off at checkout.Save 47%You save $139.04 with crypto

$199.95 with card

Visa, Mastercard, Apple Pay and Google Pay accepted.

Card payments add bank fees, sales taxes and other charges.

  • Latest version
  • Instant downloadYour file is provided immediately after payment. In very rare cases we manually review an order first, then send your download straight after. If you don’t receive your file, you can request a full refund.
  • Free future updatesAll updates are free. They’re provided on a best-availability basis: we get new versions as fast as we can, led by customer demand, but we don’t guarantee them immediately. If you need every update the moment it’s released, our service may not be the best fit for you.
  • 7-day money-backRefunds only cover an EA that fails to attach to your chart because of errors we can replicate. We don’t cover changing your mind or not liking the EA. All brokers are different, and results are never promised because markets are constantly changing.
  • Unlimited activationsUse it on as many MT5 accounts and computers as you want, live or demo. There are no restrictions on how you use it.

Source code (.mq5) available at checkout.

Orders over $300 include 3 months of PrismAlgo freeThe highly recommended cloud-connected EA for 28 FX pairs, Gold and Bitcoin. Added to your cart automatically. View PrismAlgo

Official versionsInstant downloadFuture updates includedExtra 20% off with cryptoReal people on support28,000+ tradersTrading since 2019Rated Excellent on Trustpilot

Product description

About The Yen Master EA MT5

TheYenMaster EA MT5, also called The Yen Master, trades USDJPY support and resistance breakouts through twelve built-in strategies. It suits traders who want several entry and exit designs on one currency pair, with individual stops and a shared account-protection panel. CheaperForex offers the standalone edition with email setup help and future file updates when we receive them.

Read our TheYenMaster EA MT5 review for a closer look at its sizing rules, original backtests and public signal.

Twelve breakout strategies on one USDJPY chart

The system identifies swing levels from H1 and H4 data, then places pending stop orders beyond levels that have not already broken. Each strategy has its own stop loss, take profit and trade-management rules. The developer describes the approach as no grid and no martingale; several strategies can nevertheless hold positions together.

  • Choose activity: Low enables six strategies, Moderate nine and High all twelve.
  • Choose sizing: fixed lots, risk per trade or an automatic allocation based on each strategy’s historical drawdown.
  • Limit account exposure: daily-loss, total-loss, equity-stop and equity-target controls can close positions and halt the EA.
  • Control entries: spread, direction, trading-hours and USD/JPY news filters restrict when new risk is opened.
  • Manage from the panel: pause entries, close positions with confirmation and reset a persistent halt.
The Yen Master original developer feature overview
Original developer promotional overview, retrieved 26 September 2026. Describes twelve USDJPY strategies and account controls; the prop-firm wording is not a guarantee of compliance.

Setup without a separate preset library

Attach one instance to a USDJPY chart. The chart period is not the strategy-selection control: the EA uses its internal timeframes, with the developer advising that advanced signal and exit settings stay at their defaults. The twelve strategies are included in the EA, so a separate SET-file pack is not needed.

Platform
MetaTrader 5; this offer does not run in MT4.
Market
USDJPY, with the correct broker symbol or suffix.
Account mode
A hedging account is specified because several strategies may hold positions simultaneously.
Execution
Raw spreads are recommended; confirm minimum volume, contract size, stops and margin on your broker.
Trading clock
Check server time and summer/winter GMT offsets before using the Monday, Friday or NFP filters.
Uptime
A continuously running MT5 terminal or suitable VPS during the trading week.

Understand the risk modes before choosing one

Automatic mode allocates risk from historical strategy drawdowns. Risk-per-trade mode sizes each position from its stop distance. In both modes, the developer states that lots increase at new balance highs but do not decrease after losses. That makes the same cash exposure larger relative to a depleted account. Use conservative sizing and a maximum-lot cap, and assess the combined risk of simultaneous USDJPY positions.

The economic-calendar filter operates in live trading only, so its effect cannot simply be assumed from a tester curve. Daily-loss and equity stops are operational controls, not guaranteed loss ceilings: gaps and execution conditions can change the closing price.

Current evidence in context

The public MQL5 account was newly monitored in September 2026. At our 26 September check it showed 69 completed trades and 7.28% growth, a sample too short to establish durable performance. Developer backtests cover a much longer period but use different sizing assumptions; the review explains why their drawdown percentages should not be treated as interchangeable.

What your purchase includes

The latest-version standalone MT5 offer includes the EA’s built-in strategies. No separate preset pack is required, and no privately supplied developer manual or group membership is promised. 7-day money-back guarantee if it fails to install or run. Setup help by email whenever you need it. Trading results are not covered by that guarantee.

Verify it yourself

Delivery: follow the product-specific instructions in your account after checkout to obtain your standalone file. The immediate DeliveryInformation.txt download is the instructions document, not the EA executable.

Every order

What’s included with The Yen Master

  • Instant downloadReady after checkout and kept in your account
  • Free future updatesIncluded when we receive them, every version kept in your account
  • Unlimited activationsUnlimited live and demo accounts
  • Setup helpReal people on Telegram or email
  • 7-day money-back guaranteeIf the EA fails to attach to your chart because of errors we can replicate, you get a full refund.

Product FAQs

The Yen Master EA MT5 FAQs

Still deciding?

Real people on support, by Telegram or our contact form.

Which market and platform does TheYenMaster trade?

It trades USDJPY on MetaTrader 5. It is not an MT4 file and does not automatically provide a multi-currency portfolio.

Does the chart timeframe matter?

The developer says to attach one instance to one USDJPY chart; the selected chart timeframe does not matter. Keep the advanced internal signal and exit timeframe settings at their defaults unless you understand the change.

What do Low, Moderate and High select?

Low activates six strategies, Moderate nine and High all twelve. More active strategies can mean greater simultaneous exposure to USDJPY.

Does it use grid or martingale?

The developer describes twelve breakout strategies with individual stops and targets, without grid or martingale. Multiple strategies may nevertheless hold positions at the same time.

Do automatic lots decrease after a loss?

No. The developer states that Automatic and Risk % modes increase lots at new balance highs but do not decrease after losses. Review combined exposure and the maximum-lot setting carefully.

Are preset files required?

No separate SET files are required; the twelve strategies are built in. The public listing supplies parameter explanations, but a separate private manual or developer-group membership is not promised.

What is supplied after purchase?

The latest-version standalone MT5 offer. The immediate account download is DeliveryInformation.txt with delivery instructions, not the EA executable. Future file updates are included when we receive them.

Ready when you are

The Yen Master EA MT5 for $159.96 with crypto

Regular price was $299.00 · $199.95 with card · instant download · future updates included

The Yen Master EA MT5$159.96with crypto$199.95 with card