# Forward-Backward Exponential Oscillator

A normalized momentum oscillator built on forward-backward EMA filtering. It plots a steadier forward value against a more reactive backward value, with a histogram of their difference centered at 50 and a projection of estimated future readings ahead of the latest bar. For traders who want EMA-based momentum shifts with less lag.

- Indicator in the LuxAlgo Library, by LuxAlgo, published Mar 5, 2025.
- Access: free.
- Concepts: [EMA](https://www.luxalgo.com/library/concept/ema/) (primary), [Exponential Smoothing Forecasts](https://www.luxalgo.com/library/concept/exponential-smoothing-forecasts/)
- Open on Vela: https://vela.luxalgo.com/chart?pineScriptCodeId=cmpwn1ouo002bvhsgdtk9csos
- Page: https://www.luxalgo.com/library/indicator/forward-backward-exponential-oscillator/

The **Forward-Backward Exponential Oscillator** measures momentum by running an [EMA](https://www.luxalgo.com/library/concept/ema/) through price twice (once forward, once backward) and normalizing the summed changes into an oscillator. The result is two lines: a steadier forward value (grey) computed the conventional way, and a more reactive backward value (blue) recalculated on every bar, with a histogram of their difference centered at 50.

## How to Trade the Forward-Backward Exponential Oscillator?

- **Forward value above the backward value**: momentum is tilting upward.
- **Forward value below the backward value**: momentum is tilting downward.
- **Histogram around the 50 centerline**: tracks the spread between the two values, sizing the strength of the current shift.
- **Projection ahead of the last bar**: the indicator extends estimated future readings of the forward line, a compact [exponential smoothing forecast](https://www.luxalgo.com/library/concept/exponential-smoothing-forecasts/), so you can see where the calculation is heading before price confirms it.

Forward-backward filtering yields a zero-phase response: the second, backward pass cancels the lag the first pass introduces. Applied naively this approach repaints, which is why the oscillator plots only the normalized sum of changes from the filtered EMA. The printed values are final.

## Forward-Backward Exponential Oscillator Settings

- **Length**: the lookback used to sum EMA changes. Larger values produce slower, more gradual swings and stretch the projection further ahead.
- **Smoothing**: the length of the underlying EMAs. Higher settings return a smoother, less noisy oscillator.
- **Source**: the price series fed into the calculation.

## Frequently Asked Questions

### Does the Forward-Backward Exponential Oscillator repaint?

No. Backward recalculation is normally prone to repainting, but only the normalized sum of changes is plotted, so values never change once printed. The forward projection is an estimate by nature and updates as new bars arrive.

### How does it differ from a zero-lag moving average?

A tool like the [Zero-Lag EMA](https://www.luxalgo.com/library/indicator/zlema/) corrects lag inside a single forward pass and lives on the price chart. This oscillator instead doubles the filter run (forward, then backward) and presents the outcome as a normalized momentum reading rather than an overlay.

### How do I access the Forward-Backward Exponential Oscillator?

It is free: add it to your chart straight from this page in the LuxAlgo Library. You can also run it in Quant, our coding agent, directly from here to explore how its momentum shifts played out historically. You can also copy the source code from this page and run it anywhere Pine Script® runs.

## Related indicators

- [Moving Average Converging](https://www.luxalgo.com/library/indicator/moving-average-converging/) (EMA): markdown at https://www.luxalgo.com/library/indicator/moving-average-converging.md
- [Trend Regularity Adaptive Moving Average](https://www.luxalgo.com/library/indicator/trend-regularity-adaptive-moving-average/) (TRAMA): markdown at https://www.luxalgo.com/library/indicator/trend-regularity-adaptive-moving-average.md
- [Machine Learning Moving Average](https://www.luxalgo.com/library/indicator/machine-learning-moving-average/) (Adaptive-lookback MA): markdown at https://www.luxalgo.com/library/indicator/machine-learning-moving-average.md
- [ZLEMA](https://www.luxalgo.com/library/indicator/zlema/) (Trend): markdown at https://www.luxalgo.com/library/indicator/zlema.md
- [MLMA](https://www.luxalgo.com/library/indicator/mlma/) (Trend): markdown at https://www.luxalgo.com/library/indicator/mlma.md
- [Volume-adjusted MA](https://www.luxalgo.com/library/indicator/volume-adjusted-ma/) (Trend): markdown at https://www.luxalgo.com/library/indicator/volume-adjusted-ma.md
- [JMA](https://www.luxalgo.com/library/indicator/jma/) (Trend): markdown at https://www.luxalgo.com/library/indicator/jma.md
- [T3](https://www.luxalgo.com/library/indicator/t3/) (Trend): markdown at https://www.luxalgo.com/library/indicator/t3.md

---

Source: https://www.luxalgo.com/library/indicator/forward-backward-exponential-oscillator/ (LuxAlgo Library). Free to use with attribution: https://www.luxalgo.com/library/license/
