Money Flow Index: An Improved RSI?

Oct 18, 2021

The Money Flow Index (MFI) is another momentum oscillator that MT4 provides by default. With a similar calculation as the RSI, can it offer the same level of performance?

This post will cover:

  • MFI calculations
  • How to use the MFI
  • Trend following using the MFI
  • Tweaking overbought/oversold levels

The Money Flow Index (MFI) is a lesser-known relative of the RSI that incorporates the use of both price and volume.

I’ve previously discussed how tick volume can be used to improve signal reliability. Can the use of volume help the MFI outperform other momentum indicators?

Here I’ll build a trend following strategy using both the MFI and RSI, and see how they stack up.

But first, let’s discuss how the MFI is calculated.

Money Flow Index Calculations

The MFI can be found under the Volumes section of MT4’s indicator list.

Like the Keltner Channels, the MFI uses typical price instead of closing price. A 14-period lookback is used by default.

In step 3, money flow is positive when typical price increases from one period to the next, and negative when typical price decreases. Money flow is zero when typical price is unchanged.

The familiar RSI formula is applied in step 4. Since volume is included, the MFI is sometimes called the volume-weighted RSI.

How to Use the Money Flow Index

The MFI can be used in a similar fashion to other momentum oscillators. Here are two common ways:

1. Detect Momentum Divergences

A momentum divergence occurs when price and MFI move in opposite directions. Since momentum often leads price, a divergence may indicate an upcoming market reversal.

For example, a bullish divergence occurs when prices set lower lows, while the MFI sets higher lows. This could indicate an upcoming bullish reversal.

In a bearish divergence, prices set higher highs, while the MFI sets lower highs.

2. Detect Overbought/Oversold Conditions

MFI values above 80 denote overbought conditions, while values below 20 denote oversold conditions.

The 80/20 threshold is more conservative than the usual 70/30 threshold used for the RSI.

This is because the MFI is generally more reactive than the RSI. A visual comparison of both indicators is shown below:

Notice that the MFI has more pronounced peaks and valleys.

The MFI crossing above 20 is an indication that the market is exiting oversold conditions, and is a good opportunity to go long.

Likewise, if you’re looking to go short, wait for the MFI to cross below 80.

Trend Following Using the Money Flow Index

For the remainder of this post, I’ll backtest a trend following strategy that uses the MFI to detect overbought/oversold conditions.

The idea behind the strategy is to maximize value by jumping onboard the trend after a pullback has occurred.

Long entry conditions are:

  1. Prices are above the 100-period SMA
  2. MFI crosses above 20

This could mean that the pullback is over and the uptrend is resuming.

Price confirmation will be achieved using a stop entry at the previous high.

Here’s how a long trade looks:

AlgoWizard was used to program the logic.

To see how the MFI stacks up against the RSI, I’ll also backtest a similar strategy that uses a RSI in place of the MFI.

To establish a baseline, I’ll backtest the RSI strategy first. The 30-minute GBPUSD will be tested from 2003-2021.

The 1.46 profit factor and expectancy of about 17 pips is quite decent.

I’m surprised there are only 122 trades though. Apparently it is uncommon for the RSI to be oversold while having price remain above the 100-period SMA.

Can the MFI strategy beat this baseline? Here’s the MFI backtest:

The answer is a resounding no!

Poor profitability aside, what strikes me is the increased trading frequency of the MFI strategy. It had almost 4x the number of trades over the same period.

This is probably a consequence of the MFI being more reactive than the RSI. Its 80/20 levels may be too relaxed for detecting overbought and oversold conditions.

So far it seems like the MFI can’t hold a candle to the traditional RSI. But some may argue that a fair comparison can only be made if both strategies produce the same number of trades.

Can we ‘normalize’ the MFI strategy to fit the RSI strategy?

Tweaking the Money Flow Index’s Overbought & Oversold Levels

To equalize the trading frequency, I’ll need to make the MFI entry conditions more stringent. Perhaps the MFI will perform better with the overbought/oversold levels set to 85/15? Or maybe even 90/10?

I’ll extend the MFI’s overbought and oversold levels until it produces a similar number of trades as the RSI strategy.

The 86/14 levels produced the closest trading frequency to the RSI baseline. The strategy wasn’t even profitable though.

It seems the 82/18 levels produce the best performance. Here’s the improved equity curve:

Not much of an improvement if you ask me; the long stagnations are still present.

For this trend following strategy, it seems that the RSI is the better choice for detecting overbought/oversold conditions.

