Industry Factors in Ranking Systems - Weird Result

I am attempting to incorporate more industry factors into my ranking systems, and ran across some unusual behavior.

In particular, I am looking at the variation in certain financial metrics by industry. I am attempting to accomplish this as follows

Define a Custom Formula such as

$EPSPctChgPYQInd_FHist = FHist(“EPS%ChgPYQInd”,CTR)

and then in the ranking system calculate a LoopStdDev as follows

LoopStdDev(“$EPSPctChgPYQInd_FHist”,20,0,13,0,0)

This calculation appears to work just fine, and in general gives me the results I would expect. However, for certain industry groups I am not getting the same result for every company in the industry. For example, if I run this calculation for the AERODEF industry the majority of the companies within the industry return a value of 16.85, but approximately 24% of the companies return a different result with calculated std devs ranging from 5.42 to 21.18.

I can’t come up with an explanation for this… except maybe companies that have changed Industry classification within the time period effecting the way the calculation works, but that doesn’t seem to be the way you would want the engine to handle that circumstance.

Anyone from P123 have an explanation??

Thanks,

Daniel

FHist will only succeed for weeks in which a stock was active. The behavior of your LoopStdDev expression will vary for stocks with less than 260 weeks of data (sp. $EPSPctChgPYQInd_FHist will yield NA values which which will be excluded from the standard deviation computation) and stocks that change industry classification (sp. $EPSPctChgPYQInd_FHist will yield values from a different industry than the current classification). There’s no workaround for this behavior.
Let me know if you think you see something else going on here as well.

Thanks Aaron.

So is there no way to get to the value in question for every security?

Is there another way to calculate this value that doesn’t involve the use of FHist?

LoopStdDev("$EPSPctChgPYQInd_FHist",20,0,13,1,0) // set noNA flag

Setting the noNA parameter will at least report w/ a NA when there’s not enough data.

Thanks! That helps some. Although not sure if it helps enough to make the factor usable.

Cheers,

Daniel