Charts See the terminal

Ease of Movement (EOM)

How far the middle of each bar moved for the volume it took, smoothed, so you can see whether price is moving easily or being worked hard.

Live EOM preview · BTC/USDT · Binance

What is EOM?

Ease of Movement compares how far the midpoint of a bar moved with how much volume and range it took to get there. A large positive reading means price rose a long way on light volume, so it moved easily. A large negative reading means it fell easily. Heavy volume for the same move pulls the reading towards zero, whichever way price went. The values are averaged over 14 bars and drawn in their own pane around a dashed zero line.

EOM describes how much effort, in volume, the recent moves needed. It does not say whether a move will continue, and its scale depends on the market's volume units, so the number is only meaningful against itself.

How to use EOM

  • Above or below zero. Above zero, the midpoint has been rising on average; below zero, falling.
  • Distance from zero. Readings far from zero mean price moved a long way relative to its volume. Readings that hug zero mean volume was heavy relative to the move, or price barely moved.
  • Crossing zero. A cross from below to above means the averaged midpoint move has turned up. It confirms a change after the fact rather than anticipating it.
  • Compare with itself. Because the scale depends on the market's volume, compare EOM with its own recent range on the same market and timeframe, not with another market.

These are ways to read the line, not entry signals on their own.

Settings

SettingDefaultWhat it changes
Length14 Bars in the simple average. Lower reacts sooner and is noisier; higher is smoother and later. Minimum 1.
Divisor10000 A scaling factor only. It lifts a very small ratio into readable numbers and does not change the shape of the line or where it crosses zero. Raise or lower it if the values are awkwardly large or small for the market. Minimum 1.

Adjust the length and divisor in the indicator settings.

Calculation

Each bar, the change in the bar's midpoint (hl2, the average of high and low) is scaled by the bar's range and divided by its volume, then averaged:

midpoint move = hl2 - previous hl2
raw = 10000 * midpoint move * (high - low) / volume
EOM = simple average of raw over 14 bars

The first bar has no previous midpoint, so it has no raw value. The 14-bar average needs 14 raw values, so the first reading appears on the fifteenth bar of loaded history.

A bar with zero volume divides by zero and produces an extreme value that the average then carries for 14 bars. That is left as it is: it says something about the data feed, not about the market.

Limitations

  • The scale is arbitrary. The value depends on the market's volume units and on the Divisor, so a reading of 50 on one market means nothing compared with 50 on another.
  • Zero-volume bars distort it. On a market that reports empty bars, the line spikes and stays distorted until that bar leaves the 14-bar window.
  • It lags. The simple average reacts to a change only as new bars replace old ones in the window.
  • Volume quality varies. Crypto volume differs between exchanges and can include wash trading, which changes how easy a move appears.
  • The live candle moves. The current bar's midpoint, range and volume change until it closes, so the latest value moves too.

Frequently asked questions

Ease of Movement is an oscillator that relates how far a bar's midpoint moved to the volume it took, scaled by the bar's range and averaged over a number of bars. Positive values mean price has been rising with relatively little volume, negative values mean it has been falling with relatively little volume.

Read which side of zero it is on and how far away. Far above zero means the midpoint has been rising easily; far below means it has been falling easily; close to zero means price moved little relative to the volume traded. Compare readings only with the same market and timeframe.

Yes. The indicator declares two inputs: Length, default 14 with a minimum of 1, which sets the bars in the average, and Divisor, default 10000 with a minimum of 1, which only rescales the values. Open the indicator's settings on the chart to change them.

It multiplies every raw value by the same number. Range divided by volume is usually a tiny number, and the Divisor brings it into readable digits. It does not move the zero crossings or change the shape of the line.

No. Closed bars are not revised. The current bar's value moves while that bar is live and settles when it closes.

Use the Add to chart button at the top of this page. It opens BTC/USDT on Binance in the Altrady Charts terminal with the built-in Ease Of Movement already applied. On any other market, open the indicator picker on the chart and choose Ease Of Movement from the Volume group.

Add to chart