An EA is the one kind of download here that acts on its own: indicators describe the market, while an Expert Advisor actually trades it. This free EA trades a single, transparent trend-following strategy built entirely around Parabolic SAR: it enters on the classic SAR "flip," sizes its Stop Loss, Take Profit, and position automatically, and manages one position at a time. One thing sets it apart from every other EA on this site: its Stop Loss isn't ATR-based at all — it's the SAR dot itself, for reasons explained below.
How the Strategy Works
Parabolic SAR plots a series of dots that sit either above or below price, trailing the current trend. When the dots are below price, the market is read as an uptrend; when they're above price, it's read as a downtrend. A "flip" happens when price crosses through the dots and SAR jumps to the other side — this EA treats that flip as its entry signal, exactly the way the site's own Parabolic SAR lesson describes it: a flip from above price to below price suggests the downtrend just ended and a new uptrend is starting, and the mirrored flip suggests the reverse.
The EA runs Parabolic SAR with its default Step (Acceleration Factor) of 0.02 and Maximum of 0.20 — the same defaults Wilder originally used and the same ones most traders leave in place — and checks for a flip on every completed bar. It doesn't add any separate trend-strength filter on top of the flip; the flip itself, plus the risk controls covered below, is the entire signal.
Stop Loss, Take Profit, and Position Sizing
This is the section that matters most for understanding this particular EA. Every other EA on this site sizes its Stop Loss from ATR — a volatility-adaptive stop that widens on volatile pairs and tightens on calm ones. This EA does not do that, and it's not an oversight. Parabolic SAR was designed from the start to double as a volatility-adaptive trailing stop; that's literally what the "SAR" in its name stands for — Stop And Reverse. Layering ATR on top of a SAR-based system would be redundant: both are trying to answer the same question (how far away should my stop be, given current volatility?), and SAR already answers it directly, dot by dot, as part of the same calculation that produced the entry signal.
So when the EA opens a BUY on a bullish flip, the Stop Loss is placed exactly at the SAR dot value that triggered the flip — a dot that is already sitting below the entry price by a distance that reflects current volatility and how far the trend has already extended. The mirrored logic applies to a SELL: the Stop Loss sits at the SAR dot above the entry price. Take Profit is then set at a multiple of that Stop Loss distance — RiskRewardRatio, default 2.0 — so a 2.0 setting means the target is twice as far from entry as the stop, keeping every trade's risk and reward in a fixed, known proportion regardless of how wide or narrow that particular SAR-based stop happens to be.
Position size is calculated the same way as every other EA on this site: a RiskPercent of account balance (default 1.0%) divided by the Stop Loss distance, converted through the symbol's tick value and normalized to the broker's lot step — the exact worked-example method from Risk Management Basics. A wider SAR-based stop produces a smaller lot size, and a tighter one produces a larger lot size, so the dollar risk per trade stays consistent even though the stop distance itself varies from trade to trade. Traders who want an unchanging lot size can switch on UseFixedLot and set FixedLotSize instead.
Entry Conditions
- BUY — the Parabolic SAR dots flip from above price to below price on a newly completed bar; the Stop Loss is placed at that flipped dot.
- SELL — the Parabolic SAR dots flip from below price to above price on a newly completed bar; the Stop Loss is placed at that flipped dot.
The EA evaluates these conditions once per new bar only (tracked against the time of the current bar's open), never on every tick, so a single flip can't fire multiple trades within the same candle. It opens at most one position at a time, counted and filtered by its own magic number, so it never confuses a position it opened with one you opened manually or one belonging to a different EA on the same account. It also refuses to enter when the market is too thin, comparing the live spread to MaxSpreadPoints before any order goes out.
Parameters
- Step (default 0.02) — the Parabolic SAR Acceleration Factor; controls how quickly the dots accelerate toward price as the trend extends. A larger value hugs price tighter and flips (and exits) sooner; a smaller value trails looser.
- Maximum (default 0.20) — the cap on how fast the acceleration factor can grow, preventing the dots from ever catching up to price too aggressively in a long-running trend.
All other inputs configure the common risk engine described on the EAs overview — how stops and targets are sized, how the lot is calculated from RiskPercent, and which safety checks gate every order. Its orders are tagged with magic number 20260722.
Notice what's missing compared to the site's other EAs: there is no ATRPeriod and no ATRMultiplier here. That's not a simplification or an oversight — it's the direct consequence of the design choice explained above and in the next section.
Why This EA Doesn't Use ATR
Every other EA on this site — ea-trend-following included — calculates its Stop Loss as ATRMultiplier × ATR, a fixed distance recalculated fresh at the moment each trade opens and then left alone (or, at best, manually trailed) for the rest of the trade's life. This EA works differently on purpose, and the difference is worth walking through concretely.
ATR measures average volatility over a lookback period and gives you one number: how far away, in current market conditions, a stop "should" be at this instant. Parabolic SAR does something similar but goes a step further — it produces a whole sequence of stop levels, one per bar, that automatically tightens as a trend matures. That's the entire mechanical idea behind the indicator: an early, young trend gets a wide berth so normal volatility doesn't shake you out, and a late, extended trend gets an aggressively tightening leash that locks in more of the open profit the longer the move runs. An ATR-based stop, by contrast, is usually set once at entry and doesn't reshape itself bar-by-bar in response to how far the trend has already traveled — it would need a separate trailing routine layered on top to do what SAR already does natively.
That's the practical implication for this specific EA: because the Stop Loss is defined as "the current SAR dot" rather than a static ATR-derived distance frozen at entry, a trader who chooses to manage the trade manually (or a future version of this EA that trails the stop bar-by-bar) gets a tightening stop "for free" — no extra ATR recalculation, no separate trailing-stop module, no second indicator to keep in sync with the first. As price extends further into the trend and new SAR dots print closer and closer to price each bar, the theoretical stop distance shrinks on its own, purely as a byproduct of the same calculation that generated the entry signal in the first place. Running ATR alongside SAR here wouldn't make the stop meaningfully better — it would just be a second, disagreeing opinion on a question SAR has already answered, and reconciling the two would add complexity without adding protection.
A Word of Caution
Before funding it with real money, let it run on demo across several market regimes; no backtest or live record ever guarantees what comes next. Every strategy — automated or manual — takes losing trades, and this one will too. Parabolic SAR in particular whipsaws badly in ranging or choppy markets: because it's always positioned on one side of price and always flips when crossed, a sideways market forces it to flip back and forth repeatedly, generating a steady drip of false entries and small losses with no trend-strength filter to sit those periods out. Consider combining it with a read of trend vs range or an ADX filter of your own before enabling it on a live account. The files ship as readable source, so open them in MetaEditor and satisfy yourself about what every parameter does before running them. As with every lesson on this site, this is educational material, not advice tailored to your situation.