by Bill Brower on May 6, 2016 | Categories: Uncategorized |
Tradestation has an unusual perception of volume. Unless you are new to trading you understand the concept of volume and how to measure it. If we are talking about stocks, volume is measured in shares. If it is futures, volume is measured in contracts. There is another measure that is available that is related to volume. It is the count of the number of trades. Unfortunately Tradestation chose to tag this statistic with the word “ticks”. There is another word very similar to this which measures the minimum distance a symbol can move on the exchange and it is called a “tick”. It is entirely different from the word “ticks”. If a trade takes place for one share or 100 shares Tradestation calls it a tick and the number of trades taken in the formation of a bar on the chart is the count of ticks.
Traders looking for a different angle to approach trading often look outside simple price action. Eventually they come across volume and the On Balance Volume (OBV) indicator. This is a simple running balance of the prior bar OBV plus the current bar volume if price closes above the open and minus it if price closes below the open. I have coded many strategies for clients that use OBV as part of their secret concoction. However, something always nagged at me thinking that if price were to close just 1 tick higher than the open, all the volume was added to the prior bar OBV; so there was always an urge to seek a better computation.
Traders often wish to look inside volume to determine if there is more buying or selling pressure. To this end, Tradestation offers “upticks” and “downticks” statistics. These are tricky to work with because they do not really work the way you would imagine. For instance when used on daily bars of a stock symbol, “upticks” returns the daily volume and “downticks” returns zero. On intraday stocks, “ticks” returns the total volume and “volume” returns the total up volume; “downticks” returns the down volume. The sum of “upticks” and “downticks” equals “ticks”. On futures daily and intraday data, the sum of “upticks” and “downticks” equals “ticks” and “volume” again equals “upticks”. So we need to be a bit careful about how we use these tools or we could get strange results.
Still I thought that perhaps these tools could be the answer to computing a better OBV. With that in mind I figured that I would create and indicator called OBV_Turbo. It is quite simple. It is the prior bar OBVTurbo plus the difference between “upticks” and “downticks”.
OBVTurbo = OBVTurbo + upticks – downticks;
That is easy enough and makes sense as well. I think most would agree that in a market moving higher, we would expect to see this indicator moving higher and the opposite when the market is moving lower. Plotting this on the intraday stock symbols seemed to work nicely. Of course it does not work at all on daily stock symbols. Plotting this on intraday futures contracts also appears to work just fine. However plotting this on daily futures data generates some unexpected results. For instance, on coffee (symbol @KC) there was not a single bar in 15 years where the “upticks” exceeded the “downticks”. This does not seem possible. Plotting this on the e-mini S&P500 (symbol @ES) shows only 22 days in the last 14 months where “upticks” exceeded “downticks”. Again I am skeptical.
I know the Tradestation method of measuring upticks and downticks is not what you would expect but even so, I did not think it could possibly generate such odd results. The bottom line is that you should always investigate the algorithms you are using to see how they were built and what they are doing before relying on them in your trading. That homework is often neglected by some traders who plunge into strategy development with a flawed understanding of the limitations and defects in the tools that they cobble together. In this case, the Tradestation volume computation delivers less than expected.