Advanced Chaikin Money Flow (CMF)

TL;DR: change the aggregation to EMA to achieve similar results to Twiggs Money Flow . Play with the rest of parameters to get the desired results.

This script allows customization of CMF . It also includes all the improvements made by Twiggs Money flow .

Regular CMF does not take price gaps into account as you can see in the chart below. True range fixes this issue, as done in Twiggs Money flow ( TMF ).

More info here:

Customization Options:
- You can change the effect of volume by setting volume exponent . 0 to 10 reduces the effect and 10+ increases it. In exchanges with too much wash trading, you may want to reduce volume effect.
- You can factor in price in CMF . It gives you a slightly different results. See my Volume x price (VxP) indicator for why it might be useful.
- The range can be changed to percentage (similar to RSI )

PS: I do not recommend using CMF in today's Crypto markets. Chaikin uses the same multiplier in CMF and Accumulation/Distribution Line (ADL). ADL is a totally broken indicator for BTC . If you look at the period after ATH (chart below), you will notice that ADL keeps increasing implying accumulation. While it is clear that there was distribution going on. The reason might be the artificially inflated prices in Crypto that is achieved by the help of bots and having "certain" exchanges as a price reference. So, my reasoning is that if ADL is a broken indicator, so should be CMF . CMF diverges from BTC price frequently. This is a double edged sword IMO. Still CMF is a much better indicator than ADL because it works relative to prior periods which covers some of its flaws.

Note for super nerds: Twiggs Money Flow includes true range and Welles Wilder's Moving Average (WWMA). I have seen some other scripts using their own calculations for WWMA which is not efficient. WWMA is equal to built-in RMA/ SMMA which is equal to EMA with length 2x-1.
Release Notes: TV pine upgrade f...ed up the scrip and I had to fix it
Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in a publication is governed by House Rules. You can favorite it to use it on a chart.

Want to use this script on a chart?


Brilliant work!
+1 Reply
cI8DH Craig_Claussen
@Craig_Claussen, thanks mate. I suggest not using CMF for money flow. My ADP indicator works better. Chaikin multiplier is flawed.
+1 Reply
@cI8DH, I'll check it out.

Hi, the multiplier assumes that the closing price will take into account the time spent above or below the close, and so the money flow, which in case of spikes, is wrong... going to the lower TF, while keeping the closing price from the main TF could help ? Some traders like David Paul reject all volume indicators, i find it very hard to deal with. Also the idea to use unusual TF like 45 mn is interesting, to avoid cyclical noise.
cI8DH RichardParker
@RichardParker, just forget CMF. among famous ones, MFI is fairly good. else use my ADP or the feature rick version of it Ultimate Money Flow. David's claim has some truth to it. interpreting volume is not so easy. u need to combine it with Wyckoff to get better results. Wash trading makes volume indicators even more problematic. still, u can get some insight into what is going on in the market in terms of accumulation and distribution. Best is to use combined tickers to see the combined volume of multiple exchanges.
+1 Reply
@cI8DH, Hi, thanks for explanations, just a though -, the problem with CMF, imho, is that sometimes heavy preponderated datas are falling out of the spot. The data series is not preponderated equally. So the advancing window is creating echoes, on heavy items, one length after... the length should be adjusted to volatility maybe. All the best,
RichardParker RichardParker
@RichardParker, Your EMA implementation is a nice idea.
Good day cl8DH. Checked the indicator and noticed it might be affected by repainting. I wrote down values and made screenshots.

You might want to check it out. Thanks for your work nonetheless
Thank you for sharing.
Ok, but in version 3, by default nothing appears...
Home Stock Screener Forex Screener Crypto Screener Economic Calendar How It Works Chart Features Pricing Refer a friend House Rules Help Center Website & Broker Solutions Widgets Charting Solutions Lightweight Charting Library Blog & News Twitter
Profile Profile Settings Account and Billing Referred friends Coins My Support Tickets Help Center Private Messages Chat Sign Out