CyCycle Analytics for Traders will allow traders to think of their indicators and trading strategies in the frequency domain as well as their motions in the time domain. This new viewpoint will enable them to select the most efficient filter lengths for the job at hand. The descriptions are written for understanding at several different levels. Traders with little mathematical background will be able to assess general market conditions to their advantage. More technically advanced traders will be able to create indicators and strategies that automatically adapt to measured market conditions by using combinations of computer code that are described.
Introduction:
This is a technical resource book written for self-directed traders who want to understand the scientific underpinnings of the filters and indicators they use in their trading decisions rather than to use the trading tools on blind faith. There is plenty of theory and years of research behind the unique solutions provided in this book, but the emphasis is on simplicity rather than mathematical purity. In particular, the solutions use a pragmatic approach to attain effective trading results.
The concepts are presented so they can be understood with only a background in algebra. The writing style in the book is intentionally terse so the reader doesn’t need to wade through a mountain of words to find the ideas being presented. EasyLanguage computer code is used to calculate and display the indicators. From my viewpoint, Easy Language is just a dialect of Pascal with key words for trading. Therefore, the code should be nearly as readable as English.
Cycles are unique because they are one of the few characteristics of market data that can be scientifically measured. However, cycle measurement is extremely complex. In the most general sense, there is a triple infinity of parameters–period, phase, and amplitude–that must be identified simultaneously to completely describe the cycles. Additionally, market cycles are ephemeral and are often buried in pure noise. So the compromises begin. One of the first realizations that a trader must make is that cycles cannot be the basis of trades all the time. Sometimes the cycle swings are swamped by trends, and it is folly to try to fight the trend. However, the cyclic swings can be helpful to know when to buy on a dip in the direction of the trend. Traditional indicators such as Stochastics, relative strength index (RSI), moving average convergence/divergence (MACD), and commodity channel index (CCI) are subject to the same constraints, and therefore this book will lead to a greater understanding of all technical indicators.
Contents:
- Unified Filter Theory
- SMAs, EMAs, or Other?
- Smoothing Filters on Steroids
- Decyclers
- Band-Pass Filters
- Market Structure and the Hurst Coefficient
- Spectral Dilation
- Autocorrelation
- Fourier Transforms
- Comb Filter Spectral Estimates
- Adaptive Filters
- The Even Better Sinewave Indicator
- Convolution
- The Hilbert Transformer
- Indicator Transforms
- SwamiCharts
- Swing-Trading Strategies
Cycle Analytics for Traders: Advanced Technical Trading Concepts By John F. Ehlers pdf
Anakin Martinez (verified owner) –
I can understand most readers concern with the theoretical background – as an engineer I have the background (my personal perception was it was easy to read, because I had the topics on my university classes and don’t have to think about it very hard).
On the other hand, to cover all aspects of the background the book would be a 1000+ page monster, not just the 200+
Interested readers should also consider reading other papers, articles and books about digital filters, and than read the book again (I had also some new insights after refreshing some special topics)
Beside of that, there are some intresting concepts inside, maybe nothing very new if you read the older books of John Ehlers before. In that case, this books improve some ideas and give some new techniques.
A little critic is the too often repeated (in the sense that there is every time a whole passage about it) topic of spectral dilation, sometimes without new information and a refer to chapter 7. But again in chapter 9 & 10? Would be easier to repeat in the useful “key-things to remember” OR describe it as “how to avoid … ” in context of the chapter. Maybe it was done by purpose because it is important (I would agree).
Regarding the downloadable software, it is only the EasyLanguage coding, so if you using other statistical- or trading software, be prepared for some hard work of recoding.
The relative high price for only some 200 pages have lead to a only 4 star rating, other than that the book is very good, though.
Chanel Stein (verified owner) –
John Ehlers is a widely respected expert on signal processing, so any book on this subject written by him should be welcomed. And I do indeed welcome this text. I have a strong background and interest in this subject, and I found “Cycle Analytics for Traders” to be a useful blend of theoretical foundation and practical implementations (mostly in TradeStation’s EasyLanguage).
On the other hand, the “for Traders” part of the title implies a certain target audience, and I can’t help but feel that most members of this particular audience will have some serious difficulties when they approach the book. The author makes an organizational choice that is less than ideal: he begins the book by diving directly into the Z-transform approach to filter design, a quite advanced mathematical concept normally taught well into a college-level course on signal processing. Indeed, Page 2 of the book hits the reader with a series of equations fearsome enough to make 99.9 percent of ‘traders’ roll their eyes and slam the book shut in dismay. And it only gets worse from there for an extended stretch. One must wade through graduate-level mathematics all the way to Page 40 before the first small EasyLanguage code sample appears. For those of us who’ve already grappled with this material in college, this is wonderful. He does an excellent job of condensing much of an entire semester of filtering theory into a few dozen tersely worded pages. But for his implied target audience, this approach is worse than worthless… it is so intimidating that few would have the fortitude to press on. Had I been given the opportunity to edit this book, I would have banished this material to an appendix, and instead begun with a more gentle introduction to signal processing applications relevant to traders.
The situation does eventually improve when Dr. Ehlers mostly abandons formidable mathematics and instead focuses on an intuitive approach to his chosen topics, accompanied by practical EasyLangauge code. In this regard, I might still criticize the fact that he goes to the opposite extreme and offers little or no theoretical justification for his techniques, nor does he offer examples of actual trading situations in which his techniques produce profits. Terse, rigorous summaries of the sort that filled the first 40 pages of the book would be good to have in an appendix that some of us would read and others could safely ignore. Also, because his title says “for Traders,” some examples of real-life trading payoffs would be better than vague promises that the techniques might be useful. Nonetheless, he has done an excellent job of choosing fascinating and potentially useful techniques. For mathematically unsophisticated readers who are not interested in anything beyond vague intuition and code that they can use to experiment with their own trading systems, most of this book is accessible.
Toward the end of Chapter Three the author does introduce one interesting topic, a low-pass filter of his own invention that he calls a SuperSmoother. Unfortunately, he provides neither rigorous theoretical justification for it, nor does he provide EasyLanguage code to implement it. The reader is left to trust the author’s idea and code it from a few minimally explained equations. Then, in Chapter Four, the author introduces another sort of low-pass filter which he calls a Decycler. EasyLanguage code for this filter is provided, but guidance for choosing between the two types of filter is minimal, a couple short sentences. Chapter Five introduces band-pass filters, though again with extremely complex mathematics. This topic does include EasyLanguage code as well as several illustrations using real market data, a welcome addition to the book. I will not comment further on the first five chapters, as with few exceptions they will be incomprehensible, and hence irrelevant, to the vast majority of readers.
The book begins to become interesting in Chapter Six, when concepts such as the fractal dimension and Hurst Exponent are discussed. EasyLanguage code and some market results are shown. But again, the explanations are for the most part terse and highly technical, with the author assuming that the reader has a strong mathematical background. Most traders will have to be content with picking up a few vague intuitive concepts.
Chapter Seven introduces yet another interesting author invention, the roofing filter. EasyLanguage code is provided, along with several example illustrations with real market data. Unfortunately for most readers, the explanations are highly technical, as in this typical example: “Since the roofing filter consists of the serial connection of a one-pole high-pass filter, a SuperSmoother, and another one-pole high-pass filter, it is clear the better formulation of the roofing filter would be the serial connection of a two-pole high-pass filter and the SuperSmoother.” Yeah. Obviously.
I’m always a sucker for pretty pictures involving data analysis, and Chapters Eight through Ten have these in spades. The author provides (very long and fussy) EasyLanguage code for producing colored plots of autocorrelation, periodograms, spectrograms and comb filter displays of market data. Lovely.
Chapter Eleven is arguably (and the author would likely argue) the first chapter in the book that is truly relevant to traders. It deals with concepts familiar to the trading community and presents techniques that would seem to have obvious utility. In this chapter he applies some of the concepts from earlier parts of the book to (hopefully) improve on several of the traditional workhorse indicators: RSI, Stochastics, and the Commodity Channel Index. As usual in this book, much of the supporting mathematics is terse and advanced, but at least he provides solid intuition and much EasyLanguage code that the reader can copy or download from his website. All that’s missing here is actual trading results comparing the original versions and his improved versions of the indicators. But of course readers should be able to run these tests themselves.
Chapters Twelve and Thirteen present other inventions of the author, a Sinewave indicator that he claims can have predictive power when the market is in a cyclic mode, and a Convolution indicator that he claims can identify market tops and bottoms. As with the prior chapter, he provides no rigorous real-life justification for these claims, but the ideas behind these indicators are undeniably intriguing.
Chapter Fourteen presents still another indicator involving a Hilbert Transform. Prior comments apply.
Chapter Fifteen discusses methods for transforming indicators to make them more usable. These methods are clearly important, if perhaps a bit superfluous for indicators that are well designed from the start.
My love for pretty pictures is triggered again in Chapter Sixteen, which discusses Swami charts, a nifty way to visualize indicators in the context of their history. His examples using RSI and Stochastics are excellent and will definitely appeal to most traders.
Chapter Seventeen concludes the book with a brief overview of some basic facts-of-life for the serious trader. This chapter mentions the need for out-of-sample testing, the danger of integrating stop-loss orders in a strategy, the utility of a simple bootstrap test for estimating the variation in possible net outcomes, and so forth. I got the feeling that this chapter was a last-minute add-on, something totally unrelated to the rest of the book, included only as a token obeisance to prudence. The material in this chapter is extremely important, but treated so lightly that it is all but useless.
In summary, there are two groups of readers who will find great value in this book. Readers with a strong mathematical and signal-processing background, as well as an interest in market trading, will find it to be a delightful summary of applied digital filter theory, with all of the most important equations laid out in a compact presentation, and with trading-oriented applications throughout. And readers who have little mathematical background but who are fluent in EasyLanguage or a similar trading platform language, and who are willing to experiment with techniques without knowing exactly what they are doing or why they are doing it, will also find this book fascinating. But this book is definitely not for the faint of heart. The mathematical presentations are fearsome, and will surely intimidate casual readers. Also, the book has a total lack of rigorous empirical justification for its techniques. An appendix containing statistically supported trading results with real market data would have gone a long way toward reassuring readers that the enormous effort of slogging through this text is worthwhile. Only serious readers need apply.
Zariah Bowman (verified owner) –
Sure. Good stuff and knowledge to put digital singnal processing in the area of charting and analysis. However, I am still missing statisticsl evidences that the presented indicators outperform the existing ones. Without these statistics evidences, it is a good read with an overload on code without facts and figures to trading statistics. So you have to add a lot of research on your own to put it into trading practice and see if it delivers value.
Fatima Mack (verified owner) –
There are thousands of books covering the use of several technical analysis indicators. However, what is seldom discussed is why and how such indicators may achieve a particular trading objective. Moreover, many were developed when computing power was extremely limited, which is not the case today.
The latest book by John Ehlers addresses these glaring gaps in the field of technical analysis, drawing upon his extensive experience first in the world of digital signal processing – in many ways comparable to analyzing and processing capital markets data – and later as a trader and leading technical analyst.
For instance, many people use simple or exponential moving averages to smooth financial data and get a better sense of market direction. Mr Ehlers provides the theoretical background for their use and a host of innovative indicators which achieve the same objective – smoothness – but with much less cost – the lag relative to the actual data being smoothed. This in turn provides much more accurate and reliable trading signals.
Moreover, various conventional trending and oscillating indicators are contaminated by prior signals and noise, giving an inaccurate picture of market phase and direction. As a result, many authors have provided “fixes” by tweaking their trading rules. In contrast, Mr Ehlers identifies the root cause of this problem, which in itself is worth the price of the book several-fold, and proposes new indicators that accurately reflect current market conditions.
Digital signal processing is a complex topic, particularly when applied to technical analysis. But Mr Ehlers does a fine job in navigating the reader through the theory and its practical application. The code for every indicator, fruit of many hours of research and analysis, has been provided for everyone to see and use as they see fit.
I consider this book to be the seminal work of Mr Ehlers, in my opinion one of the best technical analysts alive today.
Esteban Greer (verified owner) –
This is an outstanding book! John Ehlers really delivers on his promise that it is “A technical resource for self-directed traders who want to understand the scientific underpinnings of the filters and indicators used in trading decisions.” But, the book subtitle is “Advanced Technical Trading Concepts”. That means it covers novel and unique filters and indicators using things like autocorrelation and convolution. So, if you are looking for a pencil and paper indicator like a warmed-over RSI, this book is not for you. I like Ehlers’ efficient and terse style. Rather than present boring and static cherry-picked examples, he provides the code and explains what it does so I can experiment with it on my own. As a resource, it is an important feature that each chapter is summarized with take-aways that should be remembered.
He starts the book with a bang by introducing the DSP concept of Z transforms in terms of a simple moving average rather than coming at those transforms from the classical direction. This drives home the point that many traders miss – that there is no such thing as a leading indicator. He uses the concept of a mathematical transfer function to show the relationship between the time waveforms and the content in the frequency domain. In the remainder of the book he always describes the indicators functionally, such as what wavelengths are filtered, rather than by characteristics, such as the length of a moving average. In fact, in chapter 2, he goes to great lengths to relate the filtering bandwidth of moving averages to their length. He expands on the moving average topic in chapter three, showing relatively simple ways to improve filtering. For example, just making the first and last coefficients of a simple moving average be 0.5 instead of 1 makes a big difference in the moving average filter rejection. He also introduces his SuperSmoother filter in chapter 3 and explains that it is useful for eliminating noise that an artifact of digital signal processing. He uses the SuperSmoother as part of his Roofing filter later in the book.
Chapter 4 is playfully called Decyclers as the flip side of a coin of Detrenders. Decyclers are data smoothers accomplished by cancelling the shorter cycle components in the data. The result is a smoothing filter having a minimum of delay.
Band pass filters and their characteristics are described in chapter 5. The discussion of Automatic Gain Control is also introduced in this chapter, and seems somewhat out of place. However, this is an important concept for any oscillator to be normalized to have swings between -1 and +1 while not distorting the oscillator in the frequency domain. As an application, the normalization is required to implement the transforms described in chapter 15.
Chapter 6 is a discussion of structure of market data. It is largely academic and of no practical importance. However, he makes up for it in chapter 7 where he describes the practical implications of spectral dilation. It is here that he describes his Roofing Filter that carves out a segment of the spectrum for use by indicators that follow it.
Ehlers has long been at the forefront of the measurement of market cycles using his MESA algorithm. He delves into the complex subject of cycle period measurement and the use of the measurements in chapters 8 through 11. He prefers the Autocorrelation Periodogram method because it takes the Fourier Transform of the Autocorrelation function. Since the swings of the Autocorrelation are between -1 and +1, the errors introduced by spectral dilation in the data are eliminated. He presents the measured spectrum as a unique heatmap and extracts the dominant cycle from that spectrum.
He switches gears to describe new indicators, starting in chapter 12. The new indicators are his “Even Better Sinewave”, Convolution, and Hilbert Transform. His Hilbert Transform is new and demonstratively more accurate than previous renditions. This is made possible by using the AGC developed in chapter 5. Since the major purpose of Hilbert Transforms is to create analytic waveforms, he reviews other techniques of cycle measurement. Their description is purely academic because he discourages their use.
Manipulation of the appearance of oscillator waveforms to improve their usability is discussed in chapter 15.
SwamiCharts are described in chapter 16. They are an interesting way of displaying oscillators in context. You can see the performance of the oscillator at a glance in terms of immediate action, confirmation, and continuation. He uses the same heatmap for display that was used to display the spectrum. SwamiCharts are available for free on Ehlers’ commercial website […]
The book concluded with some rudimentary tips in building trading systems. Most interesting among these is the use of Monte Carlo analysis as a better method to evaluate trading performance than the traditional equity growth curve.
This is a must-have resource book for any serious student of the market and for traders who are interested in incorporating new signal processing techniques in their trading systems and strategies.
Harper Casey (verified owner) –
I’ve read all of Ehlers’ books. This one is by far my favorite. All the code runs well and is quite useful.
Ariya Clay (verified owner) –
Very good stuff !!
I suggest reading something on Hurst cycle analysis first, you’ll probably enjoy this book better if you do.
I don’t recommend for those who have no background on technical analysis.
Reina Cardenas (verified owner) –
This is an enlightening book. And the code examples work. If you want to try some indicators that remove much of the ‘noise’ of the market, then this book is one you’ll want to have. A bit ‘mathy’ in places, but you don’t have to slog through it to make great use of the programming examples.
Truett Todd (verified owner) –
This is a very good book about the application of digital filters to trading techniques. I have to admit it does require some mathematical and programming background to fully appreciate it, but for those who have them, it is definitely worth it. For those without such background, it is still possible to implement the ideas, but the it might prove a bit advanced.
Madalynn Sanford (verified owner) –
Having been trained in Electrical Engineering and Signals and Systems Theory, John does a great job borrowing and building filters which allow us to create non-lagging indicators to help market analysis. The only complaint I have is that usually he does a little better job on developing the theory. Non-the-less, these are mathematically accurate indicators which perform as advertised and are a great asset in the hands of someone who knows how to use them.
Chris Fleming (verified owner) –
As I come from an audio engineering background, I am really intrigued by the author’s repurposing of signal processing concepts as applied to trading. Unfortunately the author never actually gets around to showing whether this has any basis in reality.
John ehlers’ main idea is that markets have ‘dominant cycles’ which are basic frequencies that control price movements. Perhaps that’s true. But no evidence is given that this provides predictive value for future prices. As an analogy, I think of clouds: just because you see a giraffe shape in the cloud, doesn’t mean you can predict a gorilla shape later.
And that’s the major problem with this book. Lots of indicators that appear to be doing something, but no statistical evidence is provided to show that they’re valid. This smacks of Technical Analysis, where shapes and portents signal a mystical future.
I ran some basic tests using these indicators, and, while some shower predictive abilities, they don’t appear to be superior to well known techniques. Given the price of the book, I would have hoped for much more.
Francisco Ware (verified owner) –
This is a good introduction to applying signal processing methods to stock trading with many clever techniques. However, the reader should _already_ be familiar with basic signal processing. A senior-level undergraduate EE course in signal processing will meet this prerequisite.
Armando Thornton (verified owner) –
It’s supposed to include a card with a code for downloading software, but mine didn’t include it.
Creed Whitney (verified owner) –
Great book….great free code. Warning: this book assumes you are an advanced trader and/or trading systems developer. Also…some of the indicators from Ehlers previous works are not included here as Ehlers only includes the indicators that matter – in his judgment. The book takes some time to get through…but is quite insightful for the technically adept reader.
Lylah Norman (verified owner) –
This review will be fairly short, as others have covered most of my opinion. Overall it’s a good book, but I found it most useful after reading “Rocket Science For Traders”. In the older book, Ehlers goes into a lot of the mathematical concepts that help you understand what hes doing. I suppose its up to the reader. If his math is too much for you and you just want to play with indicators, then you are good to just read this. If you want a good understanding of Ehlers mindset, get Rocket Science For Traders. Then when you read this (which expands and improves on some parts of the older book) you will get a better understanding.
Aziel Gilmore (verified owner) –
In this book John Ehlers updates and significantly extends his prior research and insights on cycle analysis and stock market analysis using Digital Signal Processing (DSP) tools and concepts. Ehlers has spent many years doing very original research on cycle indicators for the market, notably the development of MESA (Maximum Entropy Spectral Analysis) to measure market cycles. Ehlers translates very complex material into understandable and usable indicators which are well illustrated in the book. Despite the sophistication of the tools and techniques, Ehler’s writing is extremely clear, yet concise, as he builds successively useful analysis tools.
Eileen Cantu (verified owner) –
Im not an engineer or mathematician, I initially struggled with some of the concepts, however I did persevere and am so glad I did. This book is fantastic some unique and brilliant concepts. Having the easylanguage code made it possible for me to understand what John was doing, the code is pretty easy to read. I now feel I have a much deeper understanding of Technical Analysis. I have recently had the privilege of meeting John while attending his workshop, John has got to be one of the smartest people I have ever met.
Johnathan Flowers (verified owner) –
About me: My (decades-ago) undergraduate degree (plus Masters coursework) is Electrical Engineering — where I was introduced to filter theory and z-transforms/difference equations. I like this edition much better than Dr. Ehlers’ older “Rocket Science for Traders” and “Cybernetic Analysis for Stocks and Futures”. However, it took me an introductory reading plus several follow-up readings/studyings before I felt I personally owned the concepts mentioned on pages x and xi (more important since I don’t have TradeStation). For my purposes, there’s chapters that could be in an appendix (since they don’t seem to make a major contribution to the author’s most-recommended versions of the software (e.g., Chapters 9, 10, 14 and perhaps 13). I think the flow of the book could be a lot better. In summary, if you’re attracted to Dr. Ehlers work, then I recommend this book. I also found getting the white papers or original article publications to be useful since there’s no color graphs (for heat maps, etc.) in the book. If you have TradeStation, then you’re in an better place than I am — you can just download the code using the access card that comes with the book.
Haisley Huffman (verified owner) –
Fascinating application of well developed techniques of Digital Signal Processing to algorithmic investing. Unfortunately, while the concepts are valid and revealing, not everything works as advertised. I simulated most of the techniques proposed recently and the outcomes were mostly disappointing. With some tweaking however, I did manage to find systems where these techniques resulted in amazing improvements. If you have a descent understanding of physics, math, engineering, read this book – it will save you a lot of time.