Of course, this doesn’t mean that the MFI can’t be useful. Perhaps you’ll get better results if you tweak its lookback period (the default 14-period lookback was used above), or use it to detect momentum divergences instead.

Wrapping Up

The MFI is another momentum oscillator that MT4 provides by default. Unlike the RSI, it incorporates the use of volume in its calculations.

Traders often use it to detect momentum divergences and overbought/oversold conditions.

When used for pullback detection in a GBPUSD trend following strategy, the MFI can’t seem to match the RSI’s performance, even after more stringent overbought/oversold levels are used.

Have you found a profitable way to use the MFI? Should I have done something differently above?

Let me know in the comments!

Powered By

Development Platform

Forex VPS

FXVM Forex VPS

Popular Posts

Laguerre RSI Trend Following Strategy

The Laguerre RSI attempts to improve the responsiveness of the regular RSI, whilst keeping whipsaw trades to a minimum. Let’s see how well it detects short-term pullbacks for a trend following strategy!

read more

What is Fixed Ratio Money Management?

Have you heard of fixed ratio money management? How does it compare to the popular fixed fractional approach? Here I’ll explain how fixed ratio works, and see how it stacks up against fixed fractional money management.

read more

Build a Diversified Portfolio With QuantAnalyzer

The ability to efficiently trade a diversified portfolio of strategies is one of the biggest advantages of algorithmic trading. Here we will use QuantAnalyzer’s Portfolio Master to build a portfolio consisting of high performing, uncorrelated strategies.

read more

What Is the QQE Indicator?

The QQE is a mysterious indicator that sometimes pops up in trading forums. Does it deserve a place alongside the more traditional momentum indicators like the RSI and CCI? Let’s add it to a trend following strategy to find out!

read more

Make your money work for you!

Get promotions, trading ideas and strategy development tips delivered to your inbox!

Comments

5 Comments

  1. Gray Fox

    Good post, always happy to see someone talk about mfi and not only rsi. This aside, you missed something in your point : if the mfi is more reactive, you must use a length of 17 or 18. Another (better?) way to work with it is to smoothing it. Coding an exponential moving average (1 to 5 no more) with the mfi in source. Your signal will be really more accurate.

    Reply
    • Wayne

      Those are great ideas for improvement, I’ll be sure to give them a shot. The CCI is another (underrated) indicator that really benefits from smoothing.

      Reply
  2. Master Pip

    Period 7 gives the best results with sharper peaks. Picks up divergence way better than RSI

    Reply
  3. Mike

    Since the forex market is decentralized, I wonder if the Money Flow Index is legit.

    Reply
    • Wayne

      should be legit for your broker.

      Reply

Submit a Comment

Your email address will not be published. Required fields are marked *

Trading Strategies

What’s the Best Time to Trade Forex?

What’s the Best Time to Trade Forex?

The forex markets are open 24/5, but not all hours are created equal. Here I dissect my broker data to determine the best time to trade forex.

Forex Weekend Gaps: Can You Exploit Them?

Forex Weekend Gaps: Can You Exploit Them?

Have you noticed that forex weekend gaps usually reverse within 3 days? Here I’ll program a mean reversion strategy to exploit gaps over the last 18 years!

Automated Bollinger Bands Squeeze Forex Strategy

Automated Bollinger Bands Squeeze Forex Strategy

StrategyQuant’s BBWR indicator is the perfect tool to detect a Bollinger Bands squeeze. Here I explain how it’s calculated, and use it to program a breakout strategy for the AUDJPY!

Should You Use the Kelly Criterion for Forex Trading?

Should You Use the Kelly Criterion for Forex Trading?

The Kelly criterion is a famous mathematical formula that attempts to maximize your long-term capital growth. In this post, I’ll apply it to a EURUSD breakout strategy and explain some of its potential shortcomings when applied to forex trading.

Can a Trading Pause Improve Your Trend Following Results?

Can a Trading Pause Improve Your Trend Following Results?

A temporary trading pause can improve your win rate if you’re trend following a volatile market. Here I’ll program a trading pause into a simple breakout strategy, and test its effectiveness on the Widow Maker – the GBPJPY.

Laguerre RSI Trend Following Strategy

Laguerre RSI Trend Following Strategy

The Laguerre RSI attempts to improve the responsiveness of the regular RSI, whilst keeping whipsaw trades to a minimum. Let’s see how well it detects short-term pullbacks for a trend following strategy!

How to Use the Supertrend Indicator

How to Use the Supertrend Indicator

Despite its cool name, the Supertrend indicator often seems to slip under the radar. Here I explain how it’s calculated, and combine it with moving averages to produce a simple trend following strategy.

Ichimoku Trend Following Strategy

Ichimoku Trend Following Strategy

Like candlesticks, the Ichimoku indicator is a fine Japanese creation. Here I’ll explain how the Ichimoku is plotted, and use it to build a trend following strategy for the USDJPY.

Strategy Development

Do You Know Your System Quality Number?

Do You Know Your System Quality Number?

The System Quality Number measures the profitability & consistency of your trading system. Here’s how to calculate your SQN and use it to improve your trading!

How to Get a Realistic Backtest Spread

How to Get a Realistic Backtest Spread

Your choice of backtest spread can certainly make or break a strategy. This post will show you how to study the intraday spread variations of your market, and suggest several ways to avoid paying ridiculous spreads.

Do You Know Your Strategy’s Optimization Profile?

Do You Know Your Strategy’s Optimization Profile?

Your strategy’s optimization profile often reveals its robustness, helping you select strategies that will remain profitable in live trading. Here I explain why an optimization profile is important, and how you can easily obtain one using StrategyQuant’s optimizer.

Which MT4 Backtest Report Metrics Should You Use?

Which MT4 Backtest Report Metrics Should You Use?

Understanding your backtest report is an essential part of being a successful strategy developer. Here I explain what the numbers mean, and how you can make use of each metric during strategy development.

Out-of-sample Testing Using Monte Carlo Simulations

Out-of-sample Testing Using Monte Carlo Simulations

Traders often use Monte Carlo simulations to estimate worst-case drawdowns, but did you know they can be used for out-of-sample testing too? This post demonstrates the use of StrategyQuant’s Monte Carlo simulator to randomize historical prices and strategy parameters, helping you select robust strategies for live trading.

How Many Trades Should Your Backtest Have?

How Many Trades Should Your Backtest Have?

We all want a large sample of trades in our backtests, but practical limitations such as data availability often get in the way. Here I’ll explain why 30 trades is insufficient, and how you can use standard error to quantify the uncertainty arising from a small sample size.

Build a Diversified Portfolio With QuantAnalyzer

Build a Diversified Portfolio With QuantAnalyzer

The ability to efficiently trade a diversified portfolio of strategies is one of the biggest advantages of algorithmic trading. Here we will use QuantAnalyzer’s Portfolio Master to build a portfolio consisting of high performing, uncorrelated strategies.

Strategy Optimization Using MT4

Strategy Optimization Using MT4

How do you improve your trading strategy in MT4? This post will show you how to optimize the entry and exit parameters for a moving average crossover strategy. Finally, an intraday time filter will be added to help avoid false breakouts.

Debugging & Backtesting Using MT4

Debugging & Backtesting Using MT4

With a fresh algorithm at your fingertips, how do you verify that it has been programmed correctly? This guide will show you how to use Metatrader 4’s visual backtester to debug and backtest your strategy.

Create Your Trading Algorithm in 15 Minutes (FREE)

Create Your Trading Algorithm in 15 Minutes (FREE)

Converting your trading idea into an algorithm is the first step towards reaping the benefits of automated trading. This guide will cover the creation of a simple moving average crossover algorithm, without any actual programming.

What Is Drawdown in Trading?

What Is Drawdown in Trading?

Are you getting a comprehensive assessment of your strategy’s downside? This post will discuss several methods to measure drawdowns, helping you build and select strategies that better suit your risk appetite.

Live Trading

What’s the Best Time to Trade Forex?

What’s the Best Time to Trade Forex?

The forex markets are open 24/5, but not all hours are created equal. Here I dissect my broker data to determine the best time to trade forex.

How to Find a Real Trading Guru

How to Find a Real Trading Guru

Every day I come across a trading guru offering educational content on the internet. Many of them speak of huge returns with minimal effort. Should these be trusted? Here’s some tips on how to separate the wheat from the chaff.

How to Enjoy Stress-Free Trading

How to Enjoy Stress-Free Trading

Trading is a great way to make some additional income, but not if you’re constantly pulling your hair out. Here I offer 7 tips to help make your trading profitable and stress-free.

How to Select the Best Forex VPS

How to Select the Best Forex VPS

A virtual private server (VPS) is a virtual computer that you can rent and access remotely. It provides a reliable platform on which to execute your forex strategies. This post will help you decide whether you need a VPS, and show you how to select an optimal VPS.

Make your money work for you!

Make your money work for you!

 

Get trading ideas and strategy development tips delivered to your inbox!

Thanks for subscribing!

Pin It on Pinterest

Share This