The movement of all market instruments is mainly described by two components, one is the direction in which price goes and the other one is the magnitude of this movement. When talking about the first aspect of the market we usually use tools which help us determine relative differences between two price levels in the past (like for example a moving average) while when analyzing the second aspect of the market we resort to indicators that analyze how much price has changed without looking at the direction in which it has moved (like the ATR). When these two ideas are merged we get a new family of derived calculations which attempts to tell us both in what direction and how fast price has moved. These calculations are the basis of what we call “momentum indicators”.
On today’s post I am going to talk to you about an indicator which uses a vision of directionality which is adjusted against a volatility criteria (the ATR) in order to come up with a precise view of how the market is behaving after weighting in the contributions of different momentum measurements. During the next few paragraphs we will talk about the Ultimate Oscillator indicator, how it is calculated, what use the information it gives us has and why it reveals important aspects of market action which aren’t apparent from a simple view. Understanding this indicator became quite important for me as it is the main used tool in one of our new Asirikuy systems (which will be released tomorrow): Sumaq.
The Ultimate oscillator comes from the metaquotes page so by performing a simple google search you’ll be able to find the original implementation of its code. An Asirikuy members helped me polish out this code from a technical perspective so the version within Asirikuy is slightly different -regarding the exact coding – but the mathematical-end results is exactly the same between both version.
In order to understand this indicator we first need to know what it calculates. The Ultimate Oscillator first calculates what the code refers to as “buying pressure” which is nothing more than the difference between the current bar’s close and the low of this same bar or the last bar’s close (whichever is lower) for each different bar on history. The next step carried out by the code is to average all these values into three sets which are the basis of our momentum calculations based on three different input averaging periods. These three sets are called fast (small period), middle (between fast and slow) and slow (long period).
Once we have these sets the indicator now compares them to three different ATR averages calculated over the same periods and multiplied by a fast, middle and slow periods (FastK, MiddleK and SlowK). What the indicator does is calculate a directionality bias for a given period (average of buying pressure) and then compare it to how much the market has moved as a whole (ATR average of the same period), multiplied by a net factor which is determined by the user. The final value of the ultimate oscillator is simply the sum of the fast, middle and slow groups. Therefore it becomes evident that the K constants simply allow us to “weight in” on what average we want to have the most importance. If we choose high FastK then the fast period will be able to vary the oscillator more while a low FastK will make the “fast period” portion less dominant.
Overall the Ultimate oscillator gives us a combined vision of the volatility normalized movements according to a particular view of the market we would like to have. The indicator has a big advantage against simpler momentum indicators such as the RSI in that it is able to be influenced by short term developments in a way which allows it to focus on short, medium and long term trend directions. It is also worth noting that the indicator can give us the same number under different market circumstances (for example if we have a value of X at certain fast, middle and slow values the value can be the same if the fast portion increases and the slow portion decreases). Perhaps the great value of this indicator lies in this very fact as the indicator allows us to greatly simplify a wide variety of market conditions into a single equivalence. For example if there is a large “fast” contributing value and a small “slow” one (fast momentum build-up in the short term) we might want to go long, the same thing that may happen if there is a small “fast” value and a very large “slow” one (within a retracement of a long term long trend). Of course the K factors allow you to ease the equivalence into whatever is most useful (for example we might want the slowK to be large since we want longer trends to have more value).
This oscillator can be used very successfully in a wide variety of scenarios, particularly on the daily charts extreme values of the oscillator are usually followed by periods of consolidation meaning that we could establish a breakout threshold after the oscillator reaches a high or low values and then trade the breakout in either direction. Since large values of this oscillator usually determine very large surges in momentum along all time frames they are usually followed by quite periods which are then broken out of aggressively. Of course the fact that this indicator has so many parameters and flexibility makes its uses almost limitless but this is a very interesting way in which an algorithmic systems could be built an evaluated. Sumaq – for example – uses an hourly technique based on the changes on the oscillator over a given number of periods, a technique that gives it a great advantage to capture counter-trending movements.
Note that looking at trending movements and retracements from a volatility-adjusted perspective is extremely hard to do by simple analysis of pure price action as that information is simply not evident within the charts. Since the Ultimate oscillator brings to us a volatility normalized view of how trends are developing along different periods it brings information which is very difficult to access by simple visual inspection of charts. This is a perfect example of when indicators contribute with a level of information which – although intrinsically present on charts – is difficult to visualize without some aided computation. As always the success or failure that accompanies indicator usage lies on your understanding of indicator calculations and the implications different values have.
If you would like to learn more about by journey in algorithmic trading and how you too can learn to interpret indicators based on the nature and meaning of their mathematical calculations then please consider joining Asirikuy.com, a website filled with educational videos, trading systems, development and a sound, honest and transparent approach towards automated trading in general . I hope you enjoyed this article ! :o)