Combines per-bar price change and volume into a single "force" reading. Positive when buyers were strong (price up on volume); negative when sellers were strong (price down on volume). Most useful as a confirmation tool — its agreement or disagreement with price signals adds conviction or warning. Developed by Alexander Elder.
On confirmation tools
EFI is fundamentally a confirmation indicator. The smoothed Force Index value rarely produces standalone signals; its real job is confirming or invalidating price-based triggers from other systems.
EFI on MES daily — positive vs. negative force stretches
What it measures
- Per-bar force. Volume × price change. Big positive when a strong-up bar happened on heavy volume; big negative when a strong-down bar happened on heavy volume.
- Smoothed conviction trend. The EMA-smoothed Force Index gives a trend reading — sustained positive Force means buyers persistently dominate.
- Combines direction + magnitude + volume. Unlike OBV (volume only) or pure momentum (price only), EFI integrates all three.
Formula
How AlgoLift computes it
For each bar:
Raw Force[t] = Volume[t] × (Close[t] − Close[t-1])
Then smoothed:
Force Index[t] = EMA(Raw Force, period)
The raw force is a single-bar reading and tends to be very volatile. The smoothed Force Index (default period 13) is what most strategies actually read.
Positive readings = buyers were stronger (closes were up AND volume was meaningful). Negative readings = sellers dominated.
Inputs in AlgoLift
| Setting | Default | Range | Notes |
|---|---|---|---|
| Period | 13 | 1–200 | EMA period for smoothing the raw force values. |
Recommended periods
- 2: Very fast — Elder's "short-term EFI" for intraday signals.
- 13 (default): Elder's recommendation for swing trading.
- 21–34: Slower — for medium-term trend confirmation.
Outputs in AlgoLift
| Handle | Type | Plotted | Notes |
|---|---|---|---|
| Force Index | Numeric | Always | The smoothed Force Index. Primary reading. |
| Raw Force | Numeric | On select | Unsmoothed per-bar value. Highly volatile. |
| Direction | Numeric | On select | 1 when EFI > 0 (bullish), −1 when EFI < 0 (bearish). |
| Slope | Numeric | On select | Rate of change of the Force Index. |
Elder's Force Index node — default state
How to read it
- EFI > 0: Buyers have been stronger over the lookback — bullish conviction.
- EFI < 0: Sellers have been stronger — bearish conviction.
- EFI crossing zero: Net force has flipped — confirmation of momentum direction change.
- EFI rising while positive: Buying force intensifying.
- EFI falling toward zero while positive: Buying force fading — early warning.
- EFI making new extremes: Genuinely unusual conviction in one direction.
Like other cumulative-style volume indicators, EFI's direction and slope matter more than its absolute value. The Direction output handles this with a binary flag.
EFI's strength is its three-way integration — price change × volume, smoothed over time. Where OBV captures pure volume and pure momentum oscillators capture pure price, EFI captures both at once. Use it when you want a single output that confirms both directional and participatory conviction.
Best in / worst in
Best in instruments with clear directional moves and meaningful volume — equity indices, large-cap stocks, major futures during RTH. The combination of price change and volume gives EFI a richer reading than either input alone.
Worst in flat sideways markets (EFI oscillates noisily around zero without producing useful signals) and on low-volume instruments where the volume input is dominated by individual trader behavior rather than institutional flow.
Three confirmation patterns
1. Trend confirmation via Direction
Use EFI Direction as a binary regime flag.
- Long-only mode: EFI Direction = 1 (positive force) — price strategies allowed to take longs only.
- Short-only mode: EFI Direction = −1.
Simpler than the smoothed-value comparison; works as a no-tuning regime gate.
EFI Direction as a regime gate
2. Breakout confirmation
Filter price breakouts by force confirmation.
- Valid upside breakout: Price closes above a 20-bar high AND EFI > 0 AND EFI slope > 0 (force accelerating).
- Valid downside breakout: Symmetric.
- Failed/suspect breakout: Price breaks but EFI is weak or falling → skip.
The slope-positive requirement is what separates this from "force was already there" — it ensures conviction is accelerating into the breakout, not exhausting.
3. Divergence detection
The classic EFI use case for reversal warnings.
- Bullish divergence: Price makes new 10-bar low but EFI doesn't (EFI's low this period is higher than its low 10 bars ago).
- Bearish divergence: Symmetric for highs.
Combine with a regime check (KAMA ER < 0.3) to filter for range conditions where divergence reversals work.
Advanced patterns in AlgoLift
Short-period EFI (Elder's "Bull Power / Bear Power" style). Run EFI at period 2 alongside the standard EFI(13). Use EFI(2) as a fast trigger and EFI(13) as the regime gate. Two-EFI confluence eliminates many false signals.
EFI as a scale-out timer. In a long position, when EFI starts falling sharply while still positive (slope deeply negative but Direction = 1), take partial profits via Set Target Profit on a fractional position. Often catches the moment buying force exhausts before price actually reverses.
Raw Force for spike detection. The Raw Force output is highly volatile — useful for detecting outlier bars. Set a Set User Variable flag when |Raw Force| > some threshold for "unusual single-bar event" awareness — handle news spikes differently.
Multi-timeframe EFI agreement. Add a daily series alongside intraday execution. Require daily EFI direction to agree with intraday signal direction. Eliminates intraday trades against macro force.
Common mistakes
- Reading absolute EFI values across instruments. EFI's scale depends on the instrument's price and volume magnitudes. EFI = 500,000 on AAPL and EFI = 500,000 on MES mean completely different things. Compare relative to each instrument's own history, not across instruments. (Use CMF for cross-instrument comparison instead.)
- Trading off Raw Force readings. Raw Force is too noisy for primary signal use. Stick with the smoothed Force Index unless you've validated a specific high-noise pattern.
- Using EFI without a price-based primary signal. EFI confirms; it rarely triggers. Without a price-based trigger to confirm, EFI doesn't produce edges.
- Ignoring the slope. Slope flips often precede Direction flips by 1-3 bars. Strategies that only read Direction miss the early signal.