A plotted line or an alert is where an indicator stops — an EA continues on and places the trade. This free EA trades the Vortex Indicator's VI+/VI− crossover directly: the moment directional pressure flips from one side to the other, it opens a trade in that direction, with Stop Loss, Take Profit, and position size all calculated automatically from ATR and account risk.
How the Strategy Works
The entry signal is the Vortex crossover itself: VI+ crossing above VI− signals buyers have taken directional control and triggers a BUY; VI− crossing above VI+ signals sellers have taken control and triggers a SELL. Both lines are calculated internally by the EA using the same method covered in the Vortex Indicator lesson — summed directional movement (VM+/VM−) divided by summed True Range over a period — since there's no built-in Vortex function in either MetaTrader 4 or MetaTrader 5 for the EA to call.
This EA deliberately does not layer a trend-strength filter on top of the raw crossover, unlike this site's ADX Trend Strength EA, which only acts on a +DI/-DI cross once ADX confirms a strong trend. The Vortex Indicator has no equivalent built-in strength reading to filter on, so this EA trades the crossover in its purest form — faster and more frequent than a filtered trend-following signal, at the cost of also catching more short-lived, choppy shifts that don't develop into a sustained move. That trade-off is the entire design premise of this EA, covered in more detail below.
Stop Loss, Take Profit, and Position Sizing
Both Stop Loss and Take Profit are sized from ATR rather than a fixed pip distance, so the stop always reflects how much the pair is actually moving right now. Stop Loss distance is ATRMultiplier × ATR (default multiplier 2.0, ATR calculated over ATRPeriod, default 14), and Take Profit is then set at RiskRewardRatio × Stop Loss distance (default 2.0) — every trade this EA opens, on any pair or timeframe, carries the same fixed reward-to-risk proportion.
Sizing uses the worked example from Risk Management Basics directly — RiskPercent (default 1.0%) of balance over the stop distance — so the money at risk stays near-constant as the ATR stop expands and contracts. Lot Sizes Explained covers how that figure is then snapped to the broker's minimum, maximum, and lot step before the order goes out. UseFixedLot remains available for anyone preferring a constant lot size independent of the risk calculation.
Entry Conditions
- BUY — VI+ crosses above VI− on the just-closed bar (VI+ was at or below VI− the bar before, and is now above it).
- SELL — VI− crosses above VI+ on the just-closed bar — the mirrored condition.
The same three guardrails used across this site's EA collection apply here: signals are evaluated only when a new bar opens (tracked by its open time), so one bar can't fire twice; only one position may be open at once, verified by counting trades under this EA's symbol and magic number; and entries are skipped whenever the live spread exceeds MaxSpreadPoints (default 30). Every order is tagged with MagicNumber (default 20260724), so the EA's position-counting logic never touches a trade opened manually or placed by a different EA running on the same account.
Parameters
- VortexPeriod (default 14) — the lookback window
VM+,VM−, and True Range are summed over before dividing to produce VI+ and VI−. A shorter period produces faster, more frequent crossovers; a longer period smooths the lines and reduces false signals at the cost of reacting later.
What's left — position sizing, stop and target geometry, and the safety checks — follows the site-wide risk engine, documented on the EAs overview. Trades opened by this EA carry magic number 20260724.
Why This EA Trades the Raw Crossover Without a Trend-Strength Filter
Several EAs on this site — the ADX Trend Strength EA most directly — pair a directional crossover with a separate strength reading, only acting on the cross once that strength reading confirms a genuine trend is underway. This EA deliberately doesn't do that, and it's worth explaining why rather than treating it as an oversight. The Vortex Indicator doesn't produce an equivalent standalone strength value the way ADX does; VI+ and VI− only describe which side currently has directional control, not how convincingly. Bolting on an unrelated strength filter (borrowing ADX for this purpose, for instance) is possible but changes what this EA actually is — at that point it's no longer testing the Vortex crossover on its own merits, it's testing a combined system.
Trading the raw crossover instead means accepting the trade-off in full: faster reaction to genuine directional shifts, and more false signals during choppy, range-bound conditions where VI+ and VI− cross back and forth without either side gaining sustained control. This is a deliberate design choice suited to traders who want to evaluate the Vortex Indicator's signal quality directly, or who plan to add their own filter on top through additional inputs — not a claim that an unfiltered crossover is the optimal way to trade Vortex in every market condition.
A Word of Caution
Trial it on demo first, over multiple pairs and differing conditions, before real funds are at stake — a strong backtest or demo run guarantees nothing going forward. This EA can and will lose on individual trades, and because it trades the raw Vortex crossover without a trend-strength filter, it is especially prone to a cluster of losses during choppy, range-bound conditions where VI+ and VI− whipsaw back and forth. Consider combining this EA with a trend filter or higher-timeframe bias check — see Trend vs Range — rather than running it unfiltered through every market condition. The MT4 and MT5 downloads are readable source — study them completely and understand every input before this EA runs on a live account. This page teaches how the mechanism works — it is not a recommendation to trade it with real money.