Forex Blog

First-hand Forex trading experience and information about foreign exchange market that will be useful to traders


Using Hurst Exponent in Forex Trading

April 25, 2013 by

I have recently read about Hurst exponent (coefficient) in one research paper. It was only briefly mentioned there, but it caught my attention as a measure of market predictability that could be calculated using the commonly available chart data. It occurred to me that such a measure could be used as a handy indicator to back up other indicators and signals. But can it be really used in Forex trading?

What Is It?

In general, Hurst exponent (usually denoted as H) describes the persistence or its lack in the price change behavior. The value of this exponent can be between 0 and 1. If 0 < H < 0.5 for some timeseries, it means that these timeseries are anti-persistent — i.e. movement in one direction is likely to be followed by a movement in the opposite direction. If 0.5 < H < 1, the timeseries are persistent and the next movement's direction is likely to repeat the previous movement's direction. If H = 0.5 or is very close to it, the timeseries will demonstrate a purely random (Brownian) motion. That is in the ideal world, of course.

Originally, the Hurst exponent was used by Harold Edwin Hurst to predict the Nile floods's levels (you can read more about it in the Wikipedia article.) For me, the main interest of H is in its alleged ability to show persistence of trends.

Trading Plan

In theory, knowing the current H for a given currency pair, we could buy after bullish candles and sell after bearish ones if H is significantly greater than 0.5. Of course, we could also buy after bearish candles and sell after bullish ones, hoping for a reversal, if H is significantly below 0.5. Seems plausible, doesn't it?

To follow this plan we would have to go through these steps:

  1. Calculate the current Hurst exponent (H).
  2. Compare it to 0.5.
  3. Look at the previous candlestick's direction or measure the current trend with moving averages.
  4. Trade in the appropriate direction depending on the values derived from the previous steps.

Hurst Exponent Calculation

Unfortunately, we would fail at the first step, because Hurst exponent cannot be precisely calculated. You can only estimate this coefficient. One of the simple ways to do so is to use rescaled range method. I will not describe it here in detail because it is already described so well by Pietro Ponzo. You will find step-by-step explanations of the whole calculation process there. You can even download a working Excel spreadsheet for calculating Hurst exponent on stock market charts simply by entering a stock ticker in a cell.

I will just mention here that H estimation is a slope of a linear regression drawn over several dots (the more the better) derived from logarithms (any base) of R/S statistic and respective number of data points (N). R/S statistic is calculated as Range divided by standard deviation. Range is calculated as a difference between maximum and minimum of the sums of deviations of price from the mean price across all N data points.

It surely can be done in MetaTrader as the math is rather simple. Of course, the higher N the more CPU overhead. Though it may sound like a lot of calculations, the process can be optimized to avoid recalculation of the known values and their parts. As of now, there are several paid versions of Hurst coefficient indicator for MetaTrader 4 and some free ones. Hurst Difference claims to calculate the difference of Hurst exponent compared to the previous bar, though, from looking at its source code, I wonder if it really does that... Variation Index offers a substitute for Hurst exponent in a form of an index derived from fractal characteristics of the chart. It is unknown how close it is to the original Hurst exponent as the calculation process is totally different, but the author of the indicator claim that it is better because it uses less bars (thus less old bars) and shows more recent values. It is also available for MetaTrader 5.

A lot more explanation and code examples for the process of H estimation can be found at Ian Kaplan's website. However, the source codes are for C++.

Will It Work?

That all sounds nice but will it work? Unfortunately, after some thought process and reading, and some more reading, I came to a conclusion that the concept is interesting but at the same time is nearly useless in Forex trading.

It requires a very large number of bars to work, with 1000 usually mentioned as a necessary minimum. Estimating the Hurst exponent on the latest 1000 bars would give us a value that may no longer be current. The real value of Hurst exponent is constantly shifting, getting its estimate over the last N bars gives us a good notion about how things were going within that period, but it has little information for the future bars. Too bad, we can only trade future bars and not the old ones.

One could object that H can be calculated on a lower timeframe (for example, hourly) and then used on a higher one (for example, weekly). It would solve the old/new bars problem but would not help us at all as the Hurst exponent is completely different on different timeframes. For example, it can be estimated as below 0.3 on H1 chart and be higher than 0.8 on W1 chart at the same time.

Using it as a comparative factor when choosing a currency pair to trade for a particular strategy hits the same obstacle. Let us assume that you have a good long-term trend-following strategy. Ideally, you would want a currency pair with as high H as possible. You estimate Hurst exponent for 12 currency pairs over last 5 years and get some values. You find that NZD/USD has the highest H at 0.65 (for example). Unfortunately, it does not mean that using that strategy on NZD/USD during the next 5 years would bring better results than using it on other currency pairs, with smaller H.

Is It Completely Useless?

Considering Hurst exponent's inability to produce a good forecasting tool, you might decide that it cannot be used at all. Actually, it is not so. Hurst exponent estimation is a viable tool for analyzing the past. Looking at a correctly estimated H value can answer the following question: was the market persistent or was it anti-persistent? In its turn, that would help you analyze performance of your trading strategy or expert advisor during that particular period. For example, if you were using a trend reversal system for a month and it performed poorly but H estimated for that period turned out to be high above 0.5 level, you would know that it was a rather bad time for your strategy, not that the strategy itself is defective.

PS: Actually, this post might not be too interesting to an average Forex trader, but I have written it mostly for myself. For when I stumble upon the concept of Hurst exponent in a year or two, I will not forget that I have already tried using it. It will serve me as a reminder.

If you have any questions or ideas about applying the Hurst exponent in currency trading, please submit them using the commentary form below.

3 Responses to “Using Hurst Exponent in Forex Trading”

  1. Sebastian

    Hi, I wonder about your comments. I have been working with Hurst and FDI indicators on metatrader and they calculate the Hurst exponent using a minimum range of 10 bars. It is interesting to use it with the Kaufmann efficiency ratio to double cross the concept. I also have seen some papers, where the FDI (Fractal Dimension Index 1<FDI<2 a variation of the Hurst) helps to "read" the Forex Behaviour better. Why don't you do a little research just to confirm your conclusions; because I rather believe is a very good indicator, when used with other oscillators to understand the market behaviour. Take a look, or write me if you have more info.
    Best regards.


    admin Reply:

    Calculating Hurst exponent on small ranges (like 10) does not make sense as the R/s = k*nH equation does not hold with low n.

    Sorry, cannot comment on FDI as I have not looked into it. Which indicator do you use for its calculation?


  2. Sebastian

    Hi, take a look to this blog where I found interesting info as MT4 code,

    If you look for FDI in google (in the MT4 community) you will find also the FDI code.

    Now, once you start to “read” with different ranges (10, 24, 48, 55, 72, 89 lags) you will find that it gives some info about the prices – when they are trending or when they are random.

    Now, such insight used with %Williams, or MACD, might give you “possible” entry “points”.

    Hope it helps,


Leave a Reply

required (will not be published)