Discussion of article "Introduction to the Empirical Mode Decomposition Method"

 

New article Introduction to the Empirical Mode Decomposition Method is published:

This article serves to familiarize the reader with the empirical mode decomposition (EMD) method. It is the fundamental part of the Hilbert–Huang transform and is intended for analyzing data from nonstationary and nonlinear processes. This article also features a possible software implementation of this method along with a brief consideration of its peculiarities and gives some simple examples of its use.

Empirical Mode Decomposition MQL5

Author: Victor

 

This is one of those good and useful articles. Thank you so much, i was so blinded that my only way of analysis was on direct data stream. This is something that could prove really useful to me along with Heuristic Analysis. I will make my own implementation in the future and try to use the embedded MT5 charting functions instead.

However, i'm running the script with the graphical tool provided, it compiles and displays but data is shown as a square wave pattern only. Is this a normal behaviour?
I tried different symbols at different time periods on different date intervals, also i tried to set the 'n' value to something smaller then larger but attain the same results.

EMD Square Wave Data


 
Actually, this is not a good article. EMD is not a causal technique. This means that its past values change in real time, rendering it utterly and completely useless for trading. It's in the same category as Singular Spectrum Analysis, the Hodrick-Prescott filter and all types of splines. It looks o so good on a static chart, but in real time it is no better than a LWMA. Just place a SMA(1) on the result of your EMD line and you will see how bumpy it becomes... Nice from a research/scientific point of view, useless in trading.
 
MisterH:
Actually, this is not a good article. EMD is not a causal technique. This means that its past values change in real time, rendering it utterly and completely useless for trading. It's in the same category as Singular Spectrum Analysis, the Hodrick-Prescott filter and all types of splines. It looks o so good on a static chart, but in real time it is no better than a LWMA. Just place a SMA(1) on the result of your EMD line and you will see how bumpy it becomes... Nice from a research/scientific point of view, useless in trading.
Thanks for your feedback, it seems that it has been more useful than the article itself. I've been studing what you said and although this article has opened my eyes to other types of analysis, if i implement it most probably it will be as you said: BUMPY. Will spend my time on something else and i may use this for research purposes not for trading.
 

1. https://en.wikipedia.org/wiki/Hilbert%E2%80%93Huang_transform

2. And Google picture of Empirical Mode Decomposition. 

3. This probably one of my dumb comment of so many :). A little bit irony in here. The first thing to do, before calculating EMD, is to find the maxima and minima (see below). If we could do that already, then we're already make money. Finding maxima/minima is what we do around here. 

The wikipedia also mention (under limitation) that "Datig and Schlurmann [2004] did the most comprehensive studies on the performance and limitations of HHT with particular applications to irregular waves. ... The authors discussed using additional points, both forward and backward, to determine better envelopes.".  

4. Filtering out noises - that's what this all about. 

 

Hilbert–Huang transform - Wikipedia, the free encyclopedia
  • en.wikipedia.org
The Hilbert–Huang transform (HHT) is a way to decompose a signal into so-called intrinsic mode functions (IMF), and obtain instantaneous frequency data. It is designed to work well for data that is nonstationary and nonlinear. In contrast to other common transforms like the Fourier transform, the HHT is more like an algorithm (an empirical...
 

This is supposed to be an aternative and better method :Hilbert Vibration Decomposing  http://hitech.technion.ac.il/feldman/hvd.html  Maybe author or somebody with electronic engineering background write a new article.

 

 
MisterH:
Actually, this is not a good article. EMD is not a causal technique. This means that its past values change in real time, rendering it utterly and completely useless for trading. It's in the same category as Singular Spectrum Analysis, the Hodrick-Prescott filter and all types of splines. It looks o so good on a static chart, but in real time it is no better than a LWMA. Just place a SMA(1) on the result of your EMD line and you will see how bumpy it becomes... Nice from a research/scientific point of view, useless in trading.
If you are trying to use EMD (or probably any other analytical technique) as some sort of simple predictive price filter based on historical price data then I would agree it is pretty useless but I would not be quite so quick to totally dismiss the technique outright. There are various other ways in which decomposing non stationary data into component wave forms can  be useful and informative. In my experience EMD does a pretty good job of this
 

Hey everyone,

i am struggling to form a logical path to implement the EMD technique together with SVM-regressions. Most papers i read about (E)EMD-SVM (e.g. "Short-term prediction of stock index based on EMD and SVMs") decompose the complete time series first before implementing the SVM learning path.

But i noticed that if i add one additional dataset (t+1) to the time series, the EMD algorithm changes almost every single IMF value (even the number of IMF can change too (for the same date in the past)) than it was before.

Therefore, i am concerned that if i split my data set into a learning period (e.g. 2002-2010) and want to make out-of-sample forecasts (e.g. 2011) my EMD decomposed IMFs should only contain data from 2002-2010 to predict 2011, right? Predcting 2011 with IMF-time-series calculated with the EMD data set (2002-2011) would incorporate information from the "future" making my backtesting results not valid, right?

So for every one-step forward prediction my EMD must be calculated with the additional data points ... then the SVM-regressions can be performed to backtest such a model, right? This recursive method could be "BUMPY" as the MisterH mentioned above, making it useless for backtesting/trading strategy?