Yperion EA
- Experts
-
Alexandre Vincent Traber
Algorithmic trading developer building Expert Advisors for MetaTrader 5. - Version: 2.0
YPERION EA — Ichimoku Trend Confluence with Adaptive Risk
Trade Ichimoku Kinko Hyo trend signals filtered by RSI confluence, with ATR-adaptive stops,
built-in pyramiding, breakeven, and a streak-based dynamic risk engine. Designed for traders
who want a rules-based trend follower that scales risk with performance, not guesswork.
OVERVIEW
YPERION EA combines the full Ichimoku cloud (Tenkan, Kijun, Senkou A/B, Chikou) with RSI
confluence to filter out weak signals and only trade confirmed trend continuation setups.
Stops and targets are ATR-adaptive, so the system adjusts automatically to each symbol's
volatility instead of using fixed pip values. Works on any symbol and timeframe; best suited
to trending Forex majors (EURUSD, USDJPY, GBPUSD) and Gold on H1-H4.
HOW IT WORKS
1. On each new bar, Ichimoku alignment is checked: Tenkan/Kijun cross plus price position
relative to the cloud and Chikou span confirmation.
2. RSI confluence filters the signal: only bullish Ichimoku setups above the bull threshold,
only bearish setups below the bear threshold, are traded.
3. An ATR volatility filter blocks entries when volatility drops below a set fraction of its
average, and a spread filter skips entries during gap or low-liquidity spread spikes.
4. Stop loss and take profit are set as ATR multiples from entry.
5. Open positions can pyramid into the trend at configurable ATR-step intervals, move to
breakeven after a set profit threshold, and exit early on an EMA-based reversal signal.
6. Position size is risk-based (% of balance), and the risk percentage itself scales up on
winning streaks and down on losing streaks.
INPUTS
General
- MagicNumber (202500): unique ID to separate this EA's trades from others
- Slippage (10): max allowed price deviation in points on order execution
- ShowPanel (true): show on-chart status panel
Ichimoku Settings
- Ichimoku_Tenkan (9): Tenkan-sen period
- Ichimoku_Kijun (26): Kijun-sen period
- Ichimoku_Senkou (52): Senkou Span B period
RSI Confluence
- RSI_Period (14): RSI calculation period
- RSI_BullThresh (55.0): RSI must be above this for long signals
- RSI_BearThresh (45.0): RSI must be below this for short signals
ATR & Volatility
- ATR_Period (14): ATR calculation period
- ATR_SL_Mult (1.5): stop loss = ATR x this multiplier
- ATR_TP_Mult (2.5): take profit = SL distance x this multiplier (reward:risk)
- Filter_VolOK (true): enable minimum-volatility filter
- Filter_ATRSmaPer (20): period of the ATR average used by the volatility filter
- Filter_MaxSpread (true): enable max-spread filter
- Filter_MaxSpreadPoints (50): skip new entries when spread exceeds this many points
Position Management
- PM_UseBreakeven (true): move stop loss to entry once in profit
- PM_BreakevenATR (1.0): profit (in ATR multiples) required to trigger breakeven
- PM_UsePyramiding (true): allow adding to winning positions
- PM_PyramidLevels (2): max number of pyramid additions per trade
- PM_PyramidATRStep (1.5): profit spacing (in ATR multiples) between each pyramid add
- PM_PyramidLotMult (0.5): size of each pyramid add, as a fraction of the initial lot
Reversal Exit
- Filter_RevExit (true): enable EMA-based early exit on trend reversal
- Filter_RevEMAPer (20): EMA period used to detect the reversal
Dynamic Risk
- Risk_BasePercent (1.0): default % of balance risked per trade
- Risk_MaxPercent (2.5): risk % ceiling reachable during winning streaks
- Risk_MaxLotSize (2.0): hard cap on lot size, regardless of risk calculation
- Streak_WinsToUp (3): consecutive wins needed before risk starts scaling up
- Streak_RiskStepUp (0.25): risk % added per qualifying win streak
- Streak_LosesToDn (2): consecutive losses needed before risk starts scaling down
- Streak_RiskStepDn (0.25): risk % subtracted per qualifying loss streak
Optimizer Score
- Score_MinProfitFactor (1.2): disqualify optimization passes below this profit factor
- Score_MaxDrawdownPct (20.0): disqualify passes above this drawdown %
- Score_MinTrades (30): disqualify passes below this trade count
- Score_R2Weight (0.5): weight of equity curve smoothness (R2) in the score
- Score_SlopeWeight (0.2): weight of profit speed (normalized slope) in the score
- Score_SplitPenalty (0.3): penalty for R2 divergence between the first and second half of the test
- Score_SkewPenalty (0.3): penalty for profit concentrated in a single trade
- Score_UlcerPenalty (0.05): penalty for drawdown depth and duration (Ulcer Index)
- Score_MARWeight (0.1): weight of capital efficiency (MAR ratio) in the score
- Score_TradeBonusWeight (0.05): weight of the trade-count reliability bonus (diminishing)
OPTIMIZER SCORING SYSTEM
YPERION EA includes a custom OnTester() scoring function built to fight curve-fitting. Instead of
ranking optimization passes by raw net profit, it scores equity curve smoothness (R2), profit
speed (slope), stability across the first vs. second half of the test (temporal divergence),
profit concentration in single trades (skew), drawdown depth and duration (Ulcer Index), and
capital efficiency (MAR ratio), with a diminishing bonus for trade count reliability. Runs that
fail minimum profit factor, drawdown, or trade count thresholds are disqualified outright.
Set Optimizer Criterion to Custom max to activate this scoring during optimization.
RECOMMENDED SETUP
Symbol: XAUUSD, EURUSD, GBPUSD, USDJPY
Timeframe: H6, H4 or H1
Broker: low-spread ECN/RAW account recommended
VPS: recommended for 24/5 uptime
SCREENSHOTS
Example chart and backtest shown on XAUUSD, H6, tested in 1-minute OHLC modeling mode:
live chart with Ichimoku cloud, active signal panel, and an open trade with pyramided entries.
Recommended input configuration is also shown for reference.
DISCLAIMER
Past performance does not guarantee future results. Forex and CFD trading involves substantial
risk of loss. Test thoroughly on a demo account before live deployment. No profit is guaranteed.
