What is CMF?
Chaikin Money Flow looks at where each bar closed within its own range. A close near the high counts the bar's volume as buying, a close near the low as selling, and a close in the middle as neither. Over a window of 20 bars it adds up that weighted volume and divides by the total volume, giving a line around a dashed zero line in its own pane.
CMF shows whether recent volume has leaned towards accumulation or distribution. It cannot leave the range of -1 to +1, it does not look at moves from one bar to the next, and it does not predict price.
How to use CMF
- Above or below zero. Above zero, closes have tended to sit in the upper half of the bars' ranges on the volume traded, which is read as accumulation. Below zero, distribution.
- Distance from zero. The further from zero, the more one-sided the window's volume has been. Readings near zero mean the flow was balanced.
- Persistence. CMF staying on one side of zero through a trend is read as volume backing the move. Repeated flips across zero show indecision.
- Divergence. Price making new highs while CMF weakens or turns negative suggests the move is not being backed by closes near the highs.
These are ways to read the line, not entry signals on their own.
Settings
| Setting | Default | What it changes |
|---|---|---|
| Length | 20 | Bars in the window. Lower reacts sooner and crosses zero more often; higher is steadier. Minimum 1. |
Adjust the window length in the indicator settings.
Calculation
Each bar's volume is weighted by where it closed between its low and its high, then summed over the window and divided by the window's total volume:
weight = (2 * close - low - high) / (high - low)
(0 when high = low)
money flow volume = weight * volume
CMF = sum(money flow volume, 20) / sum(volume, 20)
The weight is +1 for a close on the high, -1 for a close on the low and 0 for a close exactly in the middle. A bar with no range has a weight of 0, but its volume still counts in the total, so flat bars pull the reading towards zero.
The first value appears once 20 bars have loaded. A dashed zero line is drawn for reference. If the market reports no volume at all, the indicator shows the error No volume is provided by the data vendor instead of a line.
Limitations
- It ignores gaps between bars. A bar that gaps far higher and then closes near its low reads as selling, even though price rose overall.
- The window edge matters. A heavy bar affects the reading for exactly 20 bars and then drops out at once, which can move the line with no new trading behind it.
- Volume quality varies between exchanges. CMF is only as good as the volume the exchange reports for that market.
- The live candle moves. The current bar's close within its range changes until it closes, and the reading with it.
- It is not a strategy. On its own it carries no risk management, sizing or exit.
Frequently asked questions
Chaikin Money Flow is the sum of each bar's volume weighted by where it closed in its range, divided by the total volume, over a window of bars. It reads between -1 and +1, above zero for accumulation and below zero for distribution.
Above zero, the window's volume has mostly come with closes in the upper half of the bars' ranges; below zero, the lower half. The further from zero, the more one-sided the flow. Traders look at whether it stays on the side of the trend and at divergences with price.
Yes. The indicator declares one input: Length, default 20 with a minimum of 1. Open the indicator's settings on the chart to change it.
No. Each value is calculated from the bars in its own window, and closed bars are not revised. The current bar's value moves while that candle is live and settles when it closes.
CMF needs volume. If the exchange or market reports no volume at all across the loaded history, the indicator shows the error No volume is provided by the data vendor rather than a misleading flat line.
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 Chaikin Money Flow already applied. On any other market, open the indicator picker on the chart and choose Chaikin Money Flow from the Volume group.