• The Parabolic SAR (stop and reverse, PSAR) is a trend‑following indicator developed by J. Welles Wilder that helps traders identify trend direction, possible trend reversals and trailing stop levels. On a price chart it is displayed as a series of dots: dots below price indicate an uptrend, dots above price indicate a downtrend.
Key takeaways
– PSAR generates buy/sell signals when the dots flip from one side of price to the other (above→below = buy; below→above = sell).
– The indicator is based on an “acceleration factor” (AF) and an “extreme point” (EP), which cause the PSAR to accelerate toward price over time.
– Default AF behavior: start at 0.02, increase by 0.02 each time the EP makes a new extreme, up to a typical maximum of 0.20.
– PSAR works best in clear trending markets and produces many false signals in sideways/range markets.
– Charting platforms compute PSAR automatically; traders mainly need to interpret the signals and set rules for stops, entries and confirmations.
The formula (rising and falling PSAR)
– Rising PSAR (uptrend):
RPSAR = Prior PSAR + [Prior AF × (Prior EP − Prior PSAR)]
– Falling PSAR (downtrend):
FPSAR = Prior PSAR − [Prior AF × (Prior PSAR − Prior EP)]
Where:
– AF = Acceleration Factor (default starts at 0.02, increases by 0.02 each time EP makes a new extreme, capped often at 0.20)
– EP = Extreme Point (highest high in the current uptrend, or lowest low in the current downtrend)
– Prior PSAR, Prior AF and Prior EP are the previous period’s values
How PSAR is updated in practice (step‑by‑step)
1. Identify current trend direction (is the PSAR dots currently below price → uptrend; above price → downtrend).
2. Set initial values for the new trend:
• AF = 0.02 (typical)
• EP = most extreme price during the new trend (highest high for uptrend, lowest low for downtrend)
• Prior PSAR = previous period’s PSAR (charting packages will initialize automatically).
3. Each new period calculate the candidate PSAR using the appropriate formula (RPSAR or FPSAR).
4. Update EP: if price makes a new extreme in the trend (new high in uptrend, new low in downtrend) then set EP = that new extreme and increase AF by its step (commonly +0.02), but do not exceed the maximum (commonly 0.20).
5. Apply boundary checks:
• In an uptrend, the next PSAR cannot be greater than the lowest two prior period lows (some implementations force PSAR ≤ the lowest of the two previous lows).
• In a downtrend, PSAR cannot be lower than the highest two prior period highs (force PSAR ≥ highest of two previous highs).
6. Check for a reversal: if price closes on the other side of the candidate PSAR (in an uptrend price closes below candidate RPSAR, or in a downtrend price closes above candidate FPSAR) then:
• A reversal is signaled.
• Switch trend direction.
• Set the first PSAR after reversal equal to the prior EP (or to an appropriate recent extreme, depending on platform).
• Reset AF to its initial value (e.g., 0.02) and set EP to the extreme of the new trend (highest high for new uptrend, lowest low for new downtrend).
7. Continue iterating each period.
Simple numeric example
– Suppose prior PSAR = 20.00, prior AF = 0.04, prior EP = 25.00 (uptrend).
– RPSAR = 20.00 + [0.04 × (25.00 − 20.00)] = 20.00 + 0.04×5.00 = 20.20.
– If price closes above 20.20, remain in uptrend and continue. If price closes below 20.20, reverse to downtrend (use falling formula next) and reset AF & EP per rules above.
Practical trading steps and rules
1. Add PSAR to your chart with default settings (AF start 0.02, step 0.02, max 0.20) unless you have a reason to modify sensitivity.
2. Use PSAR dots for entries/exits:
• Entry (long): take a long when dots flip from above to below price (confirm with a close above the PSAR dot).
• Exit (long) / Entry (short): close the long (or open short) when dots flip from below to above price.
3. Use PSAR as a trailing stop:
• For long trades, place a trailing stop at (or just below) the PSAR dot. Move stop up each period as PSAR rises.
• For short trades, place stop at (or just above) the PSAR dot and move it down each period as PSAR falls.
4. Confirm signals in non‑trend periods:
• Avoid trading PSAR signals in choppy/range markets unless you purposely trade small mean‑reversion moves.
• Use a trend strength filter (e.g., Average Directional Index, ADX). A common practical approach: accept PSAR signals only when ADX indicates a strong trend (Investopedia example: ADX above 30, though some traders use 20–25 thresholds).
• Alternatively confirm with a long simple moving average (e.g., price > 50‑period MA for long bias) or trendline.
5. Manage AF sensitivity to match the market:
• Increase AF step or raise maximum to make PSAR more sensitive (earlier stops, more signals).
• Decrease AF step or max to make PSAR smoother (fewer false flips, wider stops).
6. Backtest your combination of PSAR settings, confirmation filters and stop rules on historical data for the instrument/timeframe you trade.
PSAR vs. Moving Averages (MA)
– Both show trend, but with different logic:
• MA smooths price by averaging over N periods and reacts to smoothed price movement.
• PSAR is based on extremes and an acceleration parameter — it produces discrete reversal points (dots) and explicitly signals stops/reversals.
– Practical consequence: MAs are smoother and better at indicating trend direction; PSAR gives explicit trailing stop levels that move toward price. Many traders use both: MAs to confirm trend direction and PSAR for entry/exit and trailing stop placement.
Limitations and pitfalls
– Generates signals continuously: PSAR is always trying to catch up to price because of the AF. Eventually PSAR will cross price and generate a reversal signal even if the market never produced a real reversal—this can get you stopped out prematurely.
– Poor performance in sideways markets: when price is range‑bound PSAR will flip frequently, producing many small losses or break‑even trades.
– False reversals: because PSAR is a function of AF and EP, asmall drift or consolidation can cause a PSAR flip before a meaningful price reversal has occurred.
– Sensitivity tradeoff: more sensitive AF settings produce earlier exits/entries but more false signals; less sensitive settings reduce whipsaws but can produce larger drawdowns.
Best practices (practical checklist)
– Use default AF settings to start (0.02 step, 0.20 max) and adjust only after backtesting.
– Confirm PSAR signals with a trend filter: ADX, a longer MA, or trendlines.
– Use PSAR for trailing stops, not as a sole entry engine in choppy markets.
– Be explicit about the trigger: use a close beyond the PSAR dot (not intraday touches) to avoid noise.
– Backtest and paper‑trade PSAR combinations on the specific market and timeframe you will trade.
Implementation pseudocode (conceptual)
1. set AF = initial_AF (e.g., 0.02), AF_step = 0.02, AF_max = 0.20
2. determine initial trend and EP
3. for each new bar:
• compute candidate PSAR using RPSAR or FPSAR formula
• enforce boundary checks (not beyond prior two highs/lows)
• if price closes past candidate PSAR → reversal:
• flip trend, set PSAR = prior EP or appropriate extreme
• AF = initial_AF
• EP = new extreme (current high or low depending on new trend)
else:
• update PSAR = candidate PSAR
• if new EP (new high in uptrend / new low in downtrend):
• EP = new EP
• AF = min(AF + AF_step, AF_max)
When to adjust PSAR settings
– Shorter timeframes and volatile markets: consider a larger AF step or max to get tighter stops (more flipping risk).
– Longer timeframes or instrument with smaller volatility: smaller AF steps or lower max keeps stop wider and reduces early whipsaws.
– Always validate with historical testing for the instrument and timeframe.
Conclusion
The Parabolic SAR is a simple, visual trend‑following tool that gives concrete trailing stop levels and clear reversal signals. It is most effective in trending markets and best used with other tools (ADX, moving averages, trendlines) to avoid the frequent false signals that occur in range‑bound conditions. Charting platforms compute PSAR values automatically; traders should focus on sensible confirmation rules, sensible AF settings for their market, disciplined stop placement, and thorough backtesting.
Sources and further reading
– Investopedia: “Parabolic Indicator (Parabolic SAR)”
– Jeremy du Plessis, Definitive Guide to Point and Figure, Harriman House Publishing (cited in source material)
(If you want, I can provide a downloadable spreadsheet or Python script that computes PSAR values for a price series and demonstrates a simple PSAR + ADX trading rule.)
Continuation — Additional sections, examples, and a concluding summary
Practical step‑by‑step rules for using the Parabolic SAR (PSAR)
– Step 1 — Determine trend direction: identify whether price is in an uptrend (series of higher highs and higher lows) or downtrend (lower lows and lower highs). Many traders confirm trend with a trend filter (e.g., ADX above a threshold or price above/below a chosen moving average).
– Step 2 — Initialize variables:
• AF (Acceleration Factor) = 0.02 (default).
• AF increment = 0.02 (default).
• AF max = 0.20 (default).
• EP (Extreme Point) = current highest high in uptrend or lowest low in downtrend.
• PSAR = prior period’s PSAR (for a new trend, PSAR is commonly set to the prior period’s EP or the most recent high/low depending on implementation).
– Step 3 — Compute next PSAR:
• If trend is rising: RPSAR = Prior PSAR + Prior AF × (Prior EP − Prior PSAR).
• If trend is falling: FPSAR = Prior PSAR − Prior AF × (Prior PSAR − Prior EP).
– Step 4 — Enforce boundary rule:
• Rising SAR cannot be above the prior two period lows; if it is, set PSAR to the smallest of the prior two lows.
• Falling SAR cannot be below the prior two period highs; if it is, set PSAR to the largest of the prior two highs.
– Step 5 — Update EP and AF:
• If price makes a new high during an uptrend, set EP = new high and increase AF by the increment up to AF max.
• If price makes a new low during a downtrend, set EP = new low and increase AF likewise.
– Step 6 — Check for reversal:
• If price closes (or intraday low/high depending on your rule) below a rising PSAR, trigger a reversal to a downtrend: set PSAR to the last EP, reset AF to 0.02, set EP to the lowest low of the new downtrend.
• If price closes above a falling PSAR, reverse to uptrend similarly.
– Step 7 — Repeat for each new period.
Numeric example (simple, two-step demonstration)
This analysis assumes that…
– Prior PSAR = 10.00 (from previous calculation)
– Prior EP = 12.00 (highest high in current uptrend)
– Prior AF = 0.04 (already increased once)
– AF increment = 0.02, AF max = 0.20
1) Compute next rising PSAR:
RPSAR = Prior PSAR + Prior AF × (Prior EP − Prior PSAR)
RPSAR = 10.00 + 0.04 × (12.00 − 10.00) = 10.00 + 0.08 = 10.08
2) Suppose the two prior lows are 9.90 and 9.85. RPSAR (10.08) is above these lows, so apply boundary rule: set PSAR = min(9.90, 9.85) = 9.85. (This example shows how the boundary ensures the PSAR doesn’t end up inside price action.)
3) If today’s price makes a new high at 12.50, update:
• EP = 12.50
• AF = min(Prior AF + increment, AF max) = min(0.04 + 0.02, 0.20) = 0.06
4) For the next period, compute:
RPSAR_next = 9.85 + 0.06 × (12.50 − 9.85) = 9.85 + 0.06 × 2.65 ≈ 9.85 + 0.159 = 10.009
Notes on this example:
– Implementations differ slightly in initialization choices (how the first PSAR is set) and whether you use intraday highs/lows or closes for reversal checks. Charting platforms compute these automatically, but understanding the mechanics helps interpretation.
Simple pseudocode
– direction = determine_initial_trend()
– AF = 0.02; EP = initial_EP; PSAR = initial_PSAR
– for each new_price_period:
• if direction == up:
PSAR = PSAR + AF*(EP − PSAR)
PSAR = min(PSAR, prior_low1, prior_low2) // boundary rule
if new_high > EP: EP = new_high; AF = min(AF + increment, AF_max)
if low_of_period < PSAR:
// reversal to downtrend
direction = down; PSAR = EP; AF = 0.02; EP = low_of_period
• else (direction == down):
PSAR = PSAR − AF*(PSAR − EP)
PSAR = max(PSAR, prior_high1, prior_high2)
if new_low PSAR:
// reversal to uptrend
direction = up; PSAR = EP; AF = 0.02; EP = high_of_period
Python snippet (conceptual)
– Note: This is illustrative, not a fully optimized backtest-ready implementation.
def compute_psar(highs, lows):
n = len(highs)
psar = [None]*n
# initialize: determine initial direction, EP, AF, initial PSAR
# … initialization logic here …
for i in range(start_index, n):
# compute PSAR using formulas, apply boundary rules, update EP/AF, check reversal
pass
return psar
How to interpret signals in practice
– Buy signal: PSAR dots move from above price to below price (indicates shift to bullish momentum).
– Sell signal: PSAR dots move from below price to above price.
– Use PSAR dots as trailing stops: move exit stop to next PSAR value as trade progresses.
– Confirm PSAR signals with trend strength indicators (e.g., ADX > 25–30) or a longer moving average direction to reduce false reversals.
Combining PSAR with other indicators — practical setups
– PSAR + ADX: Use PSAR signals only when ADX confirms a strong trend (e.g., ADX > 25 or 30). This filters range‑bound whipsaws.
– PSAR + Moving Average: Trade only with PSAR buy signals when price is above a chosen MA (e.g., 50‑period MA) for longer-term confirmation; inverse for shorts.
– PSAR + RSI/Momentum: Confirm momentum with RSI (e.g., buy PSAR signal + RSI rising and not overbought).
– PSAR for exits, MA for entries: Some traders use a crossover of MAs to enter and use PSAR as a dynamic trailing stop.
Parameter tuning and optimization
– Default AF = 0.02, increment = 0.02, max = 0.20 are the industry standard, but traders may adapt:
• Faster responsiveness (catch reversals sooner): increase AF or use a larger AF increment (more false signals in choppy markets).
• Smoother PSAR (fewer whipsaws): lower AF or use smaller increments (may give later exits).
– When optimizing, always out‑of‑sample test and beware curve‑fitting. Evaluate metrics like win rate, average gain/loss, maximum drawdown, and Sharpe ratio.
Backtesting suggestions
– Use realistic rules (entry execution, slippage, commissions, position sizing).
– Define whether PSAR reversal triggers immediate market exit and re‑entry on the opposite side or whether you wait for confirmation (e.g., close beyond PSAR).
– Test across multiple symbols and market regimes (trending vs. ranging) and over different time frames (intraday, daily, weekly).
– Walk‑forward testing helps detect overfitting.
Limitations and common pitfalls (recap and elaboration)
– Always generating signals: PSAR always advances and will eventually flip even in sideways markets — leads to false signals and frequent small losses in ranges.
– Late or premature reversals: Because PSAR is a trailing method that accelerates toward price, it can both get traders out before a meaningful reversal or flip while price continues in the original trend.
– Parameter sensitivity: Small changes in AF or increment can materially change trade frequency and performance.
– Not a standalone tool: Best used with trend filters and confirmation indicators.
Example trading scenarios
– Trending market (favorable): Price of a stock has been in a sustained uptrend. PSAR dots are below price and progressively rising. Each PSAR value provides a successive trailing stop — traders can scale out or move stop‑loss to PSAR to lock in gains until PSAR flips, signaling an exit and potential reversal.
– Range market (unfavorable): Price chops between support and resistance. PSAR will flip frequently and produce multiple false entries/exits. Avoid trading PSAR-only signals here; prefer range strategies (oscillators).
Risk management and execution tips
– Use position sizing rules tied to volatility or portfolio risk percentage.
– Consider waiting for a close beyond PSAR to confirm reversal rather than intraday touches to reduce noise.
– Use PSAR as a stop approach rather than a sole entry trigger: e.g., require trend confirmation (ADX/MA) and entry confirmation (momentum indicator or price action).
– For swing trading, combine PSAR with higher timeframe trend confirmation to avoid being whipsawed by intraday noise.
Example: Simple practical trade plan using PSAR + ADX + MA
– Timeframe: daily.
– Entry: Buy when (1) PSAR flips below price, (2) price > 50‑day MA, and (3) ADX > 25.
– Stop: Place initial stop a little below current PSAR or a nearby technical support.
– Trail: Move stop to PSAR each day.
– Exit: Close position when PSAR flips above price or if ADX falls below threshold for trend weakening.
Further reading and sources
– Investopedia. “Parabolic SAR Indicator.” (source for concepts, signals, and general guidance).
– Wilder, J. Welles. “New Concepts in Technical Trading Systems.” 1978. (original description of PSAR and related indicators).
– Additional texts on trade mechanics and point‑and‑figure context: Jeremy du Plessis, “Definitive Guide to Point and Figure” (references to trading-system discussion and context).
Concluding summary
The Parabolic SAR is a compact, visually intuitive indicator that uses a stop‑and‑reverse method to identify trend direction, provide entry/exit signals, and supply a dynamic trailing stop. It performs best in clear trending markets and is prone to frequent false signals in range‑bound conditions. Traders commonly combine PSAR with trend‑strength measures (like ADX), moving averages, or momentum indicators to filter poor signals and improve trade quality. Proper parameter choices, rigorous backtesting, and disciplined risk management are essential if you intend to use PSAR in live trading.