- The Art of Low Risk Investing by Michael G. Zahorchak, 1977. Unfortunately, it's all but impossible to find a copy these days.
- The Complete Guide to Indicators by Gregory L. Morris, 2006. A fantastic resource for those interested in or creating their own trend based system.
- Two articles by Greg Morris on the Zahorchak Measure. I can't link to them under the House Rules, but they are easily searchable.
The Zahorchak Measure (ZM) is designed to give you a market bias (either uptrend or downtrend) which you can use to determine a trade bias for ETF's or stocks.
ZM works by taking multiple moving averages of the NYSE Composite , a moving average of the NYSE line, and examining the relationship between those elements. Broadly, the market is considered to be in a uptrend when ZM is above zero, and a downtrend when below. However, there are many ways to interpret the indicator.
The version created by Greg Morris is more akin to a binary indicator in that ZM jumps from number to number. This version is smoothed to create an oscillator as it reduces whipsaws (at the expense of lag). You can set the Length to 1 to go back to the original.
- Michael Zahorchak called it the "Zahorchak Method", whereas Greg Morris uses the term "Measure". I'm not totally clear on the change, but Mr. Morris made some changes (covered below), so that may explain the altered name.
- The original indicator used moving averages of 5, 15, and 40 weeks. I have converted these to daily numbers as that's the time frame I most commonly trade. You can convert the numbers back by dividing by 5.
- The original indicator used the Dow Industrials for the moving averages, however Greg Morris switched to the NYSE Composite due to the line being based on the NYSE.
- Greg Morris removed the 5 period moving average of the NYSE Composite , as it created increased at market tops and bottoms. I tested ZM with the 5 period MA added back in, and I believe removing it creates a superior indicator.
- I've added both functionality, and the ability to alter moving average lengths. Play around and see what you can come up with.
- ZM oscillates between -10 and +10. There are some interesting levels creating between these two numbers (apart from the obvious zero level) - see what you can come up with.
All credit goes to Michael Zahorchak and Greg Morris for the indicator creation. I have simply reproduced their work for the TradingView community as this great indicator wasn't available.
Any queries let me know in the comments or PM me.
simply adjust and paste this over line 157 down.
base = hline(0, linewidth=2, title="Base")
Pcolor = normalizedScore_smooth > normalizedScore_smooth ? color.green : color.red
plot(normalizedScore_smooth, color=Pcolor, style=plot.style_area,linewidth=2, title="Zahorchak Measure")
// Buy/Sell Signals
linebuy = input(title="Enter Long", type=input.float, defval=0.0)
linesell = input(title="Enter Short", type=input.float, defval=-0.0)
gold_cross = crossover(normalizedScore_smooth, linebuy)
death_cross = crossunder(normalizedScore_smooth, linesell)
plotchar(gold_cross ? normalizedScore_smooth : na, title="BUY", char="🅑", location=location.absolute, color=color.blue, transp=0, size=size.small)
plotchar(death_cross ? normalizedScore_smooth : na, title="SELL", char="🅢", location=location.absolute, color=color.black, transp=0, size=size.small)
longCond = crossover(normalizedScore_smooth, linebuy)
exitLong = crossunder(normalizedScore_smooth, linesell)
alertcondition(exitLong, title="OPEN SHORT", message="OPEN SHORT")
alertcondition(longCond, title="OPEN LONG", message="OPEN LONG